JP4297968B2 - コヒーレンシ維持装置およびコヒーレンシ維持方法 - Google Patents
コヒーレンシ維持装置およびコヒーレンシ維持方法 Download PDFInfo
- Publication number
- JP4297968B2 JP4297968B2 JP2008500363A JP2008500363A JP4297968B2 JP 4297968 B2 JP4297968 B2 JP 4297968B2 JP 2008500363 A JP2008500363 A JP 2008500363A JP 2008500363 A JP2008500363 A JP 2008500363A JP 4297968 B2 JP4297968 B2 JP 4297968B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- level cache
- coherency
- cache memory
- cache
- 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 - Fee Related
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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0817—Cache consistency protocols using directory methods
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0811—Multiuser, multiprocessor or multiprocessing cache systems with multilevel cache hierarchies
-
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0817—Cache consistency protocols using directory methods
- G06F12/0822—Copy directories
-
- 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
Description
101 命令実行制御部
102 第1レベルキャッシュ装置
103 第1レベルキャッシュ制御部
103a アドレス変換処理部
103b 検索処理部
103c エラー検出部
104 記憶部
104a 命令キャッシュタグ部
104b 命令キャッシュデータ部
104c オペランドキャッシュタグ部
104d オペランドキャッシュデータ部
200,220,2m0 第2レベルキャッシュ装置
203 第2レベルキャッシュ制御部
203a コヒーレンシ維持処理部
203b エラー処理部
204a 第2レベルキャッシュタグ部
204b 第2レベルキャッシュデータ部
204c 第1レベルキャッシュタグ写し部
300 主記憶装置
300a アクセス制御部
300b メモリ
Claims (8)
- 第1のキャッシュメモリと当該第1のキャッシュメモリのデータを記録する第2のキャッシュメモリとの間でコヒーレンシを維持するコヒーレンシ維持装置であって、
所定のエントリ数を有し、前記第1のキャッシュメモリに対するデータの登録情報の一部を記録する第1の記録手段と、
前記第1の記録手段よりも少ないエントリ数を有し、前記登録情報の残りの部分を記録する第2の記録手段と、
前記第1のキャッシュメモリと第2のキャッシュメモリとの間でコヒーレンシを維持するコヒーレンシ維持手段とを備え、
前記第1の記録手段に記録された登録情報の一部は、前記第2のキャッシュメモリが受付けるリードリクエストに該当するデータが複数の第1のキャッシュメモリに共有されているか否かを示す共有情報を含み、前記コヒーレンシ維持手段は、リードリクエストを取得した場合に、リードリクエストに該当するデータの前記共有情報を取得し、前記データが共有されている場合に、前記第2の記録手段に記録された登録情報の残りの部分に基づいて、コヒーレンシを維持することを特徴とするコヒーレンシ維持装置。 - 前記コヒーレンシ維持手段は、リードリクエストに含まれる物理アドレスおよび論理アドレスを利用して、前記第1の記録手段に記録された登録情報の一部と前記第2の記録手段に記録された前記登録情報の残りの部分とを同時にアクセスすることを特徴とする請求項1に記載のコヒーレンシ維持装置。
- 前記第1のキャッシュメモリに記録されたデータにエラーが発生した場合に、前記第2の記録手段に記録された登録情報の残りの部分を基にしてエラーの発生したデータを修正するエラー修正手段を更に備えたことを特徴とする請求項1に記載のコヒーレンシ維持装置。
- 前記エラー修正手段は、前記第1のキャッシュメモリに記録されたデータにエラーが発生した場合に、当該エラーの発生したデータを消去するか否かを前記第2の記録手段に記録された登録情報の残りの部分を基に判定し、判定結果に基づいてエラーの発生したデータを消去することを特徴とする請求項3に記載のコヒーレンシ維持装置。
- 前記第1の記録手段は、第2のキャッシュメモリに対するデータの登録状態を示す情報と、前記登録情報の一部とを対応付けて記録することを特徴とする請求項1に記載のコヒーレンシ維持装置。
- 前記第1の記録手段は、リードリクエストにヒットしたか否かを判定する情報、当該第1の記録手段に記録されたデータが有効か否かの情報、シノニムか否かを判定する情報および前記登録情報の一部を対応付けて記録することを特徴とする請求項5に記載のコヒーレンシ維持装置。
- 前記第1の記録手段が記録する登録情報の一部は複数のビットによって構成され、前記コヒーレンシ維持手段は、前記複数のビットによって前記第1のキャッシュメモリに記録されたデータの登録状態を把握し、第1のキャッシュメモリと第2のキャッシュメモリとの間でコヒーレンシを維持することを特徴とする請求項1〜6のいずれか一つに記載のコヒーレンシ維持装置。
- 第1のキャッシュメモリと当該第1のキャッシュメモリのデータを記録する第2のキャッシュメモリとの間でコヒーレンシを維持するコヒーレンシ維持方法であって、
前記第1のキャッシュメモリに対するデータの登録情報の一部を、所定のエントリ数を有する第1の記録装置に記録する第1の記録工程と、
前記登録情報の残りの部分を、前記第1の記録装置よりも少ないエントリ数を有する第2の記録装置に記録する第2の記録工程と、
前記第1のキャッシュメモリと第2のキャッシュメモリとの間でコヒーレンシを維持するコヒーレンシ維持工程を含み、
前記第1の記録装置に記録された登録情報の一部は、前記第2のキャッシュメモリが受付けるリードリクエストに該当するデータが複数の第1のキャッシュメモリに共有されているか否かを示す共有情報を含み、前記コヒーレンシ維持工程は、リードリクエストを取得した場合に、リードリクエストに該当するデータの前記共有情報を取得し、前記データが共有されている場合に、前記第2の記録装置に記録された登録情報の残りの部分に基づいて、コヒーレンシを維持することを特徴とするコヒーレンシ維持方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2006/302533 WO2007094046A1 (ja) | 2006-02-14 | 2006-02-14 | コヒーレンシ維持装置およびコヒーレンシ維持方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2007094046A1 JPWO2007094046A1 (ja) | 2009-07-02 |
JP4297968B2 true JP4297968B2 (ja) | 2009-07-15 |
Family
ID=38371242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008500363A Expired - Fee Related JP4297968B2 (ja) | 2006-02-14 | 2006-02-14 | コヒーレンシ維持装置およびコヒーレンシ維持方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US7958318B2 (ja) |
EP (1) | EP1986101B1 (ja) |
JP (1) | JP4297968B2 (ja) |
WO (1) | WO2007094046A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013084315A1 (ja) | 2011-12-07 | 2013-06-13 | 富士通株式会社 | 演算処理装置、及び、演算処理装置の制御方法 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7689771B2 (en) * | 2006-09-19 | 2010-03-30 | International Business Machines Corporation | Coherency management of castouts |
JP4965974B2 (ja) * | 2006-11-14 | 2012-07-04 | ルネサスエレクトロニクス株式会社 | 半導体集積回路装置 |
JP5440067B2 (ja) * | 2009-09-18 | 2014-03-12 | 富士通株式会社 | キャッシュメモリ制御装置およびキャッシュメモリ制御方法 |
US10769021B1 (en) * | 2010-12-31 | 2020-09-08 | EMC IP Holding Company LLC | Cache protection through cache |
WO2013042240A1 (ja) * | 2011-09-22 | 2013-03-28 | 富士通株式会社 | 情報処理装置及び情報処理装置の制御方法 |
WO2013058745A1 (en) * | 2011-10-18 | 2013-04-25 | Soft Machines, Inc. | Methods and systems for managing synonyms in virtually indexed physically tagged caches |
WO2013084314A1 (ja) * | 2011-12-07 | 2013-06-13 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
US9110830B2 (en) | 2012-01-18 | 2015-08-18 | Qualcomm Incorporated | Determining cache hit/miss of aliased addresses in virtually-tagged cache(s), and related systems and methods |
US20150134661A1 (en) * | 2013-11-14 | 2015-05-14 | Apple Inc. | Multi-Source Media Aggregation |
US9489104B2 (en) | 2013-11-14 | 2016-11-08 | Apple Inc. | Viewable frame identification |
US9582160B2 (en) | 2013-11-14 | 2017-02-28 | Apple Inc. | Semi-automatic organic layout for media streams |
JP6337570B2 (ja) * | 2014-03-28 | 2018-06-06 | 富士通株式会社 | 演算処理装置及び演算処理装置の制御方法 |
US9672180B1 (en) | 2014-08-06 | 2017-06-06 | Sanmina Corporation | Cache memory management system and method |
US9715428B1 (en) * | 2014-09-24 | 2017-07-25 | Sanmina Corporation | System and method for cache data recovery |
US10956339B2 (en) | 2016-07-14 | 2021-03-23 | Advanced Micro Devices, Inc. | System and method for storing cache location information for cache entry transfer |
KR20200137181A (ko) | 2019-05-29 | 2020-12-09 | 에스케이하이닉스 주식회사 | 메모리 시스템에서 맵정보를 전송하는 장치 |
KR20200139433A (ko) | 2019-06-04 | 2020-12-14 | 에스케이하이닉스 주식회사 | 컨트롤러의 동작 방법 및 메모리 시스템 |
KR20200123684A (ko) | 2019-04-22 | 2020-10-30 | 에스케이하이닉스 주식회사 | 메모리 시스템에서 맵 정보를 전송하는 장치 |
KR20210004502A (ko) | 2019-07-05 | 2021-01-13 | 에스케이하이닉스 주식회사 | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 |
US11422942B2 (en) | 2019-04-02 | 2022-08-23 | SK Hynix Inc. | Memory system for utilizing a memory included in an external device |
KR20210004322A (ko) * | 2019-07-04 | 2021-01-13 | 에스케이하이닉스 주식회사 | 메모리 시스템에서 맵정보 및 리드카운트를 전송하는 장치 및 방법 |
US11899588B2 (en) * | 2020-09-14 | 2024-02-13 | Samsung Electronics Co., Ltd. | Systems, methods, and devices for discarding inactive intermediate render targets |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0290259A (ja) | 1988-09-27 | 1990-03-29 | Hitachi Ltd | マルチプロセッサシステム |
DE69225876T2 (de) * | 1991-12-24 | 1998-12-10 | Motorola Inc | Cachesteuerungsschaltung |
JPH05342101A (ja) * | 1992-06-12 | 1993-12-24 | Fujitsu Ltd | 階層キャッシュ・メモリ |
JPH0635801A (ja) * | 1992-07-16 | 1994-02-10 | Fujitsu Ltd | 階層メモリ制御方式 |
JP3483296B2 (ja) * | 1994-04-28 | 2004-01-06 | 富士通株式会社 | 情報処理装置 |
JP3132749B2 (ja) * | 1994-12-05 | 2001-02-05 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | マルチプロセッサ・データ処理システム |
US5740400A (en) | 1995-06-05 | 1998-04-14 | Advanced Micro Devices Inc. | Reducing cache snooping overhead in a multilevel cache system with multiple bus masters and a shared level two cache by using an inclusion field |
US6115794A (en) * | 1997-04-14 | 2000-09-05 | International Business Machines Corporation | Method and system of providing a pseudo-precise inclusivity scheme in a sectored cache memory for maintaining cache coherency within a data-processing system |
US6725334B2 (en) | 2000-06-09 | 2004-04-20 | Hewlett-Packard Development Company, L.P. | Method and system for exclusive two-level caching in a chip-multiprocessor |
US6704841B2 (en) * | 2001-06-26 | 2004-03-09 | Sun Microsystems, Inc. | Method and apparatus for facilitating speculative stores in a multiprocessor system |
US7024519B2 (en) * | 2002-05-06 | 2006-04-04 | Sony Computer Entertainment Inc. | Methods and apparatus for controlling hierarchical cache memory |
JP4673584B2 (ja) * | 2004-07-29 | 2011-04-20 | 富士通株式会社 | キャッシュメモリ装置、演算処理装置及びキャッシュメモリ装置の制御方法 |
-
2006
- 2006-02-14 WO PCT/JP2006/302533 patent/WO2007094046A1/ja active Application Filing
- 2006-02-14 EP EP06713674A patent/EP1986101B1/en not_active Expired - Fee Related
- 2006-02-14 JP JP2008500363A patent/JP4297968B2/ja not_active Expired - Fee Related
-
2008
- 2008-08-14 US US12/222,726 patent/US7958318B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013084315A1 (ja) | 2011-12-07 | 2013-06-13 | 富士通株式会社 | 演算処理装置、及び、演算処理装置の制御方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2007094046A1 (ja) | 2009-07-02 |
WO2007094046A1 (ja) | 2007-08-23 |
US20080313405A1 (en) | 2008-12-18 |
EP1986101A1 (en) | 2008-10-29 |
US7958318B2 (en) | 2011-06-07 |
EP1986101A4 (en) | 2009-08-12 |
EP1986101B1 (en) | 2012-06-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4297968B2 (ja) | コヒーレンシ維持装置およびコヒーレンシ維持方法 | |
JP5526626B2 (ja) | 演算処理装置およびアドレス変換方法 | |
US7472253B1 (en) | System and method for managing table lookaside buffer performance | |
US8195881B2 (en) | System, method and processor for accessing data after a translation lookaside buffer miss | |
JP4608011B2 (ja) | 演算処理装置および演算処理方法 | |
JP4673584B2 (ja) | キャッシュメモリ装置、演算処理装置及びキャッシュメモリ装置の制御方法 | |
US11847058B2 (en) | Using a second content-addressable memory to manage memory burst accesses in memory sub-systems | |
JP2010518519A (ja) | アドレス変換方法及び装置 | |
US7549035B1 (en) | System and method for reference and modification tracking | |
JP2007048296A (ja) | 複数のアドレス・キャッシュ・エントリーを無効にする方法、装置およびシステム | |
US20140289469A1 (en) | Processor and control method of processor | |
JP5319049B2 (ja) | キャッシュシステム | |
WO2007096998A1 (ja) | キャッシュメモリ装置およびキャッシュメモリ制御方法 | |
US8185699B2 (en) | Cache memory controller and cache memory controlling method | |
JP4812876B2 (ja) | 演算処理装置および演算処理装置の制御方法 | |
JP6451475B2 (ja) | 演算処理装置、情報処理装置および演算処理装置の制御方法 | |
US11836085B2 (en) | Cache line coherence state upgrade | |
US20230418758A1 (en) | Tag processing for external caches | |
US11822479B2 (en) | History-based selective cache line invalidation requests | |
JP2000347941A (ja) | キャッシュメモリ装置 | |
US7546439B1 (en) | System and method for managing copy-on-write faults and change-protection | |
JP6337570B2 (ja) | 演算処理装置及び演算処理装置の制御方法 | |
KR20040047398A (ko) | 캐쉬 메모리를 이용한 데이터 억세스 방법 | |
JPWO2013084315A1 (ja) | 演算処理装置、及び、演算処理装置の制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
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: 20090407 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090414 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4297968 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120424 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120424 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130424 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140424 Year of fee payment: 5 |
|
LAPS | Cancellation because of no payment of annual fees |