JP2007323192A - キャッシュメモリ装置および処理方法 - Google Patents
キャッシュメモリ装置および処理方法 Download PDFInfo
- Publication number
- JP2007323192A JP2007323192A JP2006150445A JP2006150445A JP2007323192A JP 2007323192 A JP2007323192 A JP 2007323192A JP 2006150445 A JP2006150445 A JP 2006150445A JP 2006150445 A JP2006150445 A JP 2006150445A JP 2007323192 A JP2007323192 A JP 2007323192A
- Authority
- JP
- Japan
- Prior art keywords
- command
- processing
- queue
- machine
- 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.)
- 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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/084—Multiuser, multiprocessor or multiprocessing cache systems with a shared cache
-
- 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
【解決手段】複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付手段301と、コマンド受付手段301が受け付けたコマンドに対応する処理を行う処理手段と、処理手段がコマンドを処理しているときに、処理手段による処理中のコマンドに対するキャッシュラインアドレスと同一のキャッシュラインアドレスに対するコマンドをコマンド受付手段301が受け付けた場合に、コマンド受付手段301が受け付けたコマンドをキュー330に格納する格納手段とを備えた。
【選択図】 図2
Description
1. L2キャッシュ30にReadでヒットした場合
2. L2キャッシュ30にReadでミスした場合
3. L2キャッシュ30にWriteでヒットした場合
4. L2キャッシュ30にWriteでミスした場合
5. L2データメモリ350からのコピーバック
6. L2キャッシュ30にロック命令(Test&Set)でヒットした場合
7. L2キャッシュ30にロック命令(Test&Set)でミスした場合
11A〜11H L1キャッシュ
30 L2キャッシュ
40 メモリコントローラ
43 内蔵EDRAM
44 外部SDRAM
301 コマンド受付部
302 タグRAM
304 ディスパッチ処理部
306 RCマシン
308 CPBKマシン
310 Lockマシン
320 アドレスバッファ
322 比較器
324 シャドウレジスタ
330 リサイクルキュー
331 フリーリスト
332 エントリ
333 エントリ管理部
334 シフトレジスタ
335 デコーダ
336 レディレジスタ
350 L2データメモリ
352 MRLDバッファ
354 MUX
356 ロック用ロジック
360 バイパスバッファ
362 MUX
364 MCPBKバッファ
370 エンコーダ
372 デュアルポートメモリ
374 ライトポインタ
376 デコーダ
378 リードポインタ
380 フリップフロップ
382 選択回路
384 エンコーダ
386 デュアルポートメモリ
388 ライトポインタ
390 リードポインタ
392 デコーダ
394 マシンタイマ
396 検出部
Claims (11)
- 複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付手段と、
前記コマンド受付手段が受け付けたコマンドに対応する処理を行う処理手段と、
前記処理手段が前記コマンドを処理しているときに、前記処理手段による処理中の前記コマンドに対するキャッシュラインアドレスと同一のキャッシュラインアドレスに対するコマンドを前記コマンド受付手段が受け付けた場合に、前記コマンド受付手段が受け付けた前記コマンドをキューに格納する格納手段と
を備えたことを特徴とするキャッシュメモリ装置。 - 前記処理が完了した場合に、前記キューに格納されている前記コマンドを読み出す読出手段をさらに備え、
前記処理手段は、前記読出手段により読み出された前記コマンドに対する処理を行うことを特徴とする請求項1に記載のキャッシュメモリ装置。 - 前記読出手段は、前記キューに複数のコマンドが格納されている場合に、前記キューに格納された時期が最も古いコマンドから順に読み出すことを特徴とする請求項2に記載のキャッシュメモリ装置。
- 前記処理手段は、前記コマンドに対するコマンド処理として、ロック処理を行うことを特徴とする請求項2または3に記載のキャッシュメモリ装置。
- 前記コマンドの種類ごとに設けられ、各コマンドの処理状態を監視する複数の第1ステートマシンをさらに備え、
前記処理手段は、前記コマンドに対応する前記第1ステートマシンを動作させ、
前記読出手段は、前記第1ステートマシンの処理が終了した場合に、前記キューに格納されている前記コマンドを読み出すことを特徴とする請求項2から4のいずれか一項に記載のキャッシュメモリ装置。 - 前記格納手段は、所定の種類のコマンドに対するすべての前記第1ステートマシンが使用されているときに、前記コマンド受付手段が当該種類のコマンドを受け付けた場合に、前記コマンド受付手段が受け付けた前記コマンドを前記キューに格納することを特徴とする請求項5に記載のキャッシュメモリ装置。
- 前記第1ステートマシンにより呼び出される第2ステートマシンであって、前記第1ステートマシンの数より少ない数の前記第2ステートマシンと、
前記第2ステートマシンを呼び出すべき複数の前記第1ステートマシンの待ち行列を作り、前記待ち行列に格納された時期が最も古い前記第1ステートマシンから順に前記第2ステートマシンを呼び出し可能とする調停手段と
をさらに備えたことを特徴とする請求項5または6に記載のキャッシュメモリ装置。 - 前記第1ステートマシンにより利用される機器であって、前記第1ステートマシンの数より少ない数の前記機器と、
前記機器を利用すべき複数の前記第1ステートマシンの待ち行列を作り、前記待ち行列に格納された時期が最も古い前記第1ステートマシンから順に前記機器を利用可能とする調停手段と、
前記機器を利用している前記第1ステートマシンの種類に応じた利用時間を管理するタイマと
をさらに備え、
前記調停手段は、前記タイマが前記利用時間をカウントした場合に、前記機器を利用可能であると判断し、前記待ち行列に格納された時期が最も古い前記第1ステートマシンに対し、前記機器を利用可能とすることを特徴とする請求項5から7のいずれか一項に記載のキャッシュメモリ装置。 - 複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付手段と、
前記コマンド受付手段が受け付けたコマンドに対応する処理を行う処理手段と、
コマンドの種類ごとに設けられ、各コマンドの処理状態を監視する複数の第1ステートマシンと、
所定の種類のコマンドに対するすべての前記第1ステートマシンが使用されているときに、前記コマンド受付手段が当該種類のコマンドを受け付けた場合に、前記コマンド受付手段が受け付けた前記コマンドを前記キューに格納する格納手段と
を備えたことを特徴とするキャッシュメモリ装置。 - キャッシュメモリ装置における処理方法であって、
複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付ステップと、
前記コマンド受付ステップにおいて受け付けたコマンドに対応する処理を行う処理ステップと、
前記処理ステップにおいて前記コマンドを処理しているときに、処理中の前記コマンドに対するキャッシュラインアドレスと同一のキャッシュラインアドレスに対するコマンドを受け付けた場合に、受け付けた前記コマンドをキューに格納する格納ステップと
を有することを特徴とする処理方法。 - キャッシュメモリ装置における処理方法であって、
複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付ステップと、
前記コマンド受付ステップにおいて受け付けたコマンドに対応する処理を行う処理ステップと、
コマンドの種類ごとに設けられ、各コマンドの処理状態を監視する複数の第1ステートマシンのうち所定の種類のコマンドに対するすべての前記第1ステートマシンが使用されているときに、当該種類のコマンドを受け付けた場合に、受け付けた前記コマンドを前記キューに格納する格納ステップと
を有することを特徴とする処理方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006150445A JP4208895B2 (ja) | 2006-05-30 | 2006-05-30 | キャッシュメモリ装置および処理方法 |
US11/635,518 US20070283100A1 (en) | 2006-05-30 | 2006-12-08 | Cache memory device and caching method |
EP07250797A EP1862907A3 (en) | 2006-05-30 | 2007-02-26 | Cache memory device and caching method |
CNA2007100923685A CN101082882A (zh) | 2006-05-30 | 2007-02-28 | 高速缓冲存储器装置和高速缓冲存储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006150445A JP4208895B2 (ja) | 2006-05-30 | 2006-05-30 | キャッシュメモリ装置および処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007323192A true JP2007323192A (ja) | 2007-12-13 |
JP4208895B2 JP4208895B2 (ja) | 2009-01-14 |
Family
ID=38477345
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006150445A Expired - Fee Related JP4208895B2 (ja) | 2006-05-30 | 2006-05-30 | キャッシュメモリ装置および処理方法 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20070283100A1 (ja) |
EP (1) | EP1862907A3 (ja) |
JP (1) | JP4208895B2 (ja) |
CN (1) | CN101082882A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011008731A (ja) * | 2009-06-29 | 2011-01-13 | Fujitsu Ltd | キャッシュメモリ装置、半導体集積回路および演算処理装置 |
JP2015524979A (ja) * | 2012-08-17 | 2015-08-27 | インテル・コーポレーション | ユニファイドメモリアーキテクチャを介したメモリ共有 |
US9171227B2 (en) | 2012-06-20 | 2015-10-27 | Samsung Electronics Co., Ltd. | Apparatus and method extracting feature information of a source image |
JP2017102903A (ja) * | 2015-12-03 | 2017-06-08 | 三星電子株式会社Samsung Electronics Co.,Ltd. | メモリ管理メカニズムを具備する電子システム |
JP2021502629A (ja) * | 2017-11-10 | 2021-01-28 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 複数のプロセッサによる共有キャッシュ・ラインの同時変更 |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7616470B2 (en) * | 2006-06-16 | 2009-11-10 | International Business Machines Corporation | Method for achieving very high bandwidth between the levels of a cache hierarchy in 3-dimensional structures, and a 3-dimensional structure resulting therefrom |
US9021240B2 (en) * | 2008-02-22 | 2015-04-28 | International Business Machines Corporation | System and method for Controlling restarting of instruction fetching using speculative address computations |
US10621092B2 (en) | 2008-11-24 | 2020-04-14 | Intel Corporation | Merging level cache and data cache units having indicator bits related to speculative execution |
US9672019B2 (en) | 2008-11-24 | 2017-06-06 | Intel Corporation | Systems, apparatuses, and methods for a hardware and software system to automatically decompose a program to multiple parallel threads |
US8521982B2 (en) * | 2009-04-15 | 2013-08-27 | International Business Machines Corporation | Load request scheduling in a cache hierarchy |
US8775153B2 (en) * | 2009-12-23 | 2014-07-08 | Intel Corporation | Transitioning from source instruction set architecture (ISA) code to translated code in a partial emulation environment |
US8838853B2 (en) * | 2010-01-18 | 2014-09-16 | Marvell International Ltd. | Access buffer |
WO2013048468A1 (en) | 2011-09-30 | 2013-04-04 | Intel Corporation | Instruction and logic to perform dynamic binary translation |
US8793442B2 (en) * | 2012-02-08 | 2014-07-29 | International Business Machines Corporation | Forward progress mechanism for stores in the presence of load contention in a system favoring loads |
US9405551B2 (en) | 2013-03-12 | 2016-08-02 | Intel Corporation | Creating an isolated execution environment in a co-designed processor |
US9891936B2 (en) | 2013-09-27 | 2018-02-13 | Intel Corporation | Method and apparatus for page-level monitoring |
US9916243B2 (en) * | 2013-10-25 | 2018-03-13 | Advanced Micro Devices, Inc. | Method and apparatus for performing a bus lock and translation lookaside buffer invalidation |
US9589606B2 (en) * | 2014-01-15 | 2017-03-07 | Samsung Electronics Co., Ltd. | Handling maximum activation count limit and target row refresh in DDR4 SDRAM |
US10133627B2 (en) * | 2015-12-11 | 2018-11-20 | SK Hynix Inc. | Memory device controller with mirrored command and operating method thereof |
US20220382578A1 (en) * | 2021-05-28 | 2022-12-01 | Microsoft Technology Licensing, Llc | Asynchronous processing of transaction log requests in a database transaction log service |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0348628A3 (en) * | 1988-06-28 | 1991-01-02 | International Business Machines Corporation | Cache storage system |
ATE157183T1 (de) * | 1989-07-06 | 1997-09-15 | Digital Equipment Corp | Eingabewarteschlange für speichersubsysteme |
US5276847A (en) * | 1990-02-14 | 1994-01-04 | Intel Corporation | Method for locking and unlocking a computer address |
JP3451103B2 (ja) * | 1992-11-27 | 2003-09-29 | 富士通株式会社 | データ通信装置及び方法 |
US6161208A (en) * | 1994-05-06 | 2000-12-12 | International Business Machines Corporation | Storage subsystem including an error correcting cache and means for performing memory to memory transfers |
US5893160A (en) * | 1996-04-08 | 1999-04-06 | Sun Microsystems, Inc. | Deterministic distributed multi-cache coherence method and system |
US6408345B1 (en) * | 1999-07-15 | 2002-06-18 | Texas Instruments Incorporated | Superscalar memory transfer controller in multilevel memory organization |
US6484240B1 (en) * | 1999-07-30 | 2002-11-19 | Sun Microsystems, Inc. | Mechanism for reordering transactions in computer systems with snoop-based cache consistency protocols |
US6801203B1 (en) * | 1999-12-22 | 2004-10-05 | Microsoft Corporation | Efficient graphics pipeline with a pixel cache and data pre-fetching |
US6694417B1 (en) * | 2000-04-10 | 2004-02-17 | International Business Machines Corporation | Write pipeline and method of data transfer that sequentially accumulate a plurality of data granules for transfer in association with a single address |
US6895472B2 (en) * | 2002-06-21 | 2005-05-17 | Jp Morgan & Chase | System and method for caching results |
US20040022094A1 (en) * | 2002-02-25 | 2004-02-05 | Sivakumar Radhakrishnan | Cache usage for concurrent multiple streams |
US7743223B2 (en) * | 2003-08-18 | 2010-06-22 | Cray Inc. | Decoupling of write address from its associated write data in a store to a shared memory in a multiprocessor system |
US7047322B1 (en) * | 2003-09-30 | 2006-05-16 | Unisys Corporation | System and method for performing conflict resolution and flow control in a multiprocessor system |
-
2006
- 2006-05-30 JP JP2006150445A patent/JP4208895B2/ja not_active Expired - Fee Related
- 2006-12-08 US US11/635,518 patent/US20070283100A1/en not_active Abandoned
-
2007
- 2007-02-26 EP EP07250797A patent/EP1862907A3/en not_active Withdrawn
- 2007-02-28 CN CNA2007100923685A patent/CN101082882A/zh active Pending
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011008731A (ja) * | 2009-06-29 | 2011-01-13 | Fujitsu Ltd | キャッシュメモリ装置、半導体集積回路および演算処理装置 |
US8589636B2 (en) | 2009-06-29 | 2013-11-19 | Fujitsu Limited | Cache memory device, processor, and processing method |
US9171227B2 (en) | 2012-06-20 | 2015-10-27 | Samsung Electronics Co., Ltd. | Apparatus and method extracting feature information of a source image |
JP2015524979A (ja) * | 2012-08-17 | 2015-08-27 | インテル・コーポレーション | ユニファイドメモリアーキテクチャを介したメモリ共有 |
US10198361B2 (en) | 2012-08-17 | 2019-02-05 | Intel Corporation | Memory sharing via a unified memory architecture |
US10929304B2 (en) | 2012-08-17 | 2021-02-23 | Intel Corporation | Memory sharing via a unified memory architecture |
US11531623B2 (en) | 2012-08-17 | 2022-12-20 | Intel Corporation | Memory sharing via a unified memory architecture |
JP2017102903A (ja) * | 2015-12-03 | 2017-06-08 | 三星電子株式会社Samsung Electronics Co.,Ltd. | メモリ管理メカニズムを具備する電子システム |
JP2021502629A (ja) * | 2017-11-10 | 2021-01-28 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 複数のプロセッサによる共有キャッシュ・ラインの同時変更 |
JP7083446B2 (ja) | 2017-11-10 | 2022-06-13 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 複数のプロセッサによる共有キャッシュ・ラインの同時変更 |
Also Published As
Publication number | Publication date |
---|---|
JP4208895B2 (ja) | 2009-01-14 |
EP1862907A3 (en) | 2009-10-21 |
EP1862907A2 (en) | 2007-12-05 |
CN101082882A (zh) | 2007-12-05 |
US20070283100A1 (en) | 2007-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4208895B2 (ja) | キャッシュメモリ装置および処理方法 | |
US9367472B2 (en) | Observation of data in persistent memory | |
TW591384B (en) | Method and system for speculatively invalidating lines in a cache | |
JP4829541B2 (ja) | マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置 | |
KR101531078B1 (ko) | 데이터 처리 시스템 및 데이터 처리 방법 | |
US7219185B2 (en) | Apparatus and method for selecting instructions for execution based on bank prediction of a multi-bank cache | |
US8327077B2 (en) | Method and apparatus of parallel computing with simultaneously operating stream prefetching and list prefetching engines | |
EP0514024B1 (en) | Method and apparatus for an improved memory architecture | |
JP4298800B2 (ja) | キャッシュメモリにおけるプリフェッチ管理 | |
KR100228940B1 (ko) | 메모리 일관성 유지 방법 | |
US7363435B1 (en) | System and method for coherence prediction | |
JP2007536626A (ja) | ロードオペレーションの投機的な結果をレジスタ値にリンクするメモリファイルを検証するためのシステムおよび方法 | |
US20120226865A1 (en) | Network-on-chip system including active memory processor | |
US8190825B2 (en) | Arithmetic processing apparatus and method of controlling the same | |
US9092346B2 (en) | Speculative cache modification | |
WO2009054959A1 (en) | Coherent dram prefetcher | |
US8645588B2 (en) | Pipelined serial ring bus | |
JP2008107983A (ja) | キャッシュメモリ | |
JP2007514237A (ja) | 分岐先バッファにおいてエントリを割り当てる方法及び装置 | |
JP5163220B2 (ja) | キャッシュ制御装置、情報処理装置 | |
WO2005121970A1 (en) | Title: system and method for canceling write back operation during simultaneous snoop push or snoop kill operation in write back caches | |
WO2013101213A1 (en) | Method and apparatus for cutting senior store latency using store prefetching | |
US20100095071A1 (en) | Cache control apparatus and cache control method | |
CN114020656A (zh) | 多核SOC中非阻塞L1 Cache | |
US11176042B2 (en) | Method and apparatus for architectural cache transaction logging |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20080327 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20080716 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20080729 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080929 |
|
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: 20081014 |
|
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: 20081021 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111031 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |