CN1110755C - 共享高速缓冲存储数据的方法和系统 - Google Patents
共享高速缓冲存储数据的方法和系统 Download PDFInfo
- Publication number
- CN1110755C CN1110755C CN98105763A CN98105763A CN1110755C CN 1110755 C CN1110755 C CN 1110755C CN 98105763 A CN98105763 A CN 98105763A CN 98105763 A CN98105763 A CN 98105763A CN 1110755 C CN1110755 C CN 1110755C
- Authority
- CN
- China
- Prior art keywords
- data
- processing unit
- cache memory
- predictive
- output device
- 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/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30003—Arrangements for executing specific machine instructions
- G06F9/3004—Arrangements for executing specific machine instructions to perform operations on memory
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Multi Processors (AREA)
Abstract
披露了用于对数据处理系统中从处理单元推测性提供数据到智能输入/输出装置的高速缓冲存储数据进行的方法和系统。根据本发明的方法和系统,一个数据处理系统包括至少一个处理单元(每个至少有一个高速缓冲存储器)和至少一个智能输入/输出装置。为响应由数据处理系统中的智能输入/输出装置的数据请求,一个干预响应从有被请求的数据的数据处理系统中的一个处理单元发出。然后,在从数据处理系统中的所有处理单元的组合响应返回这个处理单元之前被请求的数据从这个处理单元中的高速缓冲存储器中读出。
Description
发明背景
一般地说,本发明涉及用于共享高速缓冲存储数据的方法和系统。具体地说,它涉及用于共享在数据处理系统中处理单元和输入/输出装置之间的高速缓冲存储数据的方法和系统。更具体地说,本发明涉及用于在数据处理系统中从处理单元推测性地提供(sourcing)高速缓冲存储数据到智能输入/输出装置的方法和系统。
背景技术
一个数据处理系统至少包括一个处理单元、一个系统存储器以及各种各样的输入/输出装置。一个处理单元可包括有一些用于执行程序指令的多重寄存器和执行单元的处理器核心。另外,处理单元还可能有一个或多个主高速缓冲存储器(即,第一级或者说L1高速缓冲存储器),例如指令高速缓冲存储器和/或数据高速缓冲存储器。它们用高速存储器来实现。此外,处理单元还可能包括另外的高速缓冲存储器,一般被称为次高速缓冲存储器(即,第二级或者说L2高速缓冲存储器),用于支持如上所述的高速缓冲存储器。
一般,不经过系统存储器在系统总线上从一个处理单元向另一个处理单元或向一个输入/输出装置传送数据被称为干预。干预协议通过减少事例数目来改进系统的性能。在事例中,系统存储器必须被访问以满足系统内的任何一个处理单元或输入/输出装置的读或有修改意图的读(RWITM)的请求。
概括地说,当有一个由输入/输出装置提出的待处理的读/RWITM请求时,附在数据总线上且在其高速缓冲存储器中处理被请求的数据的其他处理单元中的任何一个都能将数据提供(source)至请求的I/O装置中。在传统协议下,高速缓冲存储器中有驻留数据的处理单元在从其高速缓冲存储器发出提供数据的数据总线请求之前将等待来自系统中所有处理单元的“组合的”响应。
同时,传统干预协议还考虑到“再试”机理,而任何能被干预满足的读/RWITM请求也能被从任何一个在系统总线上的处理单元的“再试”所中断。如果在适当建立规则的条件下一个处理单元用干预来响应,而另一个处理单元用“再试”来响应,则再试响应该自动地使干预响应无效。结果,如果存在一个在该系统总线上的任何一个处理单元的待处理的再试请求,则含有数据的处理单元将不发出数据总线请求。
因此,期望提供一种改进的提供数据(sourcing)方案,其中,干预数据将以很少为来自数据处理单元中的任何处理单元的“再试”所影响的方式被提供到请求的输入/输出装置。
发明内容
鉴于上述,本发明的目的是提供一种改进的用于共享高速缓冲存储数据的方法和系统。
本发明的另一个目的是提供一种改进的用于共享在数据处理系统中的处理单元和输入/输出装置之间的共享缓冲存储数据的方法和系统。
本发明的另一个目的是提供一种改进了的在数据处理系统中从一个处理单元推测性地提供高速缓冲存储数据至一个输入/输出装置的方法和系统。
根据本发明的方法和系统,一个数据处理系统包含至少一个处理单元,和至少一个输入/输出装置,每个处理单元至少有一个高速缓冲存储器。为响应在数据处理系统中的一个输入/输出装置的数据请求,从一个有请求数据的数据处理系统中的处理单元发出的一个干预响应。在数据处理系统中的所有处理单元的组合响应返回到该处理单元之前,所请求的数据从这个处理单元中的高速缓冲存储器中被读出。
在下面详细书写的说明中,本发明的所有目的、特征和优点将成为明显的。
附图说明
当结合附图阅读时参照下面说明性的实施例的详细叙述可以很好地理解本发明的本身以及最佳的使用方式、进一步的目的和优点。附图有:
图1是一个数据数理系统方框图,其中本发明可加以应用。
图2是为说明现有技术提供方案的一个示例性数据处理系统方框图。
图3是一个高级逻辑流程图,用以说明在根据本发明的最佳实施例中,对在数据处理系统中从处理单元推测性地提供高速缓冲存储数据到输入/输出装置的方法。
具体实施方式
本发明可以运用于任何至少有一个高速缓冲存储器的数据处理系统。还可理解到,本发明的特征可应用于各种各样的其各自的处理器都有一个主高速缓冲存储器和一个次高速缓冲存储器的多处理器的数据处理系统。
现在参照附图,具体地说是图1,那里描绘了一个本发明可加以应用的数据处理系统10的方框图。数据处理系统10包括多中央处理器(CPU)11a-11n,而CPU11a-11n中的每一个都含有一个主高速缓冲存储器。如所示出的,CPU11a含有主高速缓冲存储器12a,而CPU11n含有主高速缓冲存储器12n。主高速缓冲存储器12a-12n中的每一个都可以是一分区段高速缓冲存储器。
CPU11a-11n中的每一个都分别地联到次高速缓冲存储器13a-13n中的每一个上。次高速缓冲器13a-13n中的每一个也可是一分区段高速缓冲器。CPU11a-11n,主高速缓冲存储器12a-12n和次高速缓冲存储器13a-13n经互连15互相连接并接到系统存储器14上。互连15可以是总线或开关。附到互连15上的还有智能输入/输出装置16a-16n。这些智能输入/输出装置16a-16n有能力起动数据传送,对系统存储器14进行数据输入和输出。智能输入/输出装置16a-16n可包括各种各样的转接器,用于经过网络(如内联式网络或互联式网络)同另外的数据处理系统进行通信。
按本发明的最佳实施例,CPU、主高速缓冲存储器和次高速缓冲存储器如图1所描绘的CPU11a、主高速缓冲存储器12a和次高速缓冲存储器13a可以共同地被称为处理单元。虽然数据处理系统的优选实施例在图1中加以说明,但应明白本发明可以在各种系统配置中被实施。例如,CPU11a-11n中的每一个可以有多于2级的高速缓冲存储器。
现在参看表I,在那里举例说明在现有技术的干预协议下建立的来自一个处理单元的许多相关响应。在多处理器数据处理系统中的一个输入/输出装置作出系统总线上的读或修改意图读(RWITM)请求后,系统中的任何处理单元在探测后可以发出一个按照表I的响应。
表I
相关响应 | 优选级 | 定义 |
000 | - | 保留的 |
001 | 3 | 共享的干预 |
010 | - | 保留的 |
011 | - | 保留的 |
100 | 1 | 再试 |
101 | 2 | 修改的干预 |
110 | 4 | 共享的 |
111 | 5 | 零或清除 |
如表I所描绘的,相关响应采取3位探测响应信号的形式,并有每个相关响应的定义说明。这些信号被编码以表示在地址占有后的探测结果。另外,优选级值同每个响应相关联系,以便当将被返回到在系统总线上的所有处理单元和输入/输出装置的单独探测响应信号进行公式化时允许系统逻辑决定哪个相关响应应当取得优选权。例如,如果一个处理单元具有共享的干预响应(优选级3),而另一个处理单元响应再试响应(优选级1),则有再试响应的那个处理单元将取得优选权,于是系统逻辑将返回再试相关响应到请求处理单元以及附在系统总线上的所有其他处理单元。这个系统逻辑可以驻留在系统中的各种各样的部件里,例如系统控制单元或存储器控制器。
若干熟知的机构可被用于查明哪个高速缓冲存储器(一个处理单元的)是在被请求的数据的“拥有者”,因而有资格提供这些数据。在现有技术的MESI协议下,如果一高速缓冲存储器保持在“修改的”或独有的状态下的所有请求的数据,这就意味着该高速缓冲存储器是系统中唯一的含有有效数据拷贝的,并明显地是其拥有者。然而,如果一个高速缓冲存储器保持在“共享的”状态下的所请求数据,这就意味着这些数据也必定保持在该系统中的至少另一个高速缓冲存储器内。于是,有可能2个或更多的高速缓冲存储器中的任何一个都能提供这些数据。在这种情况下,可得到若干选择方案去确定哪个高速缓冲存储器应执行提供数据。
现在参看图2,它描绘了一示例性数据处理系统的方框图,用来说明在现有技术下的提供方案。如图所示,例如,智能输入/输出装置24在系统总线23上希望作出读或RWITM请求,而处理单元21的L2高速缓冲存储器含有被输入/输出装置24所请求的数据。此外,处理单元20中的L2高速缓冲存储器处在“无效”状态,而处理单元21中的L2高速缓冲存储器处在“修改”状态,并且处理单元22中的L2高速缓冲存储器不含有该被请求的数据。接着每个处理单元的各自的L2高速缓冲存储器控制器将采取一系列动作,以便执行现有技术所提供的沅干预。
在输入/输出装置24作出读/RWITM请求后,该读/RWITM请求从系统总线23上被处理单元21、处理单元22和处理单元23“窥探”。在处理单元21-23中的每一个中进行L2高速缓冲存储器目录检查,以确定所请求的数据是否驻留在其L2高速缓冲存储器中。因为处理单元21有所请求的数据,一个干预响应会被处理单元21发出,并且处理单元21中的有限状态机器会被发送以控制下面的动作。如果在处理单元21的L2高速缓冲存储器中的数据处在“修改的”状态,一修改干预相关响应会由处理单元21发出。另外,如果在处理单元21的L2高速缓冲存储器中的数据处在“共享的”或“独有的”状态,一共享干预相关响应会被处理单元21发出。因为处理单元20中的L2高速缓冲存储器处在“无效的”状态,处理单元22中的L2高速缓冲存储器不含有被请求的数据,所以处理单元20和22会发出零相关响应。
在干预响应发出后,处理单元21对于组合响应是悬而未决的。在该例子中,组合响应基本上包括来自处理单元21本身和来自处理单元20、22以及输入/输出装置24的相关响应。如果返回的组合响应是被修改的干预相关响应,处理单元21可开始从其L2高速缓冲存储器提供请求的数据。在已建立的干预协议下,如果处理单元20和/或处理单元22不管什么理由请求再试,提供数据必须让与“再试”请求(即,提供数据时序将不再继续)。例如,处理单元22可处在探测排队忙状态。
如果自探测作用开始以来,处理单元21的L2高速缓冲存储器中的数据还未被修改或未在L1高速缓冲存储器中驻留(即不包含L1),处理单元21可开始向系统总线仲裁器作出系统总线请求(典型地,所请求的数据在系统总线请求能开始前必须由L2高速缓冲存储器控制器读到一缓冲器里)。否则,在任何系统总线请求作出之前处理单元21的L1高速缓冲存储器将被冲洗而变得失效(即,迫使L1高速缓冲存储器将任何修改数据“压回”到L2高速缓冲存储器并使L1高速缓冲存储器中的拷贝无效)。但是,如果处理单元21的L1高速缓冲存储器处在“共享的”状态,只是在作出任何数据总线请求之前仅要求L1高速缓冲存储器无效。
然后处理单元21等待系统总线授权返回。实际对输入/输出装置24的数据提供将在数据总线授权被收到后开始。一旦提供数据已完成,处理单元21的L2高速缓冲存储器将从“修改的”状态变到对于读请求的“共享的”状态和对于RWITM请求的“无效的”状态。在处理单元20和22的L2高速缓冲存储器中没有任何状态变化。
现在参看图3,在那里描绘按照本发明的最佳实施例的抽象提供数据处理系统中从处理单元到输入/输出装置的高速缓冲存储器数据的高级逻辑流程图。在方框30开始。如方框31所示,一个读/RWITM请求由系统总线被系统内的所有处理单元探测。如方框32所示,L2高速缓冲存储器目录检查,由每个处理单元进行以判断所请求的数据是否驻留在它的L2高速缓冲存储器中。如方框33所示,由所有不具有所请求的数据的那些处理单元(如图2的处理单元20和22)发出一个零相关响应,并且该过程在方框99退出。另一方面,由具有所请求的数据的一个处理单元(如图2的处理单元21)发出一个干预相关响应,如主框34所示。
在干预相关响应发出后,干预处理单元必须执行某些高速缓冲存储器内务处理任务,如方框35所示。这些任务包括:如果在L1高速缓冲存储器中的数据拷贝已被修改,冲洗在干预处理单元的L1高速缓冲存储器中的数据拷贝并使之无效,或者如果在L1高速缓冲存储器中的数据拷贝还未被修改,只简单地使干预处理单元的L1高速缓冲存储器中的数据拷贝无效。
接着,从干预处理单元的L2高冲缓冲存储器的读出的被请的数据最好被送到一个缓冲器,并向系统总线仲裁器请求系统数据总线,如方框36所示。就系统数据总线是否已被授权进行判断,如方框37所示。如果系统数据总线还未被授权,就进行另一个判断,就组合相关响应是否已返回,如方框38所示。如果组合相关响应还未返回,过程返回到方框37。
但是,如果系统总线已被授权,从干预处理提供被请求数据通过驱动所请求的数据到系统总线开始,如方框39所示。就组合相关响应是否已在这点返回做另一个裁决,如方框40所示。如果组合相关响应还未返回,过程将保持在继续提供被请求的数据到系统总线的同时等待组合相关响应返回。
在组合相关响应已返回后,就组合相关响应是否是“再试”做出判决,如方框41所示。如果组合相关响应是再试,则若系统总线还未被授权,系统总线请求(从方框36)将被取消,或者说提供所请求的数据将立即终止,如方框42所示。即使在这点提供数据已完成,结果也会由于再试相关响应而被放弃。相反,如果组合相关响应不是再试,提供所请求数据将继续,如果提供数据尚未完成要继续到其完成为止。最后,在干预处理单元中的L2高速缓冲存储器的状态被相应地不断修改,如方框43所示,过程在方框99退出。
如已说明的,本发明提供对数据处理系统中从处理单元抽象提供高速缓冲存储数据到智能输入/输出装置的方法。特别地,本发明的公开介绍了一种新颖的干预实施,其中所请求的数据在组合相关响应返回前从干预单元的L2高速缓冲存储器被读出。
本发明有明显的超过先前技术的性能优势,这因为总线上的读/RWITM请求和组合响应的抽样之间的延迟可能是若干个系统总线时钟周期。因此,由于允许所请求的数据在组合相关响应被收到之前从干预处理单元的L2高速缓冲存储器读出,干预等待时间被极大地减少,于是系统的总性能相当大地被改进。
虽然本发明已参照最佳实施例作了最佳地展示和说明,但本专业人员应当理解,在不脱离本发明的精神和范围的前提下,可作出各种各样的形式上和细节上的变化。
Claims (16)
1.一种用于在数据处理系统中从处理单元推测性地提供高速缓冲存储数据到输入/输出装置的方法,所说的处理单元至少包括一个高速缓冲存储器,所说的方法由这些步骤组成:
为了响应由所说的数据处理系统中所说的输入/输出装置的数据请求,由有所说的被请求的数据的处理单元发出干预响应;
在从所说的数据处理系统中的所有处理单元来的组合响应返回到所说的处理单元之前,从所说的处理单元中的高速缓冲存储器读所说的所请求的数据。
2.根据权利要求1的在数据处理系统中从处理单元推测性地提供高速缓冲存储数据的方法,其特征是读步骤进一步包括从所说处理单元中的高速缓冲存储器由缓冲区控制器读所说的所请求的数据的步骤。
3.根据权利要求1的在数据处理系统中从处理单元推测性地提供高速缓冲存储数据的方法,其特征是读步骤进一步包括从所说的处理单元中的高速缓冲存储器读所说的所请求的数据到缓冲器的步骤。
4.根据权利要求1的在数据处理系统中从处理单元推测性地提供高速缓冲存储数据的方法,其特征是所说的数据请求包括读请求或有修改意图的读请求。
5.根据权利要求1的在数据处理系统中从处理单元推测性地提供高速缓冲存储数据的方法,其特征是所说的干预响应是修改的干预响应或共享的干预响应。
6.根据权利要求1的在数据处理系统中从处理单元推测性地提供高速缓冲存储数据的方法,其特征是所说的方法进一步包括,如果所说的返回的组合响应是再试则停止所说的读步骤的步骤。
7.根据权利要求1的在数据处理系统中从处理单元推测性地提供高速缓冲存储数据的方法,其特征是所说的方法进一步包括在返回所说的组合响应前请求系统总线,由所述处理单元提供所说的所请求的数据的步骤。
8.根据权利要求7的在数据处理系统中从处理单元推测性地提供高速缓冲存储数据的方法,其特征是所说的方法进一步包括在所说的组合响应返回前由所说的处理单元提供所说的所请求的数据的步骤。
9.一种处理单元,具有能在数据处理系统中推测性地提供数据至输入/输出装置的高速缓冲存储器,所说的处理单元包括:
这样的设备,用于响应所说数据处理系统中的所说输入/输出装置对所说的被请求的数据的请求,从有所请求的数据的所说数据处理系统中的处理单元发出干预响应;
以及这样的设备,其用于在来自所有处理单元的组合响应返回到所说的处理单元之前从所说的处理单元中的高速缓冲存储器读所说的所请求的数据。
10.根据权利要求9的具有能推测性地提供数据至输入/输出装置的高速缓冲存储器的处理单元,其特征是所说的用于读的设备是高速缓冲控制器。
11.根据权利要求9的具有能推测性地提供数据至输入/输出装置的高速缓冲存储器的处理单元,其特征是所说的用于读的设备进一步包括用于从所说的处理单元中的高速缓冲存储器将所说的被请求的数据读到一个缓冲器的装置。
12.根据权利要求9的具有能推测性地提供数据至输入/输出装置的高速缓冲存储器的处理单元,其特征是所说的数据请求包括读请求或有修改意图的读请求。
13.根据权利要求9的具有能推测性地提供数据至输入/输出装置的高速缓冲存储器的处理单元,其特征是来自所说的处理单元的所说的干预响应是修改的干预响应或共享的干预响应。
14.根据权利要求9的具有能推测性地提供数据至输入/输出装置的高速缓冲存储器的处理单元,其特征是所说的处理单元进一步包括一个装置,用于如果所说的返回的组合响应是“再试”,则停止所说的读。
15.根据权利要求9的具有能推测性地提供数据至输入/输出装置的高速缓冲存储器的处理单元,其特征是所说的处理单元进一步包括在返回所说的组合响应前请求系统总线,由所述处理单元提供所说的所请求的数据的装置。
16.根据权利要求15的具有能推测性地提供数据至输入/输出装置的高速缓冲存储器的处理单元,其特征是所说的处理单元进一步包括在所说的组合响应返回之前由所说的处理单元提供所说的所请求的数据的装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US834,117 | 1977-09-19 | ||
US83411797A | 1997-04-14 | 1997-04-14 | |
US834117 | 1997-04-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1197956A CN1197956A (zh) | 1998-11-04 |
CN1110755C true CN1110755C (zh) | 2003-06-04 |
Family
ID=25266163
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN98105763A Expired - Fee Related CN1110755C (zh) | 1997-04-14 | 1998-03-23 | 共享高速缓冲存储数据的方法和系统 |
Country Status (6)
Country | Link |
---|---|
JP (1) | JPH10301851A (zh) |
KR (1) | KR100277446B1 (zh) |
CN (1) | CN1110755C (zh) |
CA (1) | CA2231361A1 (zh) |
SG (1) | SG68034A1 (zh) |
TW (1) | TW386192B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW480404B (en) * | 1999-08-31 | 2002-03-21 | Ibm | Memory card with signal processing element |
JP5082479B2 (ja) * | 2007-02-08 | 2012-11-28 | 日本電気株式会社 | データ一貫性制御システム及びデータ一貫性制御方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5191649A (en) * | 1990-12-21 | 1993-03-02 | Intel Corporation | Multiprocessor computer system with data bus and ordered and out-of-order split data transactions |
US5572702A (en) * | 1994-02-28 | 1996-11-05 | Intel Corporation | Method and apparatus for supporting read, write, and invalidation operations to memory which maintain cache consistency |
US5579504A (en) * | 1988-06-27 | 1996-11-26 | Digital Equipment Corporation | Multi-processor computer system having shared memory, private cache memories, and invalidate queues having valid bits and flush bits for serializing transactions |
US5581729A (en) * | 1995-03-31 | 1996-12-03 | Sun Microsystems, Inc. | Parallelized coherent read and writeback transaction processing system for use in a packet switched cache coherent multiprocessor system |
US5613153A (en) * | 1994-10-03 | 1997-03-18 | International Business Machines Corporation | Coherency and synchronization mechanisms for I/O channel controllers in a data processing system |
-
1997
- 1997-11-04 TW TW086116363A patent/TW386192B/zh not_active IP Right Cessation
-
1998
- 1998-01-19 KR KR1019980001384A patent/KR100277446B1/ko not_active IP Right Cessation
- 1998-03-09 CA CA002231361A patent/CA2231361A1/en not_active Abandoned
- 1998-03-23 CN CN98105763A patent/CN1110755C/zh not_active Expired - Fee Related
- 1998-03-25 SG SG1998000619A patent/SG68034A1/en unknown
- 1998-04-08 JP JP10096007A patent/JPH10301851A/ja active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5579504A (en) * | 1988-06-27 | 1996-11-26 | Digital Equipment Corporation | Multi-processor computer system having shared memory, private cache memories, and invalidate queues having valid bits and flush bits for serializing transactions |
US5191649A (en) * | 1990-12-21 | 1993-03-02 | Intel Corporation | Multiprocessor computer system with data bus and ordered and out-of-order split data transactions |
US5572702A (en) * | 1994-02-28 | 1996-11-05 | Intel Corporation | Method and apparatus for supporting read, write, and invalidation operations to memory which maintain cache consistency |
US5613153A (en) * | 1994-10-03 | 1997-03-18 | International Business Machines Corporation | Coherency and synchronization mechanisms for I/O channel controllers in a data processing system |
US5581729A (en) * | 1995-03-31 | 1996-12-03 | Sun Microsystems, Inc. | Parallelized coherent read and writeback transaction processing system for use in a packet switched cache coherent multiprocessor system |
Also Published As
Publication number | Publication date |
---|---|
KR100277446B1 (ko) | 2001-01-15 |
CA2231361A1 (en) | 1998-10-14 |
CN1197956A (zh) | 1998-11-04 |
JPH10301851A (ja) | 1998-11-13 |
TW386192B (en) | 2000-04-01 |
SG68034A1 (en) | 1999-10-19 |
KR19980079625A (ko) | 1998-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5737757A (en) | Cache tag system for use with multiple processors including the most recently requested processor identification | |
US5623632A (en) | System and method for improving multilevel cache performance in a multiprocessing system | |
JP3871305B2 (ja) | マルチプロセッサ・システムにおけるメモリ・アクセスの動的直列化 | |
US6189078B1 (en) | System and method for increasing data transfer throughput for cache purge transactions using multiple data response indicators to maintain processor consistency | |
US7024521B2 (en) | Managing sparse directory evictions in multiprocessor systems via memory locking | |
US20050144399A1 (en) | Multiprocessor system, and consistency control device and consistency control method in multiprocessor system | |
US20050154831A1 (en) | Source request arbitration | |
US6920532B2 (en) | Cache coherence directory eviction mechanisms for modified copies of memory lines in multiprocessor systems | |
CN1758229A (zh) | 异构多核微处理器局部空间共享存储方法 | |
JP2005519391A (ja) | 共有ベクトルの増加を伴わないdsmマルチプロセッサシステムにおけるキャッシュコヒーレンスのための方法およびシステム | |
US8560803B2 (en) | Dynamic cache queue allocation based on destination availability | |
US8706972B2 (en) | Dynamic mode transitions for cache instructions | |
WO1999035578A1 (en) | Method for increasing efficiency in a multi-processor system and multi-processor system with increased efficiency | |
US6078981A (en) | Transaction stall technique to prevent livelock in multiple-processor systems | |
US5822765A (en) | System and method for resolving contention arising from execution of cache coherency operations in a multiple cache computer system | |
US6035376A (en) | System and method for changing the states of directory-based caches and memories from read/write to read-only | |
US6857051B2 (en) | Method and apparatus for maintaining cache coherence in a computer system | |
JP3759193B2 (ja) | アトミック動作バス・システム | |
CN1110755C (zh) | 共享高速缓冲存储数据的方法和系统 | |
US5924118A (en) | Method and system for speculatively sourcing cache memory data prior to upstream cache invalidation within a multiprocessor data-processing system | |
JP2006079218A (ja) | メモリ制御装置及び制御方法 | |
US7502892B2 (en) | Decoupling request for ownership tag reads from data read operations | |
JPH06282528A (ja) | データ転送方法及びそのシステム | |
US20220382703A1 (en) | Sending a request to agents coupled to an interconnect | |
US8108618B2 (en) | Method and apparatus for maintaining memory data integrity in an information handling system using cache coherency protocols |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C06 | Publication | ||
PB01 | Publication | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C19 | Lapse of patent right due to non-payment of the annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |