JP2009282850A - キャッシュメモリシステム - Google Patents
キャッシュメモリシステム Download PDFInfo
- Publication number
- JP2009282850A JP2009282850A JP2008135757A JP2008135757A JP2009282850A JP 2009282850 A JP2009282850 A JP 2009282850A JP 2008135757 A JP2008135757 A JP 2008135757A JP 2008135757 A JP2008135757 A JP 2008135757A JP 2009282850 A JP2009282850 A JP 2009282850A
- Authority
- JP
- Japan
- Prior art keywords
- index
- capacity
- change
- cache memory
- invalidation
- 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
Images
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
- 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/0864—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using pseudo-associative means, e.g. set-associative or hashing
-
- 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/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0846—Cache with multiple tag or data arrays being simultaneously accessible
-
- 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/60—Details of cache memory
- G06F2212/601—Reconfiguration of cache memory
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE 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/00—Energy efficient computing, e.g. low power processors, power management or thermal management
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
【解決手段】たとえば、キャッシュメモリの容量を削減させる場合、プロセッサ11より“削減の指示”が出力される。すると、キャッシュ増減処理ユニット26は、“現在のサイズ”と“変更後のサイズ”とに応じて、無効化するインデックスの範囲を設定するとともに、アービタ24に対して、該当するインデックスの無効化を要求する。一方、インデックス変換機25は、アービタ24からのアドレスに対応する、“現在のサイズ”にもとづいたインデックスまたは“変更後のサイズ”にもとづいたインデックスのいずれかを選択し、タグメモリ21内から対応するタグ情報を読み出して、データメモリ23上の該当するインデックスを無効化する。
【選択図】 図1
Description
図1は、本発明の第1の実施形態にしたがったキャッシュシステムの構成例を示すものである。なお、本実施形態では、プロセッサを含む集積回路として構成した場合を例に説明する。
図9は、本発明の第2の実施形態にしたがったキャッシュシステムの構成例を示すものである。なお、本実施形態では、さらに、キャッシュメモリの容量を増加させる場合を例に説明する。また、第1の実施形態と同一の部分には同一の符号を付して、詳しい説明は割愛する。
図13は、本発明の第3の実施形態にしたがったキャッシュシステムの構成例を示すものである。なお、本実施形態は、キャッシュミス時のアクセスの再実行を防ぐことができるように構成した場合の例である。また、第1の実施形態と同一の部分には同一の符号を付して、詳しい説明は割愛する。
Claims (5)
- ウェイ数がNのキャッシュメモリと、
前記キャッシュメモリの容量を変更させるための指示にしたがって、前記容量を変更するとともに、前記容量を変更した際に無効となる位置に格納されているデータの無効化を行う無効化処理部と
を具備し、
前記無効化処理部は、前記キャッシュメモリのウェイ数を維持したまま、前記キャッシュメモリの容量を変更するものであることを特徴とするキャッシュメモリシステム。 - 前記無効化処理部は、
変更前の容量と変更後の容量とに応じて無効化するインデックスを設定し、アービタに対して、設定したインデックスの無効化を要求する増減処理ユニットと、
前記アービタからのアクセスアドレスに応じた、前記変更前の容量にもとづいたインデックスまたは前記変更後の容量にもとづいたインデックスのいずれかを選択し、タグメモリ内から対応するタグ情報を読み出すインデックス変換機と、
を含むことを特徴とする請求項1に記載のキャッシュメモリシステム。 - 前記アービタは、前記無効化処理部の動作中に、前記キャッシュメモリに対するアクセス要求を受けると、
前記アクセスアドレスに対応する、前記変更前の容量にもとづいたインデックスが無効化の対象でなければ、前記変更後の容量にもとづいたインデックスを選択するように前記インデックス変換機を制御して、前記変更後の容量にもとづいたインデックスによるアクセス処理を実行させ、
前記変更前の容量にもとづいたインデックスが無効化の対象であって、既に無効化のための動作が終了している場合には、前記変更後の容量にもとづいたインデックスを選択するように前記インデックス変換機を制御して、前記変更後の容量にもとづいたインデックスによるアクセス処理を実行させ、
前記変更前の容量にもとづいたインデックスが無効化の対象であって、無効化のための動作が終了していない場合には、前記変更前の容量にもとづいたインデックスを選択するように前記インデックス変換機を制御し、前記変更前の容量にもとづいたインデックスを用いたタグ比較結果がヒットしたならば、前記変更前の容量にもとづいたインデックスによるアクセス処理を実行させ、前記タグ比較結果がミスしたならば、前記変更後の容量にもとづいたインデックスを選択するように前記インデックス変換機を制御して、前記変更後の容量にもとづいたインデックスによるアクセス処理を実行させる
ことを特徴とする請求項2に記載のキャッシュメモリシステム。 - 前記指示が、前記キャッシュメモリの容量を増加させる指示の場合、無効化するウェイを設定するためのタグ比較器をさらに備えることを特徴とする請求項1に記載のキャッシュメモリシステム。
- 前記インデックス変換機は、前記変更前の容量にもとづいたインデックスまたは前記変更後の容量にもとづいたインデックスのいずれかを第1,第2の選択インデックスとして選択するものであって、
前記無効化処理部の動作中に、前記キャッシュメモリに対するアクセス要求を受けると、
前記アクセスアドレスに対応する、前記変更前の容量にもとづいたインデックスが無効化の対象でない場合には、前記第1の選択インデックスによるアクセス処理を実行し、
前記変更前の容量にもとづいたインデックスが無効化の対象である場合には、前記第1の選択インデックスを用いたタグ比較結果がヒットしたならば、前記第1の選択インデックスによるアクセス処理を実行し、前記タグ比較結果がミスしたならば、前記第2の選択インデックスによるアクセス処理を実行する
ことを特徴とする請求項2に記載のキャッシュメモリシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008135757A JP5231867B2 (ja) | 2008-05-23 | 2008-05-23 | キャッシュメモリシステム |
US12/432,883 US8108611B2 (en) | 2008-05-23 | 2009-04-30 | Cache memory system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008135757A JP5231867B2 (ja) | 2008-05-23 | 2008-05-23 | キャッシュメモリシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009282850A true JP2009282850A (ja) | 2009-12-03 |
JP5231867B2 JP5231867B2 (ja) | 2013-07-10 |
Family
ID=41342930
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008135757A Expired - Fee Related JP5231867B2 (ja) | 2008-05-23 | 2008-05-23 | キャッシュメモリシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US8108611B2 (ja) |
JP (1) | JP5231867B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012022616A (ja) * | 2010-07-16 | 2012-02-02 | Panasonic Corp | 共有メモリシステム及びその制御方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8412971B2 (en) * | 2010-05-11 | 2013-04-02 | Advanced Micro Devices, Inc. | Method and apparatus for cache control |
US10101925B2 (en) * | 2015-12-23 | 2018-10-16 | Toshiba Memory Corporation | Data invalidation acceleration through approximation of valid data counts |
US20240061784A1 (en) * | 2022-08-18 | 2024-02-22 | Samsung Electronics Co | System and method for performing caching in hashed storage |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5489444A (en) * | 1977-12-27 | 1979-07-16 | Fujitsu Ltd | Associative memory processing system |
JP2006040176A (ja) * | 2004-07-29 | 2006-02-09 | Fujitsu Ltd | キャッシュメモリ装置およびメモリ制御方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2433613B (en) | 2005-12-22 | 2010-10-20 | Advanced Risc Mach Ltd | Variable size cache memory support within an integrated circuit |
US20080114924A1 (en) * | 2006-11-13 | 2008-05-15 | Jack Edward Frayer | High bandwidth distributed computing solid state memory storage system |
-
2008
- 2008-05-23 JP JP2008135757A patent/JP5231867B2/ja not_active Expired - Fee Related
-
2009
- 2009-04-30 US US12/432,883 patent/US8108611B2/en not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5489444A (en) * | 1977-12-27 | 1979-07-16 | Fujitsu Ltd | Associative memory processing system |
JP2006040176A (ja) * | 2004-07-29 | 2006-02-09 | Fujitsu Ltd | キャッシュメモリ装置およびメモリ制御方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012022616A (ja) * | 2010-07-16 | 2012-02-02 | Panasonic Corp | 共有メモリシステム及びその制御方法 |
Also Published As
Publication number | Publication date |
---|---|
US20090292880A1 (en) | 2009-11-26 |
JP5231867B2 (ja) | 2013-07-10 |
US8108611B2 (en) | 2012-01-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101569160B1 (ko) | 캐시에서의 웨이 할당 및 웨이 로킹 방법 | |
US7913041B2 (en) | Cache reconfiguration based on analyzing one or more characteristics of run-time performance data or software hint | |
US7284112B2 (en) | Multiple page size address translation incorporating page size prediction | |
JP5217432B2 (ja) | セクタ機能付きキャッシュメモリ | |
US9292447B2 (en) | Data cache prefetch controller | |
US6823427B1 (en) | Sectored least-recently-used cache replacement | |
KR102546238B1 (ko) | 다중 테이블 분기 타겟 버퍼 | |
KR102613645B1 (ko) | 캐시의 콘텐츠 트랙킹 | |
JP2005528695A (ja) | キャッシュ置換ポリシーの簡略化した実施態様を用いたマルチスレッド化キャッシュのための方法および装置 | |
JP4920378B2 (ja) | 情報処理装置およびデータ検索方法 | |
JP2017516234A (ja) | 次の読取りアドレスプリフェッチングによるメモリ容量圧縮および/またはメモリ帯域幅圧縮を利用するメモリコントローラ、ならびに関連するプロセッサベースシステムおよび方法 | |
JP2005528694A (ja) | スレッド識別子に基づくキャッシュ追い出しを用いたマルチスレッド化キャッシュのための方法および装置 | |
EP2926257B1 (en) | Memory management using dynamically allocated dirty mask space | |
US9720847B2 (en) | Least recently used (LRU) cache replacement implementation using a FIFO storing indications of whether a way of the cache was most recently accessed | |
JP2010532537A (ja) | 階層型キャッシュタグアーキテクチャ | |
CN112612727A (zh) | 一种高速缓存行替换方法、装置及电子设备 | |
JP2010033480A (ja) | キャッシュメモリおよびキャッシュメモリ制御装置 | |
US7761665B2 (en) | Handling of cache accesses in a data processing apparatus | |
JP5231867B2 (ja) | キャッシュメモリシステム | |
JP2014115851A (ja) | データ処理装置及びその制御方法 | |
US20120124291A1 (en) | Secondary Cache Memory With A Counter For Determining Whether to Replace Cached Data | |
JP4009306B2 (ja) | キャッシュメモリおよびその制御方法 | |
US6408364B1 (en) | Apparatus and method for implementing a least recently used cache replacement algorithm | |
US20090150619A1 (en) | Coherent caching of local memory data | |
US20180052778A1 (en) | Increase cache associativity using hot set detection |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100802 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120829 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120904 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20121105 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20121204 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130204 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130226 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130322 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20160329 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |