CN1010619B - 数字数据处理系统高速缓冲存储器内容的失效标记 - Google Patents

数字数据处理系统高速缓冲存储器内容的失效标记

Info

Publication number
CN1010619B
CN1010619B CN87106353A CN87106353A CN1010619B CN 1010619 B CN1010619 B CN 1010619B CN 87106353 A CN87106353 A CN 87106353A CN 87106353 A CN87106353 A CN 87106353A CN 1010619 B CN1010619 B CN 1010619B
Authority
CN
China
Prior art keywords
address
control signal
cache memory
bus
mentioned
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
Application number
CN87106353A
Other languages
English (en)
Other versions
CN87106353A (zh
Inventor
保罗·鲁宾菲尔德
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment 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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of CN87106353A publication Critical patent/CN87106353A/zh
Publication of CN1010619B publication Critical patent/CN1010619B/zh
Expired legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F12/0835Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)

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)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

一种机制,用来当高速缓冲存贮器里块的内容已被变更时,确定通过处理器外部的DMA(存贮直接存取)操作造成的失效以及用来标志该块失效以响应于一个可靠的决定。在DMA传送中,命令部件在发送地址之前建立了高速缓冲存贮器控制信号,该信号控制处理器支接收地址并确定是否与高速缓冲存贮器的内容相符合一致,如果是这样,则处理器要标志高速缓冲存贮器单元的内容失效。

Description

本发明一般地涉及到数字数据处理系统的范畴,并特别地涉及到当在处理器中的高速缓冲存储器电路所存内容失效(Stale)时,用来作为标记的系统,该电路包含着数据,对于这些数据而言,存储在主存储器中的同样这些数据已被系统中其他部件所改写。
典型的数据处理系统包括三个基本部分,叫做处理器,存储器和输入/输出部分。存储器在可访问的存储单元中存了信息。这些信息包括数据和用来处理数据的指令。处理器包括一个或多个数字数据处理部件,或“处理器”,每个处理器导至信息传送或从存储器中提取出来信息,解释取来的信息为指令或是数据,并依照指令处理数据,然后将其结果存入所访问的存储单元中。
输入输出部分还和存储器进行通讯,目的是向系统传送信息或从系统得到处理后的数据。组成输入/输出部分的部件通常根据由处理器提供的控制信号进行操作。控制信号决定输入/输出装置要执行的操作。由输入/输出装置所执行的至少有一种操作是在输入/输出部件和存储器之间传送用户信息、即用户程序所使用的信息。由输入/输出元素组成的典型部件包括,例如,打印机,电传打字机,视频显示终端,并也可包括辅助信息存储装置例如磁盘或磁带。
除了作为输入/输出设备外,磁盘存储器,在某些情况下还有磁带存储器,也可以部分地起到存储器的作用。特别地,存储器部分典型地包括了主存储器,其内容是处理器容易较高速地进行访问的,但 通常存储成本较高。现代的主存储器典型地采用MOS(金属氧化物半导体)和双极型半导体技术来实现,并可提供大约从几分之一兆字节到几十兆字节的存储容量。
另一方面,访问存放在磁盘存储器的信息所需要的时间大大超过了访问主存储器的时间,但是磁盘存储器能提供很大的存储容量,大约为数百兆字节或更多,且成本较低。此外,与主存储器不同的是,磁盘存储器的信息不易丢失,也就是说如果断电,存储的信息不会失去。因此,磁盘装置常用来为主存储器提供后备存储。也就是说,为尚不宜于进入主存储器的信息提供存储直到程序需要把它们调入主存储器为止。当程序需要存储在磁盘上的信息而不是在主存中的信息时,那些信息要被传送到主存储器中去。如果需要,在主存储器中那些将被自磁盘传送来的信息写入的存储单元的内容,可以在被来自磁盘的数据所重写之前,传送到磁盘去以便存储在里面。
在许多数字数据处理系统中,处理器(假设为一个处理器),大容量存储器和其他输入/输出设备均与单一的主存储器或几个主存储器模块进行通讯,这就可能产生对于主存储器的争用,它能够影响处理器从主存储器快速获得信息的能力。这样,也降低了处理器执行程序的能力。如果所有的部件均连接在单一的输入/输出总线上,当所有的被传送的信息都通过单一的总线来传送时,这种总线争用的问题将变得更加尖锐。
因此,在许多现代的计算机系统中,处理器含有高速缓冲存储器(Cache    memory),它是一个小的专用的存储器,仅可供处理器访问,存储了来自主存储器中最最近被请求的那些存储单元和其邻近的一些单元的信息。在典型的数据处理系统中,当处理器从主存储器 中的一个存储单元请求一个信息项时,它将经常在此后不久需要其邻近的存储单元的内容。因此,当处理器能从主存储器请求信息时,它请求的信息多于那个时刻它所需要的信息,有可能此后不久这些剩余信息中至少有某些或许是它所需要的。当处理器得到了它所需要的该项信息时,它能立即开始使用它,并且如果发现处理器能够利用它已经接收到的其他信息,它将利用存储在高速缓冲存储器中的该信息而不必等待到从主存储器去得到该信息。
例如,美国专利U.S.4,439,829号中公开了一种具有高速缓冲存储器的数据处理机,在其上的操作操作可分为两个子周期,在第一个周期内从中央处理器接收读请求,在第二个周期内从外设中接收读请求或向该高速缓冲存储器写入。这样,中央处理器能够在第一周期内继续读高速缓冲存储器,不管第二周期是在读出还是写入高速缓冲器。
典型地,高速缓冲存储器被安排在块内,每块能存储预定的信息量。当信息从主存储器中提取出来并装入高速缓冲存储器块时,该块被赋值一个地址,叫做“标识符”(tag),标识符相应于主存储器中提取出来信息的相应存储单元的地址;因此高速缓冲存储器块是由主存储器中的存储单元来确认的。当处理器需要信息时,在高速缓冲存储器中的标识符要受到检验,以确定是否有一块含有所需要的信息。如果有一块含有所需要的信息,则处理器从该块高速缓冲存储器获得信息;否则,处理器从主存储器获得信息。
正如上面已经提到,当磁盘装置向主存储器传送信息时,它可以改写以前在主存储器中的信息。但是,当发生这种情况时,如果来自 主存储器中这些存储单元的信息已经存储在高速缓冲存储器中的一块或几块中,则在这些块中的信息是失效的,也就是说,该块不含有在存储器中的信息的拷贝(Copy)。
本发明提供了一种新的、改进了的机制用于标志在高速缓冲存储器中失效记录块,以便指出自从信息被存入高速缓冲存储器,与这些块有关的主存储器的内容已经发生了变化。
简单地概括起来讲,数字数据处理系统包括一个处理器,它含有 一个受总线接口电路控制的高速缓冲存储器。处理器通过公共总线与主存储器和一个或多个辅助的信息存储装置进行通讯。总线包括用来传送地址和信息的线(当要传送地址时,由一个地址选通脉冲信号来标识),和一条用来传送高速缓冲存储器控制信号的线。如果高速缓冲存储器的控制信号优先于通过地址线的地址传送及地址选通脉冲信号的建立而直接地建立起来,则总线控制电路把该地址和那些与高速缓冲存储器的内容有关的地址进行比较。如果高速缓冲存储器中的块与所传送的地址有关,则总线控制电路就标志该高速缓冲存储器的内容失效。与刚才标志为失效的块相邻近的主存储器存储单元有关的第二块,也可以标志为失效的块,只要高速缓冲存储器控制信号第二次建立,而地址选通脉冲信号业已建立起来。
本发明内容已详细地指出在以下叙述中。上面提到的、和将进一步提到的本发明的优点,可以通过参考下面的叙述和连带的附图来更好地理解,其中:
图1是根据本发明的数字数据处理系统结构的方块图;
图2是描述总线的各种线的图,该总线在图1描述的系统中连接各种部件。
由图3A和图3B组成的图3包括时序图,在理解图1所述系统的操作时该图是有益的。
参看图1,包括本发明在内的数据处理系统包括(作为最基本的部分):处理器10,存储器11以及一个或多个输入/输出部件12。总线13并行地连接处理器10、存储器11和输入/输出装置12。处理器10执行指令,这些指令存在存储部件11中的可访问的存储单元内。指令确认对操作数所要进行的操作,这些操作数也是存储在 存储器的可以访问的存储单元中。指令和操作数都是由处理器10在需要它们时取来的,并且处理后的数据被返存在存储器11中。处理器10还发送控制信息到输入/输出部件12,使它们去执行选定的操作,例如向存储器11传送数据,或者从存储器11取回数据。这些数据可以是指令或者自存储器11传送的操作数,或者是从存储器11取回来的处理过的数据以用于存储或显示。
操作控制台14用作操作员的接口,它允许操作员测试和存储数据,停止处理器10的操作或者让处理器10单步操作,逐次通过指令,以及据此而确定处理器10的响应。它也使操作员能够通过自引导程序(boot    strap    procedure)去初始化系统,并能在整个数据处理系统上完成各种诊断测试。
存储器11包括存储控制器15,它直接地连接到总线13和一组阵列17上。阵列17包含存储了信息的一组可访问的存储单元。通过总线13,存储控制器15接收来自处理器10或输入/输出部件12的传送请求。通过总线13,存储控制器15可接收几种传送请求,这些请分为两类,一类请求是把信息写入或者存储进存储单元中,另一类请求是从存储单元中取回信息或者读出信息。
数据处理系统可以包括若干种输入/输出部件12;包括磁盘和磁带外存储装置,电传打字机,视频显示终端,行式打印机,电话和计算机网络以及类似的输入/输出部件。所有这些装置都通过设备总线经一个或多个总线适配器与总线13通讯。如图1所示,磁盘驱动器20经设备总线22被连接到外存总线适配器21上。外存总线适配器又连接到总线13上。其他的输入/输出装置12通过设备总线24连接到输入/输出总线适配器25上。
由处理器10通过总线13的传送受总线接口电路30的控制。该总线接口电路30发送和接收信号,正如下面与图2有关描述所说,应处理器处理电路(图中未画出)的要求,这些信号通过总线13完成处理器和与总线相连的各设备之间的信息传送。总线接口电路30也控制高速缓冲存储器31,通过总线13从存储装置11中接收到的信息就存储于此。此外,如果处理电路已经请求了存储在高速缓冲存储器31中的信息,则总线接口电路30取回信息并把它传送到处理电路去。
高速缓冲存储器31是在处理器10中的通用信息存储电路。K.王(K.Hwang)和F.伯利格(F.Briggs)在“计算机结构和并行处理”(Computer    Architecture    And    parallel    processing),Mc    Graw-Hill,1984,一书第2·4节第98页及其后,和V.哈马洽(V.Hamacher)在“计算机构造”(Computer    Organization),Mc    Graw-Hill,1984,一书8.6节第306页及其后均已描述了高速缓冲存储器。高速缓冲存储器31包括一组安排在块中的存储单元,每一块含有两个存储单元。每一个存储器单元存放一个信息字,即,可以通过总线13一次传送的信息总量。在一特定的实施例中,一个信息字相当于4个字节,即,32位二进制数位。因此,一块包含用于8个信息字节的存储单元。如本技术领域技术人员所能理解,在高速缓冲存储器31的块中存储的信息,当它是接收自存储器11时,该信息是存储在存储器11中的信息拷贝。高速缓冲存储器31中的每一块具有一个相关连的标识符32,该标识符的内容是由总线接口电路30所确定从而用来识别在存储器11中复制了信息的存储单元。此外,每一块含有失效标记(Stale    flag) 33,该失效标记由总线接口电路去复位或清除,以便指示出该块的内容实际上是否是被标识符所确认的存储单元的拷贝。即是说块的内容是否失效。
块的内容可以标志成失效的条件已得知。当连接于总线13的其他装置向存储器11传送信息以便存储在一个存储单元中,该存储单元的内容已预先复制到高速缓冲存储器31中的块中,至少这是一种可以标志块的内容失效的一种情况。如发生这种情况,高速缓冲存储器31中的块的内容是“失效”了,也就是说它们不再对应于在存储器11中的存储单元的内容了,因而处理器10不能利用高速缓冲存储器11中该块内的信息。在上述的实施例中,一个高速缓冲存储器块有两个存储单元,如果任一存储单元的内容不对应于在存储器中相应存储单元的内容、该块被标志为失效。
总线13包含一组线用来对连接于此的不同部件传送信号。将证实,为了部分或全部的接收和利用或者发送各种信号,每个部件都具有一些电路(未画出)。图2给出了组成总线13的实施例的许多条线。
参照图2,总线13包括一组数据/地址线(“DNA”)35,命令装置通过它发送表示信息和传送命令/地址已被传送的信号。在总线13中、传送命令的信号(即:确认响应于该命令而被传送的字的数目的信号)与地址一同被传送。即使在传送多于一个信息字的情况下也只传送一个地址;如果响应于命令传送多于一个字的信息,则第一个信息字与由地址确认的单元有关,其余的字从被接连的地址所确认的单元中取出。
命令装置在将地址信号安排于数据/地址线35上、并允许它们 调整和抗扭斜(to    Settle    and    deskew)之后,通过线36发送已建立起来的地址选通信号AS。其他部件可利用已建立起的地址选通信号AS去选通和使用地址信号,如果发送地址的部件也通过线37发送一个WR写信号以便能进行写操作,则信息传送到由刚才发送的地址所确认的存储单元中。在建立AS地址选通信号之后的预定时间,命令装置从数据/地址线35消除命令和地址信号并置信息信号于其上。经过一个选定的时间,信息信号已被调整和抗扭斜之后,命令部件通过线40发送已建立的数据选通信号DS,使包含被访问的存储单元的该部件(即,响应的部件)接收数据和存储信息到被访问的单元中去。然后该响应装置通过线41传送已建立的由发送装置接收的准备好的信号RDY。然后DS数据选通信号和AS地址选通信号被取消。然后响应部件的准备好的信号RDY也被取消。
另一方面,如果命令部件(也就是在数据/地址线上发送地址信号的部件),没有建立起写信号WR,那么,一个读操作能够被产生,响应的部件通过数据/地址线35发送存放在存储单元中的信息。特别是,在地址选通脉冲信号AS建立之后的某一个时间,命令部件消除掉地址信号,并建立数据选通信号DS。于是,响应的部件把来自于由地址信号确认的存储单元的信息信号置于数据/地址线35上,并建立准备好的信号RDY。在响应时,命令部件选通在数据/地址线35上的信号,取消数据选通信号DS和地址选通信号AS并且相应的装置取消准备好的信号RDY。
正如上所述,响应于一个信号地址可以传送多字信息。这就由保持了已建立的地址选通信号的命令部件来进行调节,并针对将要传送的每一个字建立起数据选通信号DS。如果是写操作,针对每个已建立 的数据选通信号DS,命令部件发送一个新的信息字,并且接收部件响应于此而起立准备好的信号RDY。在接收部件取消了准备好的信号RDY之后,命令部件可以发送一个新的信息字并建立数据选通信号DS。
如果是读操作,命令部件发送了数据选通信号DS之后,接收部件把新的信息字置于数据/地址线35上,并建立RDY信号。在接收部件取消了RDY信号之后,命令部件可再次建立数据选通信号DS。
命令部件可以是任何一个部件,该部件启动向存储器信息的传送、或从存储器取出信息的传送。在图1所示的数字数据处理系统中,处理器10和外存储器总线适配器21启动与存储器11信息的传送。此外,在某些情况下,输入/输出总线适配器25也可以启动与存储器11的信息传送。因此,适配器21和25直接访问存储器11,也说是说,它们参与“直接存储器访问”,即“DMA”传送。如果适配器21或25中的任何一个希望与存储器进行DMA传送,则他们要参与判优操作,在此操作中,由处理器10确定是否将发生DMA传送。希望进行DMA传送的装置通过线42,发送已建立的直接存储器(传送)请求信号DMR;在响应时,处理器10通过线43建立直接存储器传送许可信号DMG。于是,接收到直接存储器传送许可信号DMG的部件可变成在总线13上的命令部件。
除上述信号外,总线13还包括许多条线44用来运送信号,根据这些信号,系统中的其它部件可以请求中断服务或发出发生非正常事件的信号,还包括另外的线45用来运送各种各样的控制信号和时序信号。
此外,依照本发明,总线13包括用来运送高速缓冲存储器控制信号CCTL的线46,该控制信号可在DMA传送期间由命令部件建立起来,例如,该部件即是通过总线13直接地向存储器11传送信息信号的适配器21或25这样的部件。命令部件利用高速缓冲存储器控制信号CCTL连同通过总线13的另外的线发送的信号,从而使得总线接口电路30:(a)通过把地址信号与标识符32的内容相比较,确定由通过数据/地址线35的地址信号所确认的被访问的存储器单元的内容是否已经复制到了高速缓冲存储器31的块中,(b)当地址信号和高速缓冲存储器标识符32如果一致,即如果它们已经被复制到块中,则设置该块的失效标记33从而指出在存储器11中的相应存储单元已经被重写。在总线接口电路30执行这些操作的情况下,命令部件和被访问的部件可利用数据/地址线35和上述数据选通信号DS通过总线13继续信号传送。因此如果传送的信息是通常已装入到高速缓冲存储器的信息,则通过建立高速缓冲存储器控制信号CCTL,连同总线13上的其他信号,命令部件能够通过总线13开始信息传送,同时也能使总线接口电路30完成上述操作。
图3A和图3B描述了对各种信号,包括在线46上的高速缓冲存储器控制信号CCTL(图2)的时序,图3A描述了涉及一种传送的时序,在该传送中高速缓冲存储器的一块可能是被标志为失效的,而图3B描述了涉及一种传送的时序,在该传送中,高速缓冲存储器的多个块可能是被标志为失效的,正如上所述,命令部件采用保持已建立的地址选通信号AS的方法,完成响应于单一地址的多个存储单元的信息传送。如果这种情况发生,则总线控制电路30大有可能标志高速缓冲存储器31(图1)中的多个块为失效的。
参看图3A可知,命令装置在将地址信号置于数据/地址上之前 和建立地址选通信号AS之前即已建立起高速缓冲存储器控制信号CCTL了。这就决定总线接口电路要求得到一个地址,而总线接口电路应对该地址和缓冲寄存器标识符32的内容作比较。然后,命令部件(图1中适配器21或25中的任何一个)置该地址信号于数据/地址线35上,并建立地址选通信号AS。大约在命令部件建立地址选通信号AS之时,它可能取消高速缓冲存储器控制信号CCTL。
当地址选通信号AS建立时,响应高速缓冲存储器控制信号CCTL的建立,处理器10,尤其是总线接口电路30,被用来从数据/地址线35选通地址信号。选通地址信号之后,总线接口电路30把地址信号与标识符32内容进行比较,如果他们是一致的,则置位与其一致的块相关的失效标记33,以标记该块失效。
如图3B所述,当地址选通信号建立时,如果高速缓冲存储器控制信号CCTL被第二次建立,则总线接口电路30将确定高速缓冲存储器31中的块与通过数据/地址线35开始发送的地址信号有关的第二次地址之间是否存在着一致性。特别是,在一个块中包含着的存储单元是针对着存储器11的两个存储单元的实施例中,第二个地址被提取出来作为存储器中相邻块的地址。当高速缓冲存储器控制信号CCTL被第二次建立时,总线接口电路35确定在标识符32和通过数据/地址线35所接收到的地址被加2所组成的地址之间,是否存在一致性。
上文所述限于本发明的特殊的实施例,但是很明显,带有本发明的某些或全部优点的各种变形和修改可以作出来。因此,本发明申请的权利要求的目的是包括全部的这些变形和修改,因为它们都是在本发明的精神和范围内。
本发明所提出的权利要求,是希望在美国专利证书得到确立的那些权利要求。

Claims (4)

1、在一数字数据处理系统中,一用于连接到一总线的部件,该系统至少包括另外一个连接到该总线的部件,其特征在于;
所述部件包括一高速缓冲存储器,该高速缓冲存储器包括有多个项目,每个项目包括有一个块,一标识符存储器和一失效指示器;该失效指示器含有有效状态和失效状态,该部件进一步包括有一总线接口电路,用于连接至上述总线来接收总线的相应线上的地址信号、地址控制信号和高速缓冲存储器控制信号;所述地址控制信号包括一建立状态和一取消状态,所述高速缓冲存储器控制信号包括一建立状态和取消状态;上述总线接口电路进一步连接到高速缓冲存储器,并包括:
A.地址接收电路,连接至上述总线,响应上述地址控制信号来接收上述地址信号;
B.标识符比较器,连接至上述地址接收电路和全部标识符存储器,响应于一第一个高速缓冲存储器控制信号,以确定上述地址信号和上述标识符存储器的内容是否一致;以及响应于第二个高速缓冲存储器控制信号,以确定递增的地址信号和上述标识符存储器的内容是否一致;
C.失效指示器控制电路,连接到上述标识符比较器和总线,响应于上述高速缓器控制信号和一个完全的符合一致,以控制具有与失效状态一致的项目的失效指示器。
2、根据权利要求1的部件,其特征在于:所述标识符比较器包括一地址递增器,用以根据接收到第二个高速缓冲存储器控制信号产生一递增地址值,所述标识符比较器确定上述递增地址值与所述标识符存储器的内容是否一致,和所述失效指示器控制电路响应于完全的符合一致,以控制具有与失效将态一致的失效指示器。
3、根据权利要求2的部件,其特征在于:所述比较器仅仅在当所述地址控制信号建立时所述第二个高速缓冲存储器控制信号也建立的情况下响应于该第二个高速缓冲储器控制信号来确定递增的地址信号和所述标识符存储器的内容是否一致。
4、在高速缓冲存储器中建立项目的状态的方法,该高速缓冲存储器连接到一数字数据处理系统中的总线上,该系统至少包括另一个部件连接至该总线,该高速缓冲存储器具有多个项目,每个项目包括一个块,一标识符存储器和一失效指示器;该失效指示器具有一有效状态和一失效状态;所述高速缓冲存储器接收来自总线的相应线上的表示地址、地址控制信号和高速缓冲存储器控制信号的控制信号,本发明其特征在于包括如下步骤:
A.响应包括有效状态的上述地址控制信号,接收该地址;
B.对在该地址控制信号建立期间出现高速缓冲存储器控制信号作出响应,确定所接到的地址信号和所述标识符存储器的内容是否一致;
C.响应完全的一致符合,对具有与失效状态符合的项目的失效指示器进行调节;
D.响应在上述地址控制信号期间的第二个高速缓冲存储器控制信号,以上述接收的地址产生一递增的地址;
E.响应在上述地址控制信号期间的第二个高速缓冲存储器控制信号的出现,确定该递增的地址和所述标识符存储器的内容是否一致;
F.根据完全的一致符号,对具有与无效状态符合的项目的无效指示器进行调节。
CN87106353A 1986-09-18 1987-09-17 数字数据处理系统高速缓冲存储器内容的失效标记 Expired CN1010619B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US908825 1986-09-18
US06/908,825 US4814981A (en) 1986-09-18 1986-09-18 Cache invalidate protocol for digital data processing system

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN90107094A Division CN1019236B (zh) 1986-09-18 1987-09-17 数字数据处理系统高速缓冲存储器内容的失效标记

Publications (2)

Publication Number Publication Date
CN87106353A CN87106353A (zh) 1988-06-08
CN1010619B true CN1010619B (zh) 1990-11-28

Family

ID=25426287

Family Applications (2)

Application Number Title Priority Date Filing Date
CN87106353A Expired CN1010619B (zh) 1986-09-18 1987-09-17 数字数据处理系统高速缓冲存储器内容的失效标记
CN90107094A Expired CN1019236B (zh) 1986-09-18 1987-09-17 数字数据处理系统高速缓冲存储器内容的失效标记

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN90107094A Expired CN1019236B (zh) 1986-09-18 1987-09-17 数字数据处理系统高速缓冲存储器内容的失效标记

Country Status (10)

Country Link
US (1) US4814981A (zh)
EP (1) EP0261029B1 (zh)
JP (1) JPH0640317B2 (zh)
CN (2) CN1010619B (zh)
AT (1) ATE93074T1 (zh)
AU (1) AU603601B2 (zh)
BR (1) BR8705181A (zh)
CA (1) CA1296106C (zh)
DE (1) DE3786967T2 (zh)
IE (1) IE872521L (zh)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2590699B1 (fr) * 1985-11-25 1994-07-01 Nec Corp Systeme assurant la coherence pour les contenus d'une antememoire
DE3788721T2 (de) * 1986-10-17 1994-06-09 Fujitsu Ltd Datenübertragungssystem mit übertragunsdiskriminierungsschaltung.
US5325513A (en) * 1987-02-23 1994-06-28 Kabushiki Kaisha Toshiba Apparatus for selectively accessing different memory types by storing memory correlation information in preprocessing mode and using the information in processing mode
US5091845A (en) * 1987-02-24 1992-02-25 Digital Equipment Corporation System for controlling the storage of information in a cache memory
US5003459A (en) * 1988-04-01 1991-03-26 Digital Equipment Corporation Cache memory system
EP0346917A3 (en) * 1988-06-17 1990-11-07 Modular Computer Systems Inc. Bus stealing method for concurrent cpu and i/o processing
US5058006A (en) * 1988-06-27 1991-10-15 Digital Equipment Corporation Method and apparatus for filtering invalidate requests
US5119485A (en) * 1989-05-15 1992-06-02 Motorola, Inc. Method for data bus snooping in a data processing system by selective concurrent read and invalidate cache operation
US5261105A (en) * 1990-05-04 1993-11-09 Thinking Machines Corporation System for transferring blocks of data among diverse units having cycle identifier signals to identify different phase of data transfer operations
US5450564A (en) * 1990-05-04 1995-09-12 Unisys Corporation Method and apparatus for cache memory access with separate fetch and store queues
US5251310A (en) * 1990-06-29 1993-10-05 Digital Equipment Corporation Method and apparatus for exchanging blocks of information between a cache memory and a main memory
US5371872A (en) * 1991-10-28 1994-12-06 International Business Machines Corporation Method and apparatus for controlling operation of a cache memory during an interrupt
GB2271201B (en) * 1992-10-01 1995-12-13 Digital Equipment Int Low-overhead,non-coherent cache refreshment mechanism
US5649162A (en) * 1993-05-24 1997-07-15 Micron Electronics, Inc. Local bus interface
US5813028A (en) * 1993-10-12 1998-09-22 Texas Instruments Incorporated Cache read miss request invalidation prevention method
JP2882266B2 (ja) * 1993-12-28 1999-04-12 株式会社日立製作所 信号伝送装置及び回路ブロック
US5586297A (en) * 1994-03-24 1996-12-17 Hewlett-Packard Company Partial cache line write transactions in a computing system with a write back cache
US5630094A (en) * 1995-01-20 1997-05-13 Intel Corporation Integrated bus bridge and memory controller that enables data streaming to a shared memory of a computer system using snoop ahead transactions
US5778431A (en) * 1995-12-19 1998-07-07 Advanced Micro Devices, Inc. System and apparatus for partially flushing cache memory
US6542983B1 (en) 1999-10-01 2003-04-01 Hitachi, Ltd. Microcomputer/floating point processor interface and method
US7266728B1 (en) 1999-10-01 2007-09-04 Stmicroelectronics Ltd. Circuit for monitoring information on an interconnect
US6701405B1 (en) 1999-10-01 2004-03-02 Hitachi, Ltd. DMA handshake protocol
US6779145B1 (en) 1999-10-01 2004-08-17 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6615370B1 (en) 1999-10-01 2003-09-02 Hitachi, Ltd. Circuit for storing trace information
JP2001142692A (ja) * 1999-10-01 2001-05-25 Hitachi Ltd 2つの異なる固定長命令セットを実行するマイクロプロセッサ、マイクロコンピュータおよび命令実行方法
US6298394B1 (en) 1999-10-01 2001-10-02 Stmicroelectronics, Ltd. System and method for capturing information on an interconnect in an integrated circuit
US6693914B1 (en) 1999-10-01 2004-02-17 Stmicroelectronics, Inc. Arbitration mechanism for packet transmission
US7072817B1 (en) 1999-10-01 2006-07-04 Stmicroelectronics Ltd. Method of designing an initiator in an integrated circuit
US6567932B2 (en) 1999-10-01 2003-05-20 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6598128B1 (en) 1999-10-01 2003-07-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6412047B2 (en) 1999-10-01 2002-06-25 Stmicroelectronics, Inc. Coherency protocol
US6502210B1 (en) 1999-10-01 2002-12-31 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US6665816B1 (en) 1999-10-01 2003-12-16 Stmicroelectronics Limited Data shift register
US6633971B2 (en) 1999-10-01 2003-10-14 Hitachi, Ltd. Mechanism for forward data in a processor pipeline using a single pipefile connected to the pipeline
US6463553B1 (en) 1999-10-01 2002-10-08 Stmicroelectronics, Ltd. Microcomputer debug architecture and method
US7000078B1 (en) 1999-10-01 2006-02-14 Stmicroelectronics Ltd. System and method for maintaining cache coherency in a shared memory system
US6349371B1 (en) 1999-10-01 2002-02-19 Stmicroelectronics Ltd. Circuit for storing information
US6553460B1 (en) 1999-10-01 2003-04-22 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6530047B1 (en) 1999-10-01 2003-03-04 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6457118B1 (en) 1999-10-01 2002-09-24 Hitachi Ltd Method and system for selecting and using source operands in computer system instructions
US6590907B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics Ltd. Integrated circuit with additional ports
US6826191B1 (en) 1999-10-01 2004-11-30 Stmicroelectronics Ltd. Packets containing transaction attributes
US6574651B1 (en) 1999-10-01 2003-06-03 Hitachi, Ltd. Method and apparatus for arithmetic operation on vectored data
US6460174B1 (en) 1999-10-01 2002-10-01 Stmicroelectronics, Ltd. Methods and models for use in designing an integrated circuit
US6684348B1 (en) 1999-10-01 2004-01-27 Hitachi, Ltd. Circuit for processing trace information
US6629115B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method and apparatus for manipulating vectored data
US6591369B1 (en) 1999-10-01 2003-07-08 Stmicroelectronics, Ltd. System and method for communicating with an integrated circuit
US6487683B1 (en) 1999-10-01 2002-11-26 Stmicroelectronics Limited Microcomputer debug architecture and method
US6629207B1 (en) 1999-10-01 2003-09-30 Hitachi, Ltd. Method for loading instructions or data into a locked way of a cache memory
US7260745B1 (en) 1999-10-01 2007-08-21 Stmicroelectronics Ltd. Detection of information on an interconnect
US6434665B1 (en) 1999-10-01 2002-08-13 Stmicroelectronics, Inc. Cache memory store buffer
US7793261B1 (en) 1999-10-01 2010-09-07 Stmicroelectronics Limited Interface for transferring debug information
US6598177B1 (en) 1999-10-01 2003-07-22 Stmicroelectronics Ltd. Monitoring error conditions in an integrated circuit
US6351803B2 (en) 1999-10-01 2002-02-26 Hitachi Ltd. Mechanism for power efficient processing in a pipeline processor
US6412043B1 (en) 1999-10-01 2002-06-25 Hitachi, Ltd. Microprocessor having improved memory management unit and cache memory
US6449712B1 (en) 1999-10-01 2002-09-10 Hitachi, Ltd. Emulating execution of smaller fixed-length branch/delay slot instructions with a sequence of larger fixed-length instructions
US6918065B1 (en) 1999-10-01 2005-07-12 Hitachi, Ltd. Method for compressing and decompressing trace information
US6546480B1 (en) 1999-10-01 2003-04-08 Hitachi, Ltd. Instructions for arithmetic operations on vectored data
US6859891B2 (en) 1999-10-01 2005-02-22 Stmicroelectronics Limited Apparatus and method for shadowing processor information
US6928073B2 (en) * 1999-10-01 2005-08-09 Stmicroelectronics Ltd. Integrated circuit implementing packet transmission
US6408381B1 (en) 1999-10-01 2002-06-18 Hitachi, Ltd. Mechanism for fast access to control space in a pipeline processor
US6557119B1 (en) 1999-10-01 2003-04-29 Stmicroelectronics Limited Microcomputer debug architecture and method
US6732307B1 (en) 1999-10-01 2004-05-04 Hitachi, Ltd. Apparatus and method for storing trace information
US6601189B1 (en) 1999-10-01 2003-07-29 Stmicroelectronics Limited System and method for communicating with an integrated circuit
US6772325B1 (en) * 1999-10-01 2004-08-03 Hitachi, Ltd. Processor architecture and operation for exploiting improved branch control instruction
US6820195B1 (en) 1999-10-01 2004-11-16 Hitachi, Ltd. Aligning load/store data with big/little endian determined rotation distance control
US7310706B1 (en) 2001-06-01 2007-12-18 Mips Technologies, Inc. Random cache line refill
US8799429B1 (en) * 2008-05-06 2014-08-05 American Megatrends, Inc. Boot acceleration by consolidating client-specific boot data in a data storage system
US9009413B2 (en) * 2012-12-21 2015-04-14 Intel Corporation Method and apparatus to implement lazy flush in a virtually tagged cache memory
EP3249541B1 (en) * 2016-05-27 2020-07-08 NXP USA, Inc. A data processor
US10970215B1 (en) 2019-12-03 2021-04-06 International Business Machines Corporation Cache snooping mode extending coherence protection for certain requests
US11157409B2 (en) 2019-12-17 2021-10-26 International Business Machines Corporation Cache snooping mode extending coherence protection for certain requests
US11157408B2 (en) 2019-12-17 2021-10-26 International Business Machines Corporation Cache snooping mode extending coherence protection for certain requests

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4195340A (en) * 1977-12-22 1980-03-25 Honeywell Information Systems Inc. First in first out activity queue for a cache store
US4161024A (en) * 1977-12-22 1979-07-10 Honeywell Information Systems Inc. Private cache-to-CPU interface in a bus oriented data processing system
US4161782A (en) * 1977-12-23 1979-07-17 Otis Engineering Corporation Microprocessor computerized pressure/temperature/time down-hole recorder
GB2030739B (en) * 1978-09-29 1982-06-30 Nat Res Dev Computer store arrangements
US4471429A (en) * 1979-12-14 1984-09-11 Honeywell Information Systems, Inc. Apparatus for cache clearing
US4349871A (en) * 1980-01-28 1982-09-14 Digital Equipment Corporation Duplicate tag store for cached multiprocessor system
JPS5724086A (en) * 1980-07-16 1982-02-08 Fujitsu Ltd Repealing cotrol system of buffer memory
US4419725A (en) * 1980-11-14 1983-12-06 Sperry Corporation Cache/disk subsystem with tagalong copy
US4439829A (en) * 1981-01-07 1984-03-27 Wang Laboratories, Inc. Data processing machine with improved cache memory management
SE445270B (sv) * 1981-01-07 1986-06-09 Wang Laboratories Dator med ett fickminne, vars arbetscykel er uppdelad i tva delcykler
US4410944A (en) * 1981-03-24 1983-10-18 Burroughs Corporation Apparatus and method for maintaining cache memory integrity in a shared memory environment
US4426682A (en) * 1981-05-22 1984-01-17 Harris Corporation Fast cache flush mechanism
US4464712A (en) * 1981-07-06 1984-08-07 International Business Machines Corporation Second level cache replacement method and apparatus
US4458310A (en) * 1981-10-02 1984-07-03 At&T Bell Laboratories Cache memory using a lowest priority replacement circuit
US4504902A (en) * 1982-03-25 1985-03-12 At&T Bell Laboratories Cache arrangement for direct memory access block transfer
US4567578A (en) * 1982-09-08 1986-01-28 Harris Corporation Cache memory flush scheme
AU569857B2 (en) * 1982-12-09 1988-02-25 Sequoia Systems, Inc. Memory backup system
US4607331A (en) * 1983-05-13 1986-08-19 Motorola, Inc. Method and apparatus for implementing an algorithm associated with stored information
US4648030A (en) * 1983-09-22 1987-03-03 Digital Equipment Corporation Cache invalidation mechanism for multiprocessor systems
US4713755A (en) * 1985-06-28 1987-12-15 Hewlett-Packard Company Cache memory consistency control with explicit software instructions
JPS62266634A (ja) * 1986-05-14 1987-11-19 Yokogawa Electric Corp キヤツシユメモリのアクセス制御回路

Also Published As

Publication number Publication date
US4814981A (en) 1989-03-21
DE3786967T2 (de) 1994-01-13
EP0261029B1 (en) 1993-08-11
CA1296106C (en) 1992-02-18
AU603601B2 (en) 1990-11-22
AU7793687A (en) 1988-03-24
JPH0640317B2 (ja) 1994-05-25
CN1048459A (zh) 1991-01-09
EP0261029A3 (en) 1990-05-23
DE3786967D1 (de) 1993-09-16
JPS63163940A (ja) 1988-07-07
CN1019236B (zh) 1992-11-25
BR8705181A (pt) 1988-05-24
EP0261029A2 (en) 1988-03-23
IE872521L (en) 1988-03-18
ATE93074T1 (de) 1993-08-15
CN87106353A (zh) 1988-06-08

Similar Documents

Publication Publication Date Title
CN1010619B (zh) 数字数据处理系统高速缓冲存储器内容的失效标记
DE3751426T2 (de) Busschnittstellenschaltung für digitalen Datenprozessor.
EP0681240B1 (en) Duplicate cache tag memory system
DE3685876T2 (de) Meister-sklave-mikroprozessorsystem mit einem virtuellen speicher.
US4674033A (en) Multiprocessor system having a shared memory for enhanced interprocessor communication
DE3751514T2 (de) Adressieranordnung für RAM-Puffer-Steuereinrichtung.
US4080651A (en) Memory control processor
DE69132652T2 (de) Rechnerdatenleitweglenkungssystem
US5386540A (en) Method and apparatus for transferring data within a computer using a burst sequence which includes modified bytes and a minimum number of unmodified bytes
DE3854369T2 (de) Zentralprozessoreinheit für digitale datenverarbeitungsanordnung mit cache-speicherverwaltungsvorrichtung.
DE68928040T2 (de) Pufferspeichersubsystem für Peripheriesteuerungen und Verfahren
KR920007950B1 (ko) 다이렉트 메모리 액세스 제어장치
JPH01500377A (ja) 2個のシステムクロックサイクルを利用する書込み動作をもったキャッシュメモリユニットを供与する装置及び方法
US5249297A (en) Methods and apparatus for carrying out transactions in a computer system
DE3854770T2 (de) Busadapter für digitales Rechensystem
CA1279407C (en) Buffer storage control system
GB2111271A (en) Data transmission and processing systems
IE61307B1 (en) Method to execute two instruction sequences in an order determined in advance
EP0522728B1 (en) Method for efficient access of data stored in a nexus table
DE19914487A1 (de) Verfahren und Vorrichtung zum Sicherstellen der Datenkonsistenz zwischen einem Ein/Ausgabekanal und einem Prozessor
JPS63208151A (ja) デジタルデータ処理システムのプロセッサと特殊命令プロセッサの間のインターフェイス
EP0321775B1 (en) Secure data processing system using commodity devices
US5212799A (en) Method and apparatus for storing a data block in multiple memory banks within a computer
KR910005379B1 (ko) 데이타처리시스템의 주기억장치에서 제어기능분산을 위해 사용되는 메모리보드
DE3854925T2 (de) Bestimmungssteuerlogik für die arithmetische und logische einheit eines digitaldatenprozessors

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C13 Decision
GR02 Examined patent application
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