CN1052550C - 对高速缓冲存储器探测粒度的动态管理 - Google Patents

对高速缓冲存储器探测粒度的动态管理 Download PDF

Info

Publication number
CN1052550C
CN1052550C CN94116431A CN94116431A CN1052550C CN 1052550 C CN1052550 C CN 1052550C CN 94116431 A CN94116431 A CN 94116431A CN 94116431 A CN94116431 A CN 94116431A CN 1052550 C CN1052550 C CN 1052550C
Authority
CN
China
Prior art keywords
data
mentioned
address
access
equipment
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
CN94116431A
Other languages
English (en)
Other versions
CN1111774A (zh
Inventor
R·K·阿里米利
D·G·格雷戈尔
A·M·杨斯
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.)
International Business Machines 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 CN1111774A publication Critical patent/CN1111774A/zh
Application granted granted Critical
Publication of CN1052550C publication Critical patent/CN1052550C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

一种系统和方法根据直接存储器存取式I/O设备的状态来动态地在段与页面之间改变探测比较的粒度,而所述I/O设备则在与CPU时钟比较时异步地向系统总线上的设备写。通过利用页面地址粒度,由于在探测比较期间不使用可能无效的段地址,所以不会产生错误的探测命中。由于与CPU时钟相异步操作的设备已经请求了段地址,所以该地址在CPU时钟确定探测比较发生时会处于过渡状态。一旦上述异步设备变为不活动的,则系统会自动返回至页面和段地址的探测比较粒度。

Description

对高速缓冲存储器探测粒度的动态管理
本发明涉及到提供计算机系统内的高速缓冲存储器的协调性,所说的计算机系统带有中央处理器(CPU)以及通过“探测”(snooping)来监控该系统总线的其它设备。具体地说,通过改变用于比较和判别数据的内存地址的准则来保持异步总线之间的协调性,而所述之数据则为一第一设备所拥有并且为另一设备所请求。
带有异步总线和探测协议的一般多高速缓冲存储器系统的问题在于:存在着写入高速缓冲存储器的数据地址无效的一个时间间隔。如果在这一时间间隔内(因更新和探测比较之间的异步性)产生探测比较,那么,错误的响应会引起性能降低或系统内不正确的数据。这种错误的响应可能包括虚假的探测命中或未被识别的真实的探测命中。具体地说,由于向包括在输入/输出通道控制器(IOCC)之内的高速缓冲存储器的写入或从该高速缓冲存储器中的读取的输入/输出(I/O)设备的异步特性在上述I/O设备终止与一个存储器段的交互作用并开始与另一存储器段的交互作用时会存在一个时间间隔。因此,用于探测比较的段地址会处于过渡状态,从而,如果在上述地址过渡期间内对系统进行探测,那么,就会产生错误的探测命中或无法探测到监控命中。
美国专利第5119485号说明了一种通常的用于保持高速缓冲存储器协调性的方案,此方案涉及到使来自另一总线主控设备的编码控制信号与一总线接口控制电路联接起来以便有选择地使数据总线能进行控测。美国专利第5072369号说明了跨越不同总线映射地址以确保协调性。也就是说,一接口电路将所选择的总线地址映射到另一总线上的相应地址,从而,当一第一总线上的总线主控设备试图读或者写时,一总线接口电路通过存取上述第二总线的存储器中的相应地址而产生响应。
美国专利第5025365号说明了保持总速缓冲存储器协调性的另一种方法,这种方法具有允许在不同时间间隔内更新每个高速缓冲存储器的分布式目录。这就会在两次更新之间的时间间隔内引起目录的不一致性。将一种系统总线协议处理成能提供周新生的校正操作以通过更新所述分布式目录来保持数据的协调性。美国专利第5193170号包括一CPU、随机存取存储器(RAM)和只读存储器(ROM)。在ROM被映射至RAM方式的过程中完成一次探测操作以探测任何的CPU写操作,而且,若探测到CPU的写操作,则将高速缓冲存储器无效的信号送给CPU。美国专利第4945486号包括一系统处理器,这些处理器通过一共享数据总线与各个产生同步请求信号的处理器相连接。一同步控制器在同步总线上广播上述处理器的状态,因而允许启用对该总线的探测去控制通信。
应该注意到,通常的系统都使用了各种技术如映射、分布式目录、同步处理器、允许位等来保持高速缓冲存储器的协调性。这些通常的系统都解决了同步系统中高速缓冲存储器的协调性问题,但都未提及当系统中至少有两个总线为异步时所面临的更多问题。所以,可以看出,重定义系统中现有参数以便在不需要附加复杂逻辑情况下在异步总线之间提供高速缓冲存储器协调性的系统是十分优越的。
概括地说,本发明在某些时候对探测比较即判断是否业已出了探测命中使用了页面地址而不是段地址。
本文所述用的存储器的页面是指一组存储器段,其中,一个页面可以是4K字节,一个段可以是32字节,因此,每个页面有128个段。存储器地址包括页面地址和段地址。一般情况下,系统在段层次上保持高速缓冲存储器的一协调性,即:如果页面地址与段地址均相同,则认为产生了一次窥探命中。但是,本发明能根据在与CPU时钟作比较时异步进行的直接存储器存取(DMA)操作的状态(活动地或不活动的)来动态地在段与页面之间改变探测比较的粒度(granularity)。通过利用页面地址的粒度,本发明能确保不会产生错误的探测命中,这是因为,在探测比较过程中不使用可能无效的段地址。
在总线主控设备请求页面地址时,通过抑制该总线主控设备而将DMA操作变成不活动的,并且与CPU时钟同步地更新IOCC探测比较地址。这样,如果总线主控设备请求的是页面地址处的数据而不是IOCC当前正在使用的数据,那么,本发明的数据处理系统就会自动地将该总线主控设备设置成不活动的状态。
当DMA操作活动时,所述总线主控设备会异步地与包含在诸如IOCC之类设备内的1级(L1)高速缓冲存储器进行交互作用。这就会使IOCC异步地更新用于探测比较的地址,因为,上述总线主控设备控制着独立于CPU时钟的命令时钟。依照本发明,IOCC在DMA活动期间只在页面地址基础上窥探系统总线。
通过利用页面粒度,若其它设备向与DMA总线主控设备当前正在存取的段处于同一页面内的存储器段请求数据,则会出现探测命中。在这种情况下,IOCC通过发出一ARTRY_信号而抑制其它设备直至DMA的活动完成。一旦DMA操作结束或暂时不活动,那么就允许进行所请求的存储器存取。在所述总线主控设备向存储器写的情况下,正在请求的设备将存取已更新的拷贝。而且,当DMA操作不活动时,IOCC所占有的数据的地址是静态的,从而不存在能使段地址无效的过渡态并且所述探测比较的粒度会回复至段地址级上。
具体地说,假设I/O总线主控设备正在从IOCC高速缓冲存储器中读取数据,即该总线主控设备请求各种存储器地址直至所有的数据都已被读取或出现某些类型的中断条件。在DMA活动期间,当其它设备请求处于和总线主控设备正在存取的数据在同一页面上的段地址之内的数据时,该总线主控设备会在探测比较操作过程中使该探测比较地址的段部分得以更新。在这种情况下,会发出一ARTRY_信号以控制上述正在请求的设备直至所述总线主控设备结束活动,从而保持了协调性。
所以,由于存储器地址的比较是在页面地址之间而不是在段地址之间进行的,因而本发明的数据处理系统将不会探测不到可能的探测命中。通过这种方式可以避免存储器段之间的过渡过程中的存储器地址之段部分的可能的无效性并确保高速缓冲存储器的协调性。
如上所述,如果DMA式总线主控设备所请求的存储器地址跨越了页面边界,处理就会中断并且探测比较会被复位成与CPU时钟同步,从而保持了协调性。
所以,依照前述概略说明,通过下述参照附图的说明和后附权利要求,本发明的目的、特征和优点对本领域的普通技术人员来说会变得更加明确,在附图中:
图1是可以使用本发明的数据处理系统的方框图;
图2显示了时钟信号,它说明了从I/O总线上的总线主控设备向一输入/输出控制芯片的数据写操作的异步特征;
图3是本发明所使用的逻辑组件的概略图,所说的逻辑组件是本发明用探测协议向系统内提供高速缓冲存储器的协调性的;
图4显示了存储器的页面,每一页面均带有多个段,I/O总线主控设备的DMA式设备可对这些段进行写操作;
图5是示意性的存储器地址,它显示了识别存储器存储单元的页面,段及字节偏移量所需的细目段;
图6显示了段地址实际位的实例,该段地址的实际位是可以加以改变的并负责发明所要解决的问题;以及
图7是显示了多个32字节的存储器段的单个4字节字的偏移部分。
参见图1,它显示了可以使用本发明的数据处理系统的方框图,其中,参照标号1是内部带有1级(L1)高速缓冲存储器3的中央处理器。该CPU可以是几种市售处理器中的任何一种,如PowerPC601微处理器(PowerPC是IBM公司的商标)。系统总线5将CPU1与输入/输出通道控制器7和存储器子系统11连接起来,而所述存储器子系统则包括一存储器控制芯片和随机存取存储器的实际物理存储单元。IOCC 7包括一L1高速缓冲存储器9,此高速缓冲存储器具有多个存储器段10,每一个段都能存储32字节的数据。还显示了输入/输出总线13,此总线也与IOCC7相连,从而使得包括键盘、鼠标器、显示器在内的多种I/O外部设备、小型计算机系统接口(SCSI)、通信设备、总线存储器以及一种或多种可能的附加I/O总线主控设备(M.N)都能通过IOCC7与CPU1相连。应该注意,系统总线5和I/O总线13均相对于其中的数据传递的定时具有异步关系。也就是说,系统总线5由包括一时钟的CPU1所驱动,该时钟具备有第一速度,而I/O总线13则由具有自身独立时钟的特定I/O总线主控设备所驱动并控制着它与IOCC高速缓冲存储器9之间的数据传递。所以,上述两总线中的地址取样周期将异步。此外,图1中所示之数据处理系统包括一探测协议,其中,占有给定存储器段的有效(及可能修改过了的)拷贝的设备会探测系统总线5,以便确定是否有与该总线相连的任何其它设备正在请求存以数据。如果探测比较确定有其它设备正在请求数据,那么,就认为产生了探测命中,其中,占有数据的设备将执行保持协调性所需的任何操作。这些操作可能包括:使占有者的高速缓冲存储器内的数据无效;将修改过的数据写回存储器;与其它设备共享未修改的数据以及其它类似的操作。因此,IOCC7也包括探测功能,其中,监测系统总线5中包括有L1高速缓冲存储器9内的数据地址以便确定是否产生了探测命中。
在本发明的最佳实施倒中,存储器子系统11组织成页面、段及字节偏移量的层次系统。也就是说,每个存储器地址均包括一指明页面地址、段地址以及字节偏移量的部分。用PowerPC的存储器地址映射模式作为例子来说,每个存储器地址均为32位长,其中20位用于指明上述特定的页面,7位用于指明述段,5位用于指明段内的字节偏移量。每个页面包括4K字节的存储器,而每个段则存储32个字节,因此,每个4K字节的页面内有128个32字节的段。上述字节偏移量可以是变化的,但变化最好为1、4或8个字节这些数量。图5显示了存储器地址以及为每一部分(即页面、段和字节偏移量)所分配的位数。在正常探测条件下,希望存取处于存储器地址处数据的设备将图5所示的全部存储器地址装至系统总线。此后,当前占有所需要数据的设备探测系统总线并将该总线上的地址与所占有的数据的地址相比较,如果其页面与段均相同,那么就产生探测命中。这种比较是在页面及段的基础上进行的,因此,保持协调性的操作是相对可产生探测命中的单个段执行的。
图4显示了两个示意性的4K字节页面,这些页面为本发明之存储器子系统所使用以划分用于在其中存储数据的地址。这些页面21和23显示成包括标号为从0至N的多个32字节的存储器段10,其中,在一个最佳实施例中,N等于127。所述之32字节段中的每一个均显示成具有多个字节偏移量部分12(在最佳实施例中它等于8个4字节的区段)。可以看出,独立的字节偏移部分12中每一个均具有不同的地址,诸如图5所示的32位存储器地址。如上所述,正常的探测操作将比较32位地址的段和页面部分以便确定是否产生了探测命中。
图7是显示示意性32字节段10A、10B和10L的进一步分割的图,所述段中的每一个分别带有8个4字节偏移部分12、12B和12L。这些字节偏移部分标号为0至7。
本发明的数据处理系统提供了以IOCC7为中介的I/O设备20、22、24和26与存储器11之间的直接存储器存取(DMA)。这意味着,不需CPU1的任何介入就能在这些I/O设备与存储器之间传递数据。因此,如果一I/O设备被编程为从存储器子系统11中读取数据,那么,I/O设备24在开始时判断总线13的占有权,然后将对应于数据将被读取的存储器11中的存储单元的地址提供给IOCC7。IOCC将所需段的拷贝装入高速缓冲存储器9,然后允许所述I/O设备用总线13存取该拷贝。
在一个特殊的实例中,诸如SCSI设备(图1中的参照标号1)之类的DMA式I/O总线主控设备会启动一次数据传递操作,如从存储器11中读取等。该总线主控设备会判断I/O总线13的占有权。然后,该总线主控设备会为所要读取的数据向IOCC7提供一个地址并在IOCC7使用该地址且从存储器11中获得数据时用一内部命令时钟发出信号。在所述总线主控设备业已完成从对应于所提供的地址的存储器段中读取数据时,如果要读取更多的数据,那么就会向IOCC7提供另一地址,并且,上述命令时钟会限定在何时将获得数据。如前所述,上述命令时钟与指示IOCC何时执行探测比较的CPU时钟相异步。而且所述总线主控设备在要读取下部分数据之前每次改变存储器地址时周期地提供新的存储器地址并激活来自命令时钟的信号。所述命令时钟的定时是由DMA式总线主控设备决定的并与由CPU1所产生的或者由IOCC7因其它目的所使用的任何时钟信号相异步。
参照图7,它说明了总线主控设备如何请求对存储器段10A内的字节偏移量部分2的数据读取。所述总线主控设备业已将这一地址提供给IOCC7并使命令时钟产生脉冲,从而获得该数据的占有权。以后进行读取操作且所述总线主控设备可提供另一段地址例如存储器段10L的字节偏移量5。可以看出,会在32字节段10A与10L之间产生段地址转换,因此,图5所示的段地址将因来自DMA式总线主控设备的在从32字节段10A的字节偏移量2读取了数据之后的命令时钟信号而发生变化。应该认识到,本发明还适用于“流式(streaming)”数据的传递,其中,所述总线主控设备将一初始地址提供给IOCC7,然后,IOCC7在总线主控设备提供的选通脉冲信号的各个脉冲时刻将该地址加1。图7显示了所述流式数据的实例,当总线主控设备已经请求了段10A的字节偏移量7且IOCC7将上述初始地址增加至段10B的字节偏移量0时,就会导致产生段转换。
图2是命令时钟信号的实例,DMA式总线主控设备在IOCC7的高速缓冲存储器9内的存取操作可以使用该命令时钟信号。对每个周期来说,总线主控设备均已向IOCC7提供一新的段存储器地址,并且,该总线主控设备在每个脉冲后沿1至6处开始从上述新地址存储单元内读取。而且,当IOCC7将上述存储器地址从诸如32字节段10A的字节偏移量部分2改变至存储器段10L的字节偏移量部分5(图7)时,就会产生一过渡状态,其中,7位的段地址(图5)将会发生变化。
图6显示了可能产生的上述类型的地址转换实例。举例来说,假设用于32字节段10A的段地址是0111111。当总线主控设备请求将从诸如段10L之类的新段中读取的数据时,例如,当IOCC7接收时钟信号的脉冲后沿时,段10A的地址增加11(二进制1011)变成段10L的地址。这样,用于32字节段10L的7位段地址为1001010,这个数是通过执行二进制加法得来的。但是,存在这样一段时间,在这段时间内,来自段10A的段地址状态还没有达到用于段10L的精确值。也就是说,所有的数字位尚未校正以使IOCC7包含用于32字节段10L的精确段地址。图6显示了若干个可能的过渡阶段,其中,用于段10A的正确地址(0111111)还没有完全改变成段10L的正确地址(1001010)。这种过渡状态作为周期A与B显示于图2中选通脉冲信号的一侧,指示点1和4处后沿的周期A与B如参照图所述那样具有导致存储器段变化的可能性。
应该注意,这种过渡期起因于IOCC7逻辑所固有的潜在时间延迟特性。例如,当总线主控设备的命令时钟请求存储器段改变时,在新地址被请求读取的时间与IOCC逻辑计算该新地址并取代锁存器内的先前段地址的时间之间存在着过渡期。
所以,本技术领域内的技术人员将会认识到,如果在图6的过渡状态过程中(即在CPU时钟限定用于探测比较的地址取样周期以与图2中的时间A或B要匹配时)与CPU1时钟同步地产生探测操作,那么就有可能产生错误的探测命中,或者可能忽略有效的探测命中,其中,探测系统总线5的设备将无法在IOCC7实际占有数据时,判断出与转换的段地址之一相对应的数据,从而,由于在过渡状态中所给出的不恰当的响应而产生高速缓冲存储器9、高速缓冲存储器3及存储器11不协调的局面。在IOCC7占有一个存储器段的时间内,该IOCC会执行对系统总线的探测操作。CPU总线协议信号则用于确定出特定的总线周期是一“探测窗口”。
图3显示了本发明所使用的硬件逻辑,它包括在IOCC7中以判断是否发生了探测命中。在数据传递过程中,锁存器15接收I/O总线主控设备所提供的地址。该总线主控设备还将图2的(由选通逻辑22所恰当决定的)指示在何时锁住上述存储器地址的命令时钟输入给锁存器15。为了能确定是否发生了探测命中,IOCC7还包括一页面比较器19和段比较器29,这些比较器接收来自系统总线5的与一数据存储单元相对应的地址,而这一地址则为与系统总线5相连并能存取存储器11的其它设备所需要的。锁存器15内的上述地址也被提供给比较器19和29,并且,该地址包括正由I/O总线主控设备所存取的I/O高速缓冲存储器内的数据的存储器地址。
此外,设置有只对页面比较的比较器30,该比较器确定是否总线主控设备请求存取其它页面上的数据,以便使得系统释放总线主控设备并与CPU时钟同步地使该总线主控设备地址的锁存器复位。然后比较总线主控设备提供的存储器地址与来自系统总线的存储器地址。如果页面相同,那么,就产生页面命中并且将相应的信号输出至“与”门31和35。如果段地址相同,那么,就产生段命中并从比较器29中向“与”门31输出一信号。若上述页面命中信号和段命中信号都有效,则从“与”门31向“与”门33输出一信号。然后,将一指示DMA操作状态的信号输入至“与”门33和35。该DMA式总线主控设备活动的信号在输入至“与”门33之前被反转。“与”门33和35的输出被输入至“或”门37,然后,此“或”门向“与”门40输出一信号,“与”门40还接收一由CPU时钟(图2)所限定的指示产生探测比较的信号。
所以,从图3可以看出,本发明是如何根据DMA式总线主控设备的状态允许探测比较地址的粒度是动态的。也就是说,如果图3中DMA信号是不活动的,就将一有效信号输入至“与”门33。如果根据来自“与”门31的信号产生了页面及段命中,则“与”门33将向“或”门37输出一有效信号。如果在输入探测窗口信号时出现了来自“或”门37的上述信号,则“与”门40将输出一指示产生探测命中的信号。这样,CPU总线时钟用于决定IOCC7在何时对其内部逻辑取样以便确定是否产生了探测命中。通过这种方式,当DMA式总线主控设备不活动时,会在段粒度的基础上来实现探测比较。但是,若上述DMA活动的信号是活动的,则会将一有效的信号输入至“与”门35而不是“与”门33。这样,来自比较器19的页面命中信号和上述DMA活动的信号将会使得一信号输出至“或”门37并继续输出至“与”门40。通过这种方式,如果在页面命中出现的同时输入探测命中信号,那么“与”门40就会指出存在着探测命中。因此,随着对上述DMA信号的触发(即在活动状态与不活动状态之间改变),可以看出,系统会动态地在页面地址与段地址之间改变探测比较的粒度。
所以,本发明修改了IOCC7的探测比较逻辑,因而,所述探测比较的粒度会动态地在页面地址部分和段地址部分之间改变。通过这种方式,当DMA式总线主控设备可能会使用于探测比较的段地址被异步更新时,该DMA式总线主控设备会在活动期间完全忽略上述段地址。
可以看出,如果将页面地址粒度用于探测操作,那么,活动的DMA式总线主控设备以及系统总线5上的其它设备(如CPU1)将可能要存取处于同一页面内的不同存储器地址的段。在这种情况下,由于上述页面地址的粒度,因而将会产生探测命中。如果在产生探测命中时上述DMA式总线主控设备正在存取高速缓冲存储器9内的数据,则IOCC7会发出告知上述正在请求数据的设备等待的ARTRY信号,直至该DMA式总线主控设备的活动终止,这时,IOCC7将不会介入(例如停止发送ARTRY信号)以防止转移数据的占有权。在上述第一种情况下,当连接于系统总线5的其它设备请求与DMA式总线主控设备所正在存取的存储器段地址在同一页面上的存储器段地址时,本发明会避免在所述数据处理系统内的不同存储器存储单元(L1高速缓冲存储器与系统内存)之间的不协调数据。
在另一种情况下,上述活动的DMA式总线主控设备可通过请求必须由IOCC从被其它设备所占有的存储器段地址中提取的数据而引起探测命中。上述设备在执行所需要的协调性保持操作(例如将所请求段的修改过的拷贝写入存储器)时将会探测命中并抑制IOCC。当IOCC7不能提供I/O总线主控设备所请求的数据时,该IOCC会抑制所述总线主控设备并放弃(释放)其DMA活动的信号。当DMA不活动时,IOCC利用段粒度探测CPU总线,此外还通过使所请求的段的拷贝无效即使IOCC7的高速缓冲存储器9内的段未作修改的拷贝无效而响应探测命中。
在上述情况下,将会在不考虑存储器段地址的情况下产生探测命中,这是因为,所述DMA式总线主控设备是活动的且探测比较粒度处于页面地址级上。但是,(正如在DMA式总线主控设备为一新的页面提供新地址时由图3中比较器30所决定的那样)由于DMA式总线主控设备已经请求了与当前正被存取的数据有着不同页面地址的数据,所以会产生前述复位操作,其中,所述DMA式总线主控设备变为不活动的,并且,根据CPU时钟用一个地址同步地更新图3中的锁存器15。
通过这种方式,I/O总线主控设备可以异步地传递高速缓冲存储器9中的数据,并且,确保根据CPU时钟所启动的任何探测操作带有一有效的地址以用于探测比较,这是因为使用了页面地址粒度的缘故。所以,可以看出,当总线主控设备访问新的页面时,通过暂时抑制I/O总线13上的操作从而很少或不会降低系统性能。
本领域的技术人员将会认识到,尽管是依照在一总线主控设备和一个IOCC之间的数据传递说明了本发明,但是,本发明还将提供与系统总线相异步地存取系统存储器中数据的任何设备内高速缓冲存储器的协调性,而L1高速缓冲存储器则相对系统总线被异步地更新。
尽管显示和说明了某些最佳实施例,但是,应该认识到,在不脱离所附权利要求的情况下可做出多种变更和改进。

Claims (12)

1.一种利用探测协议来保持系统内高速缓冲存储器协调的方法,其中,在由CPU所决定的时间内产生探测比较,所述方法的特征在于,它包括的步骤有:
通过提供具有页面部分和段部分的地址请求对来自存储器的数据的占有权;
与上述CPU时钟相异步地活动地存取一第一设备内部高速缓冲存储器中的上述数据;以及
在活动地存取上述内部高速缓冲器期间只利用上述地址的页面部分实现所述的探测比较。
2.如权利要求1所述的方法,其特征在于,它包括的步骤有:在活动地存取所说的数据时阻止其它设备存取该数据。
3.如权利要求2所述的方法,其特征在于,它包括的步骤有:在所说的内部高速缓冲存储器未被活动地存取期间利用所述地址的页面部分和段部分实现上述探测比较。
4.如权利要求3所述的方法,其特征在于,它包括的步骤有;在所说的内部高速缓冲存储器未被活动地存取期间,一旦确定其它设备已经清求了所述数据就使上述第一设备中的该数据失效。
5.一种用探测协议来保持高速缓冲存储器协调性的数据处理系统,其中,在由CPU时钟所确定的时间内产生探测比较,其特征在于,所说的数据处理系统综合包括:
用于通过提供具有页面部分和段部分的地址而请求来自存储器的数据占有权的装置;
用于和上述CPU时钟相异步地活动地存取一第一设备内部高速缓冲存储器中上述数据的装置,以及
用于在活动地存取上述内部高速缓冲器期间只利用所述地址的页面部分实现上述探测比较的装置。
6.如权利要求5所述的系统,其特征在于,它包括有在活动地存取所述数据时阻止其它设备存取该数据的装置。
7.如权利要求6所述的系统,其特征在于,它包括有用于在上述内部高速缓冲存储器未被活动地存取期间利用所述地址的页面部分和段部分来实现上述探测比较的装置。
8.如权利要求7所述的系统,其特征在于,它包括有用于在所述的内部高速缓冲存储器未被活动地存取期间一旦确定其它设备已经请求了所述的数据就使上述第一设备中的该数据失效的装置。
9.如权利要求8所述的系统,其特征在于,所说的第一设备是一输入/输出控制器,此控制器提供了系统总线和输入/输出总线之间的接口。
10.如权利要求9所述的系统,其特征在于,所说的用于活动地存取的设备是一输入/输出设备,此设备可连接于上述输入/输出控制器并能执行存储器中的数据的直接存储器存取。
11.如权利要求10所述的系统,其特征在于,所说的只使用上述页面部分的装置包括根据上述输入/输出设备的状态动态改变所述粒度的装置,而所说的粒度则用于实现上述页面部分与段部分之间的探测比较。
12.如权利要求11所述的系统,其特征在于,所说的用于动态改变粒度的装置包括一逻辑电路,此电路包含在上述输入/输出控制器内。
CN94116431A 1993-09-20 1994-09-19 对高速缓冲存储器探测粒度的动态管理 Expired - Fee Related CN1052550C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12383093A 1993-09-20 1993-09-20
US123,830 1993-09-20

Publications (2)

Publication Number Publication Date
CN1111774A CN1111774A (zh) 1995-11-15
CN1052550C true CN1052550C (zh) 2000-05-17

Family

ID=22411155

Family Applications (1)

Application Number Title Priority Date Filing Date
CN94116431A Expired - Fee Related CN1052550C (zh) 1993-09-20 1994-09-19 对高速缓冲存储器探测粒度的动态管理

Country Status (1)

Country Link
CN (1) CN1052550C (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1331060C (zh) * 2002-10-04 2007-08-08 皇家飞利浦电子股份有限公司 具有分层存储器体系结构的数据处理系统和操作该系统的方法
KR102428563B1 (ko) * 2015-09-30 2022-08-03 삼성전자주식회사 수눕 작동을 관리하는 코히런트 인터커넥트와 이를 포함하는 데이터 처리 장치들

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0482752A2 (en) * 1990-10-26 1992-04-29 International Business Machines Corporation Methods and apparatus for maintaining cache integrity

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0482752A2 (en) * 1990-10-26 1992-04-29 International Business Machines Corporation Methods and apparatus for maintaining cache integrity

Also Published As

Publication number Publication date
CN1111774A (zh) 1995-11-15

Similar Documents

Publication Publication Date Title
US5590337A (en) Processor interface chip for dual-microprocessor processor system
US4768148A (en) Read in process memory apparatus
US5226150A (en) Apparatus for suppressing an error report from an address for which an error has already been reported
US5717954A (en) Locked exchange FIFO
US4586133A (en) Multilevel controller for a cache memory interface in a multiprocessing system
CA1300280C (en) Central processor unit for digital data processing system including write buffer management mechanism
US5214770A (en) System for flushing instruction-cache only when instruction-cache address and data-cache address are matched and the execution of a return-from-exception-or-interrupt command
JPH05502123A (ja) キャッシュ/メインメモリのコンシステンシを維持するための装置及び方法
US5588128A (en) Dynamic direction look ahead read buffer
JPH11506850A (ja) 多重レベルキャッシュシステムにおけるキャッシュ・スヌーピング・オーバヘッドを減少するための方法および装置
EP0283891B1 (en) Cache memory with hit predictive logic
EP0493960A2 (en) A computer system employing fast buffer copying
EP0344886B1 (en) Data transfer processing system
JP4106664B2 (ja) データ処理システムにおけるメモリ・コントローラ
EP0644491B1 (en) Data processing system maintaining cache coherency by using a snooping protocol
US4658356A (en) Control system for updating a change bit
US5557622A (en) Method and apparatus for parity generation
CN1052550C (zh) 对高速缓冲存储器探测粒度的动态管理
US5835957A (en) System and method for a fast data write from a computer system to a storage system by overlapping transfer operations
US5809534A (en) Performing a write cycle to memory in a multi-processor system
US4594658A (en) Hierarchy of control stores for overlapped data transmission
US6298417B1 (en) Pipelined cache memory deallocation and storeback
JP2700147B2 (ja) 命令キャッシュ・フラッシュ・オン・rei制御
KR950003877B1 (ko) 캐쉬 업데이트(Cache Update)장치 및 방법
AU706450B2 (en) A processor interface circuit

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