CN100568206C - 使用流寄存器过滤监听请求的方法和装置 - Google Patents

使用流寄存器过滤监听请求的方法和装置 Download PDF

Info

Publication number
CN100568206C
CN100568206C CNB2006800101519A CN200680010151A CN100568206C CN 100568206 C CN100568206 C CN 100568206C CN B2006800101519 A CNB2006800101519 A CN B2006800101519A CN 200680010151 A CN200680010151 A CN 200680010151A CN 100568206 C CN100568206 C CN 100568206C
Authority
CN
China
Prior art keywords
snoop
cache
address
filter
register
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
Application number
CNB2006800101519A
Other languages
English (en)
Chinese (zh)
Other versions
CN101189590A (zh
Inventor
M·A·布鲁莫希
A·G·加拉
V·萨拉普拉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Intel Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101189590A publication Critical patent/CN101189590A/zh
Application granted granted Critical
Publication of CN100568206C publication Critical patent/CN100568206C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods
    • G06F12/0822Copy directories
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/50Control mechanisms for virtual memory, cache or TLB
    • G06F2212/507Control mechanisms for virtual memory, cache or TLB using speculative control
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
CNB2006800101519A 2005-03-29 2006-03-17 使用流寄存器过滤监听请求的方法和装置 Expired - Fee Related CN100568206C (zh)

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
CN101189590A CN101189590A (zh) 2008-05-28
CN100568206C true CN100568206C (zh) 2009-12-09

Family

ID=37053890

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006800101519A Expired - Fee Related CN100568206C (zh) 2005-03-29 2006-03-17 使用流寄存器过滤监听请求的方法和装置

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 (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104583974A (zh) * 2012-08-17 2015-04-29 华为技术有限公司 减少的可扩展缓存目录

Families Citing this family (40)

* Cited by examiner, † Cited by third party
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
US20080183972A1 (en) * 2007-01-26 2008-07-31 James Norris Dieffenderfer Snoop Filtering Using a Snoop Request Cache
US7937535B2 (en) * 2007-02-22 2011-05-03 Arm Limited Managing cache coherency in a data processing apparatus
ATE516542T1 (de) 2007-10-18 2011-07-15 Nxp Bv Schaltung und verfahren mit cachekohärenz- belastungssteuerung
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 英特爾股份有限公司 在處理器中之免消歧義失序載入/儲存佇列方法、微處理器、和非暫態性電腦可讀取儲存媒體
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
GB2571538B (en) 2018-02-28 2020-08-19 Imagination Tech Ltd Memory interface
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
US11593273B2 (en) * 2019-01-30 2023-02-28 Intel Corporation Management of cache use requests sent to remote cache devices

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659710A (en) * 1995-11-29 1997-08-19 International Business Machines Corporation Cache coherency method and system employing serially encoded snoop responses
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
US20030126376A1 (en) * 2002-01-02 2003-07-03 Blankenship Robert G. Cache coherency arrangement to enhance inbound bandwidth
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
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

Family Cites Families (18)

* Cited by examiner, † Cited by third party
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
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
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
US7472231B1 (en) * 2001-09-07 2008-12-30 Netapp, Inc. Storage area network data cache
US6829665B2 (en) 2001-09-28 2004-12-07 Hewlett-Packard Development Company, L.P. Next snoop predictor in a host controller
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

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5659710A (en) * 1995-11-29 1997-08-19 International Business Machines Corporation Cache coherency method and system employing serially encoded snoop responses
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
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
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
US20030126376A1 (en) * 2002-01-02 2003-07-03 Blankenship Robert G. Cache coherency arrangement to enhance inbound bandwidth

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104583974A (zh) * 2012-08-17 2015-04-29 华为技术有限公司 减少的可扩展缓存目录
CN104583974B (zh) * 2012-08-17 2017-08-04 华为技术有限公司 减少的可扩展缓存目录

Also Published As

Publication number Publication date
US7392351B2 (en) 2008-06-24
WO2006104747A2 (en) 2006-10-05
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
US20080244194A1 (en) 2008-10-02
WO2006104747A3 (en) 2007-12-21

Similar Documents

Publication Publication Date Title
CN100568206C (zh) 使用流寄存器过滤监听请求的方法和装置
US8255638B2 (en) Snoop filter for filtering snoop requests
US8103836B2 (en) Snoop filtering system in a multiprocessor system
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
JP2008535093A5 (https=)
US7617366B2 (en) Method and apparatus for filtering snoop requests using mulitiple snoop caches
US11321248B2 (en) Multiple-requestor memory access pipeline and arbiter
US6751720B2 (en) Method and system for detecting and resolving virtual address synonyms in a two-level cache hierarchy
US8234456B2 (en) Apparatus and method for controlling the exclusivity mode of a level-two cache
US8015364B2 (en) Method and apparatus for filtering snoop requests using a scoreboard
US20010049742A1 (en) Low order channel flow control for an interleaved multiblock resource
US20250390432A1 (en) Cache coherency management in multi-level coherent system
Blumrich et al. Exploring the architecture of a stream register-based snoop filter

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: INTEL CORP .

Free format text: FORMER OWNER: INTERNATIONAL BUSINESS MACHINES CORPORATION

Effective date: 20130522

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20130522

Address after: American California

Patentee after: Intel Corporation

Address before: American New York

Patentee before: International Business Machines Corp.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20091209

Termination date: 20160317

CF01 Termination of patent right due to non-payment of annual fee