JP4208895B2 - キャッシュメモリ装置および処理方法 - Google Patents
キャッシュメモリ装置および処理方法 Download PDFInfo
- Publication number
- JP4208895B2 JP4208895B2 JP2006150445A JP2006150445A JP4208895B2 JP 4208895 B2 JP4208895 B2 JP 4208895B2 JP 2006150445 A JP2006150445 A JP 2006150445A JP 2006150445 A JP2006150445 A JP 2006150445A JP 4208895 B2 JP4208895 B2 JP 4208895B2
- 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.)
- 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/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)
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 (9)
- 複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付手段と、
前記コマンドの種類ごとに設けられ、前記コマンドの処理状態を監視する複数の第1ステートマシンと、
前記コマンド受付手段が受け付けたコマンドに対応する前記第1ステートマシンを動作させ、前記コマンドに対する処理を行う処理手段と、
前記処理手段が前記コマンドを処理しているときに、前記処理手段による処理中の前記コマンドに対するアドレスの上位ビットであるキャッシュラインアドレスと同一のキャッシュラインアドレスに対するコマンドを前記コマンド受付手段が受け付けた場合に、前記コマンド受付手段が受け付けた前記コマンドをキューに格納する格納手段と、
前記第1ステートマシンの処理が終了した場合に、前記キューに格納されている前記コマンドを読み出す読出手段と
を備え、
前記処理手段は、前記読出手段により読み出された前記コマンドに対する処理を行うことを特徴とするキャッシュメモリ装置。 - 前記読出手段は、前記キューに複数のコマンドが格納されている場合に、前記キューに格納された時期が最も古いコマンドから順に読み出すことを特徴とする請求項1に記載のキャッシュメモリ装置。
- 前記処理手段は、前記コマンドに対するコマンド処理として、ロック処理を行うことを特徴とする請求項1または2に記載のキャッシュメモリ装置。
- 前記格納手段は、所定の種類のコマンドに対するすべての前記第1ステートマシンが使用されているときに、前記コマンド受付手段が当該種類のコマンドを受け付けた場合に、前記コマンド受付手段が受け付けた前記コマンドを前記キューに格納することを特徴とする請求項1から3のいずれか一項に記載のキャッシュメモリ装置。
- 前記第1ステートマシンにより呼び出される第2ステートマシンであって、前記第1ステートマシンの数より少ない数の前記第2ステートマシンと、
前記第2ステートマシンを呼び出すべき複数の前記第1ステートマシンの待ち行列を作り、前記待ち行列に格納された時期が最も古い前記第1ステートマシンから順に前記第2ステートマシンを呼び出し可能とする調停手段と
をさらに備えたことを特徴とする請求項1から4のいずれか一項に記載のキャッシュメモリ装置。 - 前記第1ステートマシンにより利用される機器であって、前記第1ステートマシンの数より少ない数の前記機器と、
前記機器を利用すべき複数の前記第1ステートマシンの待ち行列を作り、前記待ち行列に格納された時期が最も古い前記第1ステートマシンから順に前記機器を利用可能とする調停手段と、
前記機器を利用している前記第1ステートマシンの種類に応じた利用時間を管理するタイマと
をさらに備え、
前記調停手段は、前記タイマが前記利用時間をカウントした場合に、前記機器を利用可能であると判断し、前記待ち行列に格納された時期が最も古い前記第1ステートマシンに対し、前記機器を利用可能とすることを特徴とする請求項1から5のいずれか一項に記載のキャッシュメモリ装置。 - 複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付手段と、
前記コマンド受付手段が受け付けたコマンドに対応する処理を行う処理手段と、
コマンドの種類ごとに設けられ、該コマンドの処理状態を監視する複数の第1ステートマシンと、
第1の種類のコマンドに対するすべての前記第1ステートマシンが使用されているときに、前記コマンド受付手段が当該第1の種類のコマンドを受け付けた場合に、前記コマンド受付手段が受け付けた前記コマンドをキューに格納する格納手段と
を備えたことを特徴とするキャッシュメモリ装置。 - キャッシュメモリ装置における処理方法であって、
複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付ステップと、
前記コマンドの種類ごとに設けられ、前記コマンドの処理状態を監視する複数の第1ステートマシンのうち、前記コマンド受付ステップにおいて受け付けたコマンドに対応する前記第1ステートマシンを動作させ、前記コマンドに対する処理を行う第1処理ステップと、
前記第1処理ステップにおいて前記コマンドを処理しているときに、前記第1処理ステップにおいて処理中の前記コマンドに対するアドレスの上位ビットであるキャッシュラインアドレスと同一のキャッシュラインアドレスに対するコマンドを受け付けた場合に、受け付けた前記コマンドをキューに格納する格納ステップと、
前記第1ステートマシンの処理が終了した場合に、前記キューに格納されている前記コマンドを読み出す読出ステップと、
前記読出ステップにおいて読み出された前記コマンドに対する処理を行う第2処理ステップと
を有することを特徴とする処理方法。 - キャッシュメモリ装置における処理方法であって、
複数のプロセッサそれぞれから複数のコマンドを受け付けるコマンド受付ステップと、
前記コマンド受付ステップにおいて受け付けたコマンドに対応する処理を行う処理ステップと、
コマンドの種類ごとに設けられ、該コマンドの処理状態を監視する複数の第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 JP2007323192A (ja) | 2007-12-13 |
JP4208895B2 true 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) |
Families Citing this family (20)
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 |
JP2011008731A (ja) * | 2009-06-29 | 2011-01-13 | Fujitsu Ltd | キャッシュメモリ装置、半導体集積回路および演算処理装置 |
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 |
US9417855B2 (en) | 2011-09-30 | 2016-08-16 | 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 |
KR101904203B1 (ko) | 2012-06-20 | 2018-10-05 | 삼성전자주식회사 | 시프트 알고리즘을 이용하여 대용량 소스 이미지의 특징점 정보를 추출하는 장치 및 방법 |
US9373182B2 (en) * | 2012-08-17 | 2016-06-21 | Intel Corporation | Memory sharing via a unified memory architecture |
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 |
KR102165775B1 (ko) * | 2013-10-25 | 2020-10-14 | 어드밴스드 마이크로 디바이시즈, 인코포레이티드 | 버스 잠금 및 변환 색인 버퍼 무효화를 수행하기 위한 방법 및 장치 |
US9589606B2 (en) * | 2014-01-15 | 2017-03-07 | Samsung Electronics Co., Ltd. | Handling maximum activation count limit and target row refresh in DDR4 SDRAM |
US9934154B2 (en) * | 2015-12-03 | 2018-04-03 | Samsung Electronics Co., Ltd. | Electronic system with memory management mechanism and method of operation thereof |
US10133627B2 (en) * | 2015-12-11 | 2018-11-20 | SK Hynix Inc. | Memory device controller with mirrored command and operating method thereof |
US10769068B2 (en) * | 2017-11-10 | 2020-09-08 | International Business Machines Corporation | Concurrent modification of shared cache line by multiple processors |
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 |
EP0407087B1 (en) * | 1989-07-06 | 1997-08-20 | Digital Equipment Corporation | Memory subsystem input queue |
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 |
US6912612B2 (en) * | 2002-02-25 | 2005-06-28 | Intel Corporation | Shared bypass bus structure |
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
Also Published As
Publication number | Publication date |
---|---|
CN101082882A (zh) | 2007-12-05 |
JP2007323192A (ja) | 2007-12-13 |
EP1862907A3 (en) | 2009-10-21 |
EP1862907A2 (en) | 2007-12-05 |
US20070283100A1 (en) | 2007-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4208895B2 (ja) | キャッシュメモリ装置および処理方法 | |
US9367472B2 (en) | Observation of data in persistent memory | |
JP4829541B2 (ja) | マルチレベル・レジスタ・ファイルを有するディジタル・データ処理装置 | |
US7636819B2 (en) | Method for proactive synchronization within a computer system | |
JP3875738B2 (ja) | ロード・バッファを備えたロード/ストア・ユニット内にて切り離されたタグ及びデータ・アレイへのアクセス方法及びそのアレイを有する装置 | |
US5941981A (en) | System for using a data history table to select among multiple data prefetch algorithms | |
JP4298800B2 (ja) | キャッシュメモリにおけるプリフェッチ管理 | |
US8327077B2 (en) | Method and apparatus of parallel computing with simultaneously operating stream prefetching and list prefetching engines | |
KR101531078B1 (ko) | 데이터 처리 시스템 및 데이터 처리 방법 | |
US7213126B1 (en) | Method and processor including logic for storing traces within a trace cache | |
US7219185B2 (en) | Apparatus and method for selecting instructions for execution based on bank prediction of a multi-bank cache | |
US8504804B2 (en) | Managing multiple threads in a single pipeline | |
KR100228940B1 (ko) | 메모리 일관성 유지 방법 | |
TWI383295B (zh) | 拋棄快取項目中過時的項目 | |
JP2007536626A (ja) | ロードオペレーションの投機的な結果をレジスタ値にリンクするメモリファイルを検証するためのシステムおよび方法 | |
US8190825B2 (en) | Arithmetic processing apparatus and method of controlling the same | |
WO2009054959A1 (en) | Coherent dram prefetcher | |
JP2008107983A (ja) | キャッシュメモリ | |
JP2007514237A (ja) | 分岐先バッファにおいてエントリを割り当てる方法及び装置 | |
WO2005121970A1 (en) | Title: system and method for canceling write back operation during simultaneous snoop push or snoop kill operation in write back caches | |
EP0380842A2 (en) | Method and apparatus for interfacing a system control unit for a multiprocessor system with the central processing units | |
US6976130B2 (en) | Cache controller unit architecture and applied method | |
JP4621292B2 (ja) | キャッシュ制御装置およびキャッシュ制御方法 | |
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 |