WO2006104747A2 - Method and apparatus for filtering snoop requests using stream registers - Google Patents
Method and apparatus for filtering snoop requests using stream registers Download PDFInfo
- Publication number
- WO2006104747A2 WO2006104747A2 PCT/US2006/010038 US2006010038W WO2006104747A2 WO 2006104747 A2 WO2006104747 A2 WO 2006104747A2 US 2006010038 W US2006010038 W US 2006010038W WO 2006104747 A2 WO2006104747 A2 WO 2006104747A2
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- snoop
- cache
- stream
- stream register
- address
- 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.)
- Ceased
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
- G06F13/28—Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/50—Control mechanisms for virtual memory, cache or TLB
- G06F2212/507—Control mechanisms for virtual memory, cache or TLB using speculative control
-
- 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
Definitions
- the snoop filter described utilizes stream registers for tracking data loaded into a local cache memory associated with the processor unit, and identifies most of the snoop requests which would result in cache misses by filtering them out, but never filtering out a snoop requests for data which are indicated in the stream registers to be locally cached. Reducing the number of snoop requests per processor increases system performance and reduces power.
- the snoop block 310 additionally includes a stream register block 430 and snoop token control block 426.
- each port snoop filter 400a,...,40On monitors all memory read access requests 412 from its associated processor which miss in the processor's Ll level cache. This information is also provided to the stream register block 430 for use as will be described in greater detail herein.
- the filters may be arranged in parallel or in series (in which case the output of one filter is the input to the next, for example). If a filter has inputs from more than one source (i.e., is shared between multiple sources), it has to have its own input queue and an arbiter to serialize snoop requests. A final ordered subset of all snoop requests is placed in the snoop queue 472, and snoop requests are forwarded to the processor via the processor snoop interface 474.
- no snoop request is forwarded to the snoop queue 506 and the snoop queue arbiter 508. If no match is found in the snoop cache 502a,...,502n for the current snoop request, the address of the snoop requests is added to the snoop cache using the signals 514a,...,514n. Concurrently, the snoop request is forwarded to the snoop queue 506.
- the "tag" field of the snoop request is checked against all tag fields in the snoop cache associated with the snoop source i. If the snoop request address tag is the same as one of the address tags stored in the snoop cache, the address tag field has hit in the snoop cache. After this, the valid line vector of the snoop cache entry for which a hit was detected is compared to the valid line vector of the snoop request. If the bit of the valid line vector in the snoop cache line corresponding to the bit set in the valid line vector of the snoop request is set, the valid line vector has hit as well.
- FIG. 6 there is depicted the control flow for updating two stream register sets and the cache wrap detection logic block for the replaced cache lines.
- all stream registers and masks are reset and the cache wrap detection logic is cleared as indicated at step 750, and first set of registers is activated.
- the address of the memory request is added to a first set of stream registers, referred to as an active address stream register set. All address stream registers from the first set of registers are checked to select the best match — as specified by the implemented register selection criteria; alternately, the first empty stream register may be selected.
- step 764 determines if a cache wrap condition exists. If no cache wrap event is detected in the step 764, the system waits for the next processor memory request by returning to step 760. If, however, the cache wrap event is detected, the first set of registers and masks will be used again. Thus, all registers and. paired masks from the first set of registers are reset, the cache wrap detection logic is cleared in the step 766. The first set of registers are going to be used again as active for approximating the content of the cache, and the control flow is looped back to the step 752.
- S_new S_old bit-wise-or V. This keeps a Scoreboard of the number of different bits in each group that occur simultaneously.
- Figure 19(a) particularly depicts one embodiment of logic implemented for detecting the wrap of a single partition of a single set (set "z" in the embodiment depicted) within the logic block 920.
- this logic When this logic has detected a wrap in set i, it asserts the set_wrap(i) signal 910.
- Figure 19(b) shows how the individual set_wrap(i) 910 signals from all N sets of the cache are combined with a logic OR function to produce the cache_wrap 912 signal, which asserts when the entire cache (i.e. all sets) have wrapped. It is understood that the logic and circuitry depicted in Figures 19(a) and 19(b) is only one example implementation and skilled artisans will recognize that many variations and modifications may be made thereof without departing from the scope of the invention.
- a third embodiment of the cache wrap detection logic will work with a cache that implements any replacement policy, including least recently used and random.
- a Scoreboard 940 is used to keep track of the precise cache way 914 that is overwritten. Specifically, it is used to detect the first write to any way.
- a counter 942 keeps track of the number of times that a Scoreboard bit was first set (i.e. goes from 0 tol). It does this by only counting Scoreboard writes where the overwritten bit (old_bit) is zero.
- the counter 942 is pre-loaded to the partition size 936 (i.e. number of ways in the partition), so once this counter reaches zero, the entire cache partition has wrapped. This is indicated by the cache_wrap 912 signal being asserted, causing the counter 942 to be reloaded (assuming Load takes precedence over Down) and the Scoreboard 940 to be cleared (i.e. reset).
- the operation of a filter subunit is programmable.
- This can be in the form of configurable aspects of a snoop filter, e.g., by configuring programmable aspects such as associativity of the cache being snooped, the coherence architecture being implemented, and so forth.
- the filter subunit is implemented in programmable microcode, whereby a programmable engine executes a sequence of instructions to implement the aspects of one or more preferred embodiments described herein. In one aspect, this is a general microcode engine.
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)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2008504137A JP5120850B2 (ja) | 2005-03-29 | 2006-03-17 | ストリーム・レジスタを用いてスヌープ要求をフィルタする方法、装置及びコンピュータ・プログラム |
| EP06739000.5A EP1864224B1 (en) | 2005-03-29 | 2006-03-17 | Method and apparatus for filtering snoop requests using stream registers |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/093,130 US7392351B2 (en) | 2005-03-29 | 2005-03-29 | Method and apparatus for filtering snoop requests using stream registers |
| US11/093,130 | 2005-03-29 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| WO2006104747A2 true WO2006104747A2 (en) | 2006-10-05 |
| WO2006104747A3 WO2006104747A3 (en) | 2007-12-21 |
Family
ID=37053890
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2006/010038 Ceased WO2006104747A2 (en) | 2005-03-29 | 2006-03-17 | Method and apparatus for filtering snoop requests using stream registers |
Country Status (6)
| Country | Link |
|---|---|
| US (2) | US7392351B2 (https=) |
| EP (1) | EP1864224B1 (https=) |
| JP (1) | JP5120850B2 (https=) |
| KR (1) | KR101013237B1 (https=) |
| CN (1) | CN100568206C (https=) |
| WO (1) | WO2006104747A2 (https=) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010517184A (ja) * | 2007-01-26 | 2010-05-20 | クゥアルコム・インコーポレイテッド | スヌープ要求キャッシュを用いたスヌープ・フィルタリング |
| US8732408B2 (en) | 2007-10-18 | 2014-05-20 | Nytell Software LLC | Circuit and method with cache coherence stress control |
| US20190171578A1 (en) * | 2019-01-30 | 2019-06-06 | Intel Corporation | Management of cache use requests sent to remote cache devices |
| EP3534268A1 (en) * | 2018-02-28 | 2019-09-04 | Imagination Technologies Limited | Memory interface |
Families Citing this family (37)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007031696A1 (en) * | 2005-09-13 | 2007-03-22 | Arm Limited | Cache miss detection in a data processing apparatus |
| US8185724B2 (en) * | 2006-03-03 | 2012-05-22 | Arm Limited | Monitoring values of signals within an integrated circuit |
| US20090031082A1 (en) * | 2006-03-06 | 2009-01-29 | Simon Andrew Ford | Accessing a Cache in a Data Processing Apparatus |
| US20080056230A1 (en) * | 2006-08-29 | 2008-03-06 | Santhanakrishnan Geeyarpuram N | Opportunistic channel unblocking mechanism for ordered channels in a point-to-point interconnect |
| US7937535B2 (en) * | 2007-02-22 | 2011-05-03 | Arm Limited | Managing cache coherency in a data processing apparatus |
| US7996626B2 (en) * | 2007-12-13 | 2011-08-09 | Dell Products L.P. | Snoop filter optimization |
| JP5206385B2 (ja) * | 2008-12-12 | 2013-06-12 | 日本電気株式会社 | バウンダリ実行制御システム、バウンダリ実行制御方法、及びバウンダリ実行制御プログラム |
| US8447934B2 (en) * | 2010-06-30 | 2013-05-21 | Advanced Micro Devices, Inc. | Reducing cache probe traffic resulting from false data sharing |
| KR101996592B1 (ko) | 2012-06-15 | 2019-07-04 | 인텔 코포레이션 | 명확화 없는 비순차 load store 큐를 갖는 재정렬된 투기적 명령어 시퀀스들 |
| CN104583956B (zh) | 2012-06-15 | 2019-01-04 | 英特尔公司 | 用于实现加载存储重新排序和优化的指令定义 |
| KR101832574B1 (ko) * | 2012-06-15 | 2018-02-26 | 인텔 코포레이션 | 모든 store들이 캐시의 모든 워드들에 대한 검사를 스누핑해야만 하는 것을 방지하기 위해 store들을 필터링하는 방법 및 시스템 |
| EP2862062B1 (en) | 2012-06-15 | 2024-03-06 | Intel Corporation | A virtual load store queue having a dynamic dispatch window with a distributed structure |
| WO2013188705A2 (en) | 2012-06-15 | 2013-12-19 | Soft Machines, Inc. | A virtual load store queue having a dynamic dispatch window with a unified structure |
| EP2862084A4 (en) | 2012-06-15 | 2016-11-30 | Soft Machines Inc | METHOD AND SYSTEM FOR IMPLEMENTING RECOVERY FROM A SPECULATIVE TRANSMISSION OF FAULT FORECASTS / ERRORS DUE TO THE CHANGE AND OPTIMIZATION OF MEMORY LOADS |
| TWI646422B (zh) | 2012-06-15 | 2019-01-01 | 英特爾股份有限公司 | 在處理器中之免消歧義失序載入/儲存佇列方法、微處理器、和非暫態性電腦可讀取儲存媒體 |
| US9274955B2 (en) * | 2012-08-17 | 2016-03-01 | Futurewei Technologies, Inc. | Reduced scalable cache directory |
| US9251073B2 (en) | 2012-12-31 | 2016-02-02 | Intel Corporation | Update mask for handling interaction between fills and updates |
| DE112013001361B4 (de) * | 2013-03-15 | 2023-06-15 | Tahoe Research, Ltd. | System auf einem Chip, Verfahren, maschinenlesbares Medium und System für die Bereitstellung einer Snoop-Filterung zugeordnet mit einem Datenpuffer |
| US9058273B1 (en) | 2013-12-20 | 2015-06-16 | International Business Machines Corporation | Frequency determination across an interface of a data processing system |
| US9639470B2 (en) * | 2014-08-26 | 2017-05-02 | Arm Limited | Coherency checking of invalidate transactions caused by snoop filter eviction in an integrated circuit |
| US9507716B2 (en) * | 2014-08-26 | 2016-11-29 | Arm Limited | Coherency checking of invalidate transactions caused by snoop filter eviction in an integrated circuit |
| US9727466B2 (en) * | 2014-08-26 | 2017-08-08 | Arm Limited | Interconnect and method of managing a snoop filter for an interconnect |
| CN105793832B (zh) * | 2014-09-18 | 2018-12-18 | 上海兆芯集成电路有限公司 | 处理器及其操作方法、以及计算机可读存储介质 |
| KR102485999B1 (ko) * | 2015-07-01 | 2023-01-06 | 삼성전자주식회사 | 마스터-사이드 필터를 포함하는 캐시 코히런트 시스템과 이를 포함하는 데이터 처리 시스템 |
| US9626232B2 (en) * | 2015-07-23 | 2017-04-18 | Arm Limited | Event queue management |
| US10268586B2 (en) * | 2015-12-08 | 2019-04-23 | Via Alliance Semiconductor Co., Ltd. | Processor with programmable prefetcher operable to generate at least one prefetch address based on load requests |
| US9900260B2 (en) | 2015-12-10 | 2018-02-20 | Arm Limited | Efficient support for variable width data channels in an interconnect network |
| US10157133B2 (en) | 2015-12-10 | 2018-12-18 | Arm Limited | Snoop filter for cache coherency in a data processing system |
| US10262721B2 (en) * | 2016-03-10 | 2019-04-16 | Micron Technology, Inc. | Apparatuses and methods for cache invalidate |
| US9990292B2 (en) * | 2016-06-29 | 2018-06-05 | Arm Limited | Progressive fine to coarse grain snoop filter |
| US10346307B2 (en) | 2016-09-28 | 2019-07-09 | Samsung Electronics Co., Ltd. | Power efficient snoop filter design for mobile platform |
| US10621090B2 (en) * | 2017-01-12 | 2020-04-14 | International Business Machines Corporation | Facility for extending exclusive hold of a cache line in private cache |
| US10042766B1 (en) | 2017-02-02 | 2018-08-07 | Arm Limited | Data processing apparatus with snoop request address alignment and snoop response time alignment |
| US10761985B2 (en) * | 2018-08-02 | 2020-09-01 | Xilinx, Inc. | Hybrid precise and imprecise cache snoop filtering |
| CN109582895A (zh) * | 2018-12-04 | 2019-04-05 | 山东浪潮通软信息科技有限公司 | 一种缓存实现方法 |
| US10635591B1 (en) * | 2018-12-05 | 2020-04-28 | Advanced Micro Devices, Inc. | Systems and methods for selectively filtering, buffering, and processing cache coherency probes |
| US10657055B1 (en) * | 2018-12-13 | 2020-05-19 | Arm Limited | Apparatus and method for managing snoop operations |
Family Cites Families (23)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5014327A (en) * | 1987-06-15 | 1991-05-07 | Digital Equipment Corporation | Parallel associative memory having improved selection and decision mechanisms for recognizing and sorting relevant patterns |
| JP3027843B2 (ja) * | 1993-04-23 | 2000-04-04 | 株式会社日立製作所 | バススヌ−プ方法 |
| US5778424A (en) * | 1993-04-30 | 1998-07-07 | Avsys Corporation | Distributed placement, variable-size cache architecture |
| US5655100A (en) * | 1995-03-31 | 1997-08-05 | Sun Microsystems, Inc. | Transaction activation processor for controlling memory transaction execution in a packet switched cache coherent multiprocessor system |
| US5659710A (en) * | 1995-11-29 | 1997-08-19 | International Business Machines Corporation | Cache coherency method and system employing serially encoded snoop responses |
| US5966729A (en) * | 1997-06-30 | 1999-10-12 | Sun Microsystems, Inc. | Snoop filter for use in multiprocessor computer systems |
| US6460119B1 (en) * | 1997-12-29 | 2002-10-01 | Intel Corporation | Snoop blocking for cache coherency |
| US6272604B1 (en) * | 1999-05-20 | 2001-08-07 | International Business Machines Corporation | Contingent response apparatus and method for maintaining cache coherency |
| US6389517B1 (en) * | 2000-02-25 | 2002-05-14 | Sun Microsystems, Inc. | Maintaining snoop traffic throughput in presence of an atomic operation a first port for a first queue tracks cache requests and a second port for a second queue snoops that have yet to be filtered |
| US6934817B2 (en) * | 2000-03-31 | 2005-08-23 | Intel Corporation | Controlling access to multiple memory zones in an isolated execution environment |
| US6598123B1 (en) * | 2000-06-28 | 2003-07-22 | Intel Corporation | Snoop filter line replacement for reduction of back invalidates in multi-node architectures |
| US6810467B1 (en) * | 2000-08-21 | 2004-10-26 | Intel Corporation | Method and apparatus for centralized snoop filtering |
| US20030131201A1 (en) * | 2000-12-29 | 2003-07-10 | Manoj Khare | Mechanism for efficiently supporting the full MESI (modified, exclusive, shared, invalid) protocol in a cache coherent multi-node shared memory system |
| US7472231B1 (en) * | 2001-09-07 | 2008-12-30 | Netapp, Inc. | Storage area network data cache |
| US6823409B2 (en) * | 2001-09-28 | 2004-11-23 | Hewlett-Packard Development Company, L.P. | Coherency control module for maintaining cache coherency in a multi-processor-bus system |
| US6829665B2 (en) | 2001-09-28 | 2004-12-07 | Hewlett-Packard Development Company, L.P. | Next snoop predictor in a host controller |
| US6842827B2 (en) * | 2002-01-02 | 2005-01-11 | Intel Corporation | Cache coherency arrangement to enhance inbound bandwidth |
| US6857048B2 (en) | 2002-01-17 | 2005-02-15 | Intel Corporation | Pseudo least-recently-used (PLRU) replacement method for a multi-node snoop filter |
| US6959364B2 (en) | 2002-06-28 | 2005-10-25 | Intel Corporation | Partially inclusive snoop filter |
| TW560035B (en) * | 2002-07-05 | 2003-11-01 | Via Tech Inc | Interlayer disposition structure of multi-layer circuit board |
| US7117312B1 (en) * | 2003-11-17 | 2006-10-03 | Sun Microsystems, Inc. | Mechanism and method employing a plurality of hash functions for cache snoop filtering |
| US7308538B2 (en) * | 2004-11-04 | 2007-12-11 | International Business Machines Corporation | Scope-based cache coherence |
| US7475167B2 (en) * | 2005-04-15 | 2009-01-06 | Intel Corporation | Offloading data path functions |
-
2005
- 2005-03-29 US US11/093,130 patent/US7392351B2/en not_active Expired - Fee Related
-
2006
- 2006-03-17 EP EP06739000.5A patent/EP1864224B1/en not_active Expired - Lifetime
- 2006-03-17 JP JP2008504137A patent/JP5120850B2/ja not_active Expired - Fee Related
- 2006-03-17 KR KR1020077021818A patent/KR101013237B1/ko not_active Expired - Fee Related
- 2006-03-17 CN CNB2006800101519A patent/CN100568206C/zh not_active Expired - Fee Related
- 2006-03-17 WO PCT/US2006/010038 patent/WO2006104747A2/en not_active Ceased
-
2008
- 2008-06-11 US US12/137,325 patent/US8135917B2/en not_active Expired - Fee Related
Non-Patent Citations (1)
| Title |
|---|
| See references of EP1864224A4 * |
Cited By (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010517184A (ja) * | 2007-01-26 | 2010-05-20 | クゥアルコム・インコーポレイテッド | スヌープ要求キャッシュを用いたスヌープ・フィルタリング |
| US8732408B2 (en) | 2007-10-18 | 2014-05-20 | Nytell Software LLC | Circuit and method with cache coherence stress control |
| EP3534268A1 (en) * | 2018-02-28 | 2019-09-04 | Imagination Technologies Limited | Memory interface |
| GB2571538A (en) * | 2018-02-28 | 2019-09-04 | Imagination Tech Ltd | Memory interface |
| CN110209610A (zh) * | 2018-02-28 | 2019-09-06 | 畅想科技有限公司 | 存储器接口 |
| GB2571538B (en) * | 2018-02-28 | 2020-08-19 | Imagination Tech Ltd | Memory interface |
| US11132299B2 (en) | 2018-02-28 | 2021-09-28 | Imagination Technologies Limited | Memory interface having multiple snoop processors |
| US11734177B2 (en) | 2018-02-28 | 2023-08-22 | Imagination Technologies Limited | Memory interface having multiple snoop processors |
| CN110209610B (zh) * | 2018-02-28 | 2024-05-03 | 畅想科技有限公司 | 存储器接口 |
| US12235767B2 (en) | 2018-02-28 | 2025-02-25 | Imagination Technologies Limited | Memory interface having multiple snoop processors |
| US20190171578A1 (en) * | 2019-01-30 | 2019-06-06 | Intel Corporation | Management of cache use requests sent to remote cache devices |
| US11593273B2 (en) * | 2019-01-30 | 2023-02-28 | Intel Corporation | Management of cache use requests sent to remote cache devices |
Also Published As
| Publication number | Publication date |
|---|---|
| US7392351B2 (en) | 2008-06-24 |
| JP5120850B2 (ja) | 2013-01-16 |
| US8135917B2 (en) | 2012-03-13 |
| EP1864224A2 (en) | 2007-12-12 |
| US20060224836A1 (en) | 2006-10-05 |
| EP1864224B1 (en) | 2013-05-08 |
| JP2008535093A (ja) | 2008-08-28 |
| KR101013237B1 (ko) | 2011-02-08 |
| CN101189590A (zh) | 2008-05-28 |
| KR20070119653A (ko) | 2007-12-20 |
| EP1864224A4 (en) | 2011-08-10 |
| CN100568206C (zh) | 2009-12-09 |
| US20080244194A1 (en) | 2008-10-02 |
| WO2006104747A3 (en) | 2007-12-21 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7373462B2 (en) | Snoop filter for filtering snoop requests | |
| US8103836B2 (en) | Snoop filtering system in a multiprocessor system | |
| US8135917B2 (en) | Method and apparatus for filtering snoop requests using stream registers | |
| US7603523B2 (en) | Method and apparatus for filtering snoop requests in a point-to-point interconnect architecture | |
| US7603524B2 (en) | Method and apparatus for filtering snoop requests using multiple snoop caches | |
| US7617366B2 (en) | Method and apparatus for filtering snoop requests using mulitiple snoop caches | |
| JP2008535093A5 (https=) | ||
| US7925840B2 (en) | Data processing apparatus and method for managing snoop operations | |
| US20200371970A1 (en) | Multiple-requestor memory access pipeline and arbiter | |
| US8015364B2 (en) | Method and apparatus for filtering snoop requests using a scoreboard | |
| US7287122B2 (en) | Data replication in multiprocessor NUCA systems to reduce horizontal cache thrashing | |
| US7958309B2 (en) | Dynamic selection of a memory access size | |
| US9830265B2 (en) | Reuse of directory entries for holding state information through use of multiple formats | |
| Blumrich et al. | Exploring the architecture of a stream register-based snoop filter |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 200680010151.9 Country of ref document: CN |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
| WWE | Wipo information: entry into national phase |
Ref document number: 2006739000 Country of ref document: EP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 1020077021818 Country of ref document: KR |
|
| ENP | Entry into the national phase |
Ref document number: 2008504137 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| NENP | Non-entry into the national phase |
Ref country code: RU |