CN1123933A - 集成的二级超高速缓冲存储器和带有多路数据端口的存储器控制器 - Google Patents
集成的二级超高速缓冲存储器和带有多路数据端口的存储器控制器 Download PDFInfo
- Publication number
- CN1123933A CN1123933A CN95106102A CN95106102A CN1123933A CN 1123933 A CN1123933 A CN 1123933A CN 95106102 A CN95106102 A CN 95106102A CN 95106102 A CN95106102 A CN 95106102A CN 1123933 A CN1123933 A CN 1123933A
- Authority
- CN
- China
- Prior art keywords
- cache
- information
- storer
- processing element
- memory
- 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.)
- Granted
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
-
- 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/0877—Cache access modes
- G06F12/0884—Parallel mode, e.g. in parallel with main memory or CPU
-
- 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/0893—Caches characterised by their organisation or structure
- G06F12/0897—Caches characterised by their organisation or structure with two or more cache hierarchy levels
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)
Abstract
一种存储器***,其内在L2超高速级冲存储器(以下简称L2)和主存储器中的数据检索被同时启动,使得在处理器在L2中找不到数据事件(丢失)中能将与判优,存储器DRAM地址转换等有关的存储器等待时间降至最少。L2和存储器存取控制置于同一部件(SCU)。L2和存储器有进入CPU的专用端口,使数据能直接转送。这免除了由将数据存入中间装置(如超高速缓存或存储器控制器)所引起的辅助操作。
Description
本发明一般地涉及数据处理***,其中处理器启动对一个2级(L2)超高速缓冲存储器(以下简称“超速缓存”)和主存储器的并行存取。更确切地说,若在L2超速缓存中找到指令或数据则开始并行存取,在存储器被存取以前中断存储器存取。另外,对于处理器的装入操作发现了一种新颖的非分级的存储器方案设计,其中给处理器设置了两个独特的数据端口。
许多现代计算机总体结构采用对存储单元的分等级,以快速存取数据和指令。一般一个1级(L1)超速缓存被集成在中央处理单元(CPU)内并提供一个能与CPU同时运行的小的(8千字节至256千字节)快速存取存储器。一个2级超速缓存提供一个能存储较多的较大超速缓存并位于L1超速缓存和3级(L3)主存储器(在CPU外部)。L2超速缓存通常以与CPU时钟相同的速度运行并由静态随机存取存储器(SRAM)构成。主存储器落后于CPU时钟速度若干周,这里因为采用了较慢的动态随机存取存储器(DRAM),地址转换,判优等等。
传统三级存储器分级***有一个用于L2超速缓存的超速缓存控制部件和一个用于主存储器的独立存储器控制部件。当CPU需要的数据或指令不在超速缓存中时,即超速缓存发生遗漏差错。通常,L1超速缓存的遗漏(数据)被发送到L2超速缓存控制部件,于是该部件检查L2超速缓存的命中(所需数据或指令在L2超速缓存内)。若L2发生遗漏,则该请求被发送到存储器控制部件以从主存储器取出数据。这些事件的接连发生可能引起CPU的相当大的空闲时间量。也就是说,由于为请求将数据送到L2超速缓存,和若发生遗漏则为该数据检验主存储器所必需的时间量而损失了时间。
为了最大限度地减小CPU空闲时间量,US专利4,663,440提出一种分级存储***,其中一个低级存储器包括一个能利用一个以上存储器芯片的双端口。还包括一个与该低级存储器一个端口串行交互作用的高级存储器。这使借助该高级存储器对该低级存储器进行的串行存取能与由计算机***对低级存储器的存取并行发生。然而,该***未揭示发生数据遗漏时对不同等级的存储器同时进行存取。欧洲专利申请0.468,786A2描述了带有独立超速缓存控制器和存储器控制器的存储器***。一个微处理器同时在该超速缓存和主存储器中检索数据。若在超速缓存中未找到该数据,就不用超速缓存检查的等待时间可从主存储器检索该数据。然而,若在超速缓存中找到了该数据,则就不需要再从主存储器检索该数据并取消了对该存储器控制器的访问。那时存储器控制器通过认定一“命中”线,或否定(deasserting)“遗漏”线而结束先前开始的主存储器检索。由存储器控制器的这些动作的任一个均通知:需要结束主存储器的存取周期,因为已在超速缓存中找到了该数据。由此可见,该现有***通过对总线的判断,转换存储器地址,检索存储器单元,开始存取主存储器,而所有这些都占用存储器周期,也就是说,当发生上述活动的周期期间是不能使用存储器的。所以,每当微处理器同时检索超速缓存和存储器时,存储器被存取而变成不能用于任何其他处理,例如从外部控制器的直接存储器存取转移(DMA)等等处理,即使在超速缓存中找到该数据时也如此。即使在超速缓存中找到该数据,这也要引起存储器占用(tyingup)问题。
U.S专利3,896,419指出一种带一L1超速缓存和存储器的典型处理器。该***在进行存储器检索操作的同时为该数据检验超速缓存。若在超速缓存中找到该数据,则禁止存储器的检索。不过当在超速缓存中找到数据时,必须取消从存储器检索数据的端口循环。这样,即使在超速缓存中找到该数据,存储器操作也受到影响。
IBM技术公开会刊,26卷1984年3月10B期(5488-5490页)在5489页上论述了一种传统分级存储器***,其中L2命中表示数据存在于该超速缓存中然后将该所需数据供给L1超速缓存和输出寄存器。
一种典型的先有技术分级存储***示于图1中,图中CPU100包括一个L1超速缓存102并通过数据总线104连接到孤立的L2超速缓存控制器106。L2超速缓存控制器将地址和控制信息供至L2超速缓存108并沿总线107接收来自L2超速缓存的数据。数据总线110互连L2超速缓存控制器106与存储器控制器112,后者给存储器114提供地址和控制信息。该存储器地址和控制信息以及从存储器114接收到的数据沿总线113被传送到存储器控制器112。从该图的存储器***结构来看可见,对L2超速缓存命中而言,必须将该数据从L2超速缓存108供至L2超速缓存控制器106然后再供给CPU100,即两芯片交叉。因此,该传统***要求附加的时钟周期,以将该数据从L2超速缓存通过超速缓存控制器106移到数据总线104上。类似地当超速缓存发生遗漏而必须从存储器114检索该数据时,必须将数据通过存储器控制器112移到数据总线110上,然后又必须通过L2超速缓存控制器移动才能将其置于数据总线104上供CPU100使用(即,三芯片交叉)。
所以本领域技术人员将会体会多么渴望这样一种存储器***,即,其内同时启动对L2超速缓存和主存储器的访问,但当在L2超速缓存中找到该数据时,又使主存储器不被访问。进一步还可看出:其内设有独特端口的存储器***使L2超速缓存能将数据直接供给一处理部件而不是通过超速缓存控制器将数据送至L1超速缓存,这将提高该***的速度和效率。此外,允许主存储器直接而不是通过存储器控制器和超速缓存控制器连接到CPU中的L1超速缓存的独特端口也提高了***效率。
与先有技术相反,本发明提供了一种非分级存储器***,其中,L2超速缓存和主存储器中的数据检索是同时开始的。这使得在由处理器寻找的数据不在L2中(遗漏)事件中,可最大限度地减小与判优相关的存储器等待时间,存储器DRAM地址转换,等等时间。本发明使得在触发任何存储器控制信号之前,能中断对存储控制部件中的任何存储器的访问。因此,对L2和存储器的访问可同时启动,但若在L2超速缓存中找到数据(命中),则存储控制部件可在任何性能存在冲突(performance impact)之前中断存储器存取。照这样,存储器甚至不知道正在进行中的存取和能继续做的其他工作,例如DMA传送等等。即使不再进行任何其他存储器操作,仍存在由于还未启动DRAM所获得的有效性能保存。本领域技术人员将理解:DRAM需要背对背访问之间的一个予充电时间。这样,跟随错误存储器操作(L2命中)的存储器操作,则由于DRAM的予充电时间而不一定要截止。
再者,本发明提供一种独特的非分层存储器方案,其中L2超速缓存将数据或指令直接供给CPU。在传统三级存储器***中,L2通过处理器将所需数据/指令送到L1超速缓存,再由后者将其送到CPU。也就是就,先有技术***要求来自主存储器的数据要经过L2超速缓存供给CPU。换言之,不存储任何CPU的专门端口使数据能直接供给处理器。然而,在本发明***中,L2超速缓存将数据或指令直接送至已请求该信息的处理部件。与此同时,将该指令/数据置于L1超速缓存以便接着由处理部件使用。照这样,节省了大量由旁路L1超速缓存引起的周期。
广义地说,本发明将L2和存储器访问控制置于单一部件中,例如存储控制部件(SCU)中。这样,L2超速缓存控制程序可在极短的时间周期内将L2命中事件传到存储器控制部件,使存储器控制器能在主存储器本身存在任何撞击以前即中断该存储器访问。也就是说,该存储器访问是在使任何存储器信号触发之前即被中断。这样,如前面已讨论过,由于错误DRAM的予充电时间使得紧接的存储器操作不会被截止。
此外,本发明的L2超速缓存是与L1并联连接的故诸如数据/指令(“信息”)等的不同处理部分能被直接供给请求该信息的处理器,而无需附加与将来自L2超速缓存信息存入L1超速缓存和然后通过处理器从L1超速缓存检索该信息的相关周期时间。一个第一专用端口为从主存储器到CPU中的L1超速缓存而设置。第二专用端口提供L2超速缓存和传送CPU中定点部件和浮点部件之间信息的寄存器之间的直接存取。一个2级(L2)超速缓存命中(hit)由于不存在附加芯片交叉将以较少周期使数据返回到CPU。例如,就图1先有技术***而言,可见:来自L2 108的数据在被供至CPU100之前必须存入L2超速缓存控制器106中。要从L2 108检索数据,将其存入控制器106然后沿总线104将该数据供至CPU100需要大量的处理时间。当L2超速缓存发生丢失时,与先有技术的分级存储***相比,本发明也节省了时间周期。在此情况下,必须从主存储器恢复该数据。在图1传统***中可看到:从存储器114来的数据必须传送到存储器控制器112,L2控制器106然后到CPU100。相反,本发明提供一专用端口,当L2超速缓存发生遗漏时,使数据从主存储器可直接供至CPU。
本领域技术人员在考虑结合附图所作的以下说明后将会更清楚地了解本发明的这些和其他目的,性能和优点。
图1是表示先有技术分级存储***中的各装置的互相连接的示意图;
图2是包含本发明的一个处理器***的方块图,其中示出L1,L2和主存储器;
图3是本发明处理器的存储控制部件(SCU)的方块图,示出并行的L2和主存储器存取特性;
图4是表示本发明L1和L2超速缓存的互连情况和传送这些超速缓存和不同处理部件之间的数据的方框图;
图5是表示当传统***中,L2超速缓存发生遗漏时需要在主存储器中存取数据或指令的CPU周期的时序图;
图6是表示当本发明***中发生L2超速缓存遗漏时需要在主存储器中存取数据或指令的CPU周期的时序图;
图7是表示当传统***中发生超速缓存命中时需要在主存储器中存取数据或指令的CPU周期的时序图;和
图8是从本发明存储器***中的L2超速缓存中检索数据或指令所必需的CPU周期的时序图。
参照图2,该图示出本发明总体结构的一个方块图,其中标号1表示例如用在由IBM公司制造的RISC System/6000工作站(RISC System/6000是一种IBM的商标)中的多芯片模块超定标处理器芯片组(CPU)(superscalar processor chip set)。指令超速缓存部件3包括分支处理部件4(图4)和一级指令超速缓存11。分支指令部件(BIU)和分支处理部件(BPU)处理输入指令和将这些指令分配给浮点部件(FPU)5和定点部件(FXU)7。BPU提供该***范围内的所有分支,中断和条件、码功能。本领域的技术人员将懂得:FPU5执行浮点指令而FXU7执行定点算术运算(见IBM RISC System/6000技术,16-42页,由IBM,1990年出版,以更详细地说明RISC System/6000处理部件)。
存储控制部件(SCU)9控制CPU与2级超速缓存15和主存储器17之间的存取。SCU9包括2级超速缓存目录10,该目录10用于将L2超速缓存中的数据或指令(本文所用“信息”将指数据和指令两者)的地址同所需信息地址进行比较,以确定是否L2已发生超速缓存命中或遗漏。从图2可见:SCU9不接收来自L2超速缓存15或存储器17的数据。SCU9仅仅给L2和存储器提供地址和控制信息。专用端口从:(1)L215至DCU13和BPU3;(2)存储器17至DCU13,这些端口允许数据直接供到CPU而没有与中间将数据存入SCU9中的相关辅助操作。
一级数据超速缓存部件(DCU)13被连接到FPU5和FXU7并贮存可能再次为FPU或FXU所必需的新近存取的数据。DCU13包括寄存器,锁存器之类(未示出)以及仅贮存数据的数据超速缓存(D—超速缓存)14。可以看出:实施本发明的一个最佳***的总体结构已将L1超速缓存分隔为数据存储部分14和指令部分(I—超高速缓冲存储器)11。这样,贮存在L1超高速***的数据和指令在物理上更接近于使用数据和指令的各自处理部件。也就是说,I—超速缓存11实体处于BPU3(包含在ICU3中)的附近,以致存入I—超速缓存器11中的指令能易于和快速地供给BPU4或从BPU4接收到这些指令。同样,D-超速缓存器14位于接近FPU5和FXU7处,使这些执行部件能迅速访问存入D-超速缓存14中的数据。L2超速缓存器15是连接到存储控制部件9和再装入总线2两者的多个静态随机存取存储器(SRAM)装置。从SCU9接收到存入L2超速缓存器15中的信息请求,在L2找到时,便沿再装入总线2供给请求处理部件和L1超速缓存器。
存储器的第三级是连接到SCU9和DCU13的一套动态随机存取存储器装置(DRAM)的主存储器17。主存储器17是本发明***中最慢的存储装置,因为它需要最大量的时钟周期去从那里检索信息。存储器17被直接连接到DCU13,DCU13允许信息从存储器直接供至FPU5和FXU7。该信息借助寄存器之类装置在DCU13中被接收然后被加到执行部件。当然,来自存储器17的信息也能被供至D-超速缓存器14,若从存储器17接收到指令,则指令信息从DCU13供到再装入总线2然后送到ICU3。数据和指令信息以这种方式可从存储器17直接供至处理部件1。
在图1中还示出的PBUS6将数据或指令请求传送到SCU9。***输入/输出总线(SIO)将DCU13(和不同处理部件)同输入/输出(I/O)控制芯片(XIO)21和23互连。这些XIO芯片21,23协调诸如Microchannel(MCA)总线(Microchannel是IBM公司的一个商标)和用于互连不同处理部件的内部CPU总线之间的数据传输。示出的只读存储器(ROS)芯片19(也连到SIO总线12)提供用于引导(boot)CPU的基本子程序和代码,例如电源开自测试(POST)等诸如此类。
从图2和4可见:ICU3不仅借助PBUS6给SCU9发出信息请求,而且将指令送至FPU5和FXU7供执行之用。FPU5和FXU7两者均借助两根四芯字总线连到DCU13以便在L1超速缓存器14和处理部件之间传送信息。FXU7也被连到PBUS6以使定点部件也能请求来自L1超速缓存器14的信息。超速缓存器15接收离开(off of)总线16(将其与SCU9互连)的地址和控制信息并也由再装入总线2通过L1超速缓存器13(见图4)中的寄存器51直接连接到FPU5和FXU7。此外,如图4所示,再装入总线2通过寄存器50将超速缓存器15直接连到ICU3中的BPU4。主存储器17接收脱开将其与SCU9内连的总线18的地址和控制信息并通过总线20直接连到DCU13。图2还示出的本发明结构上的一个新颖特征在于L2超速缓存器15和存储器17具有分别到处理部件和L1超速缓存的专用端口。这样,来自存储器17的信息在被送往L1超速缓存器之前无需先通过L2超速缓存器15。此外,L2超速缓存器已通过再装入总线2被直接连到处理部件和ICU3中的寄存器及L1超速缓存器(见图4)。这使得来自L2超速缓存器15的信息能比传统***更快地移入当前请求的执行部件,这是因为没有附加的芯片线路交叉所致。因此可见本发明是一种非分级存储***,其中L2超速缓存器被直接连接到处理部件,因而旁通L1超速缓存器13。此外,主存储器17被直接连到L1超速缓存器13,旁通L2超速缓存器15。与图1的先有技术***比较可知,主存储器还旁通了存储器控制器和超速缓存器控制器致使为给CPU提供被请求信息仅需要单一芯片交叉(chip crossing)。
此外,本发明的专用端口使存储器总线20和再装入总线得以分离致使任何总线装入降至最小。这使得这些总线能将信息直接输入至CPU,而与控制器,或诸如此类的相反。这样,总线2和20能以比传统***快得多的速率操作,传统***则是将整个存储***(例如L2超速缓存和主存储器)直接连接到一根总线,而该总线连到CPU。
图4更详细也示出本发明的非分级方面的情况。更具体地说,ICU3与L1 I—超速缓存器11和BPU4以及寄存器50一道示出。可见:I—超速缓存器11是与分支处理器4如此互连的,以致指令是从该超速缓存器供给BPU4的。寄存器50被直接连到再装入总线2,从而连到L2超速缓存器15。指令和分支处理器3也被连接到FPU5和FXU7以使BIU能将指令分配给浮点和定点部件。图中示出包括D—超速缓存器14的L1超速缓存器13被内连至FPU5和FXU7,以便可迅速通过这些处理部件获得执行指令所需的数据。DCU13也包括被内连到再装入总线2和L2超速缓存器15的寄存器51。可见:本发明的一个最佳实施例将L1超速缓存器划分为分别用于指令和数据的I—超速缓存器11和D—超速缓存器14。此时这些分割的分段物理位置接近于那些最可能需要其内所存信息的处理部件。也就是说,BPU4需要指令,这样就将I—超速缓存器置于BPU4的附近。同样,FPU5和FXU7需要数据,故将D-超速缓存器14置于这些处理部件附近。
正如以上所述,传统分级存储***将来自每一存储器级的信息依次供至下一级存储器直至该信息最终到达请求中的处理部件。然而,本发明使在一个两级超速缓存器中找到的信息能直接供至请求中的处理器。例如,若L2超速缓存器对一其中所存的指令发生命中,则该指令从L2 15,经再装入总线2被直接供至寄存器50。在下一周期期间,该指令被同时移入BPU4和I—超速缓存器11。由此可见:当对存入L2超速缓存器的一指令发生超速缓存器命中时,L1超速缓存器被完全旁路。若L2超速缓存是对数据信息命中的,则该信息被供至寄存器51然后经由FPU5或FXU7存取,而不是事先存入L1 D-超速缓存14。当然,指令和数据信息将被同时分别存入I—超速缓存11和D—超速缓存14,致使该信息在下次需要它时能更快地被恢复,即,从L1超速缓存恢复信息快于从L2超速缓存的恢复,因为L1超速缓存更接近于执行部件。
此外,本发明的这种非分级性能还扩展到主存储器17。传统做法是,当L1和L2超速缓冲发生遗漏时,要在主存储器中找到该信息,然后将该信息传送到存储器控制器、L2超速缓存控制器并最后送到L1超速缓存,以便供请求中的处理部件检索之用。相反,本发明设置一专用端口,该端口借助总线20将主存储器17与CPU中的L1超速缓存13加以连接。这种将存储器17同CPU的直接互连是通过将存储器控制器和L2超速缓存控制器两者均置于SCU9中,SCU9仅发出地址和控制信号,来完成的。如上所指出的,传统***有一独立的超速缓存和存储器控制器,在数据能被供至CPU之前,该控制器和超速缓存接收被请求数据并要求附加的芯片线路交叉。这些附加的芯片线路交叉由于要产生地址和控制信号以及中间过渡地贮存被请求数据故需要以机器周期为形式的大量辅助操作。
更具体地说,从图4可看出:存储器17是被直接连接到DCU13中的寄存器51的。这使得数据信息和指令信息能从存储器17直接供至寄存器51。执行部件5和7将从寄存器51直接存取数据信息。不过,指令信息被置于再装入总线2,以便转移至寄存器50。然后由BPU4从寄存器50存取该指令信息。指令信息和数据信息也从寄存器50和51分别被供至1—超速缓存11和D-超速缓存14,以便供后来执行部件使用。
由FPU5或FXU7所请求的数据也能从L2超速缓存15经再装入总线2直接提供。也就是说,当请求数据并在L2超速缓存15发生命中时,该数据被送入寄存器51然后在下一周期期间依次移到请求中的处理部件(FPU5或FXU7)和L1 D-超速缓存14。虽然寄存器51物理位置处于L1超速缓存芯片13内,但并没有与贮存来自其内L2超速缓存15的数据相联系的L1等待时间,即,不存在地址转移之类的操作。这样从L2超速缓存15和存储器17来的数据旁路L1超速缓存13。在最佳实施例中,寄存器51和L1超速缓存仅为方便起见而放置在同一芯片上,因为在那个装置上有可用空间。为包含一附加寄存器而重新设计FPU5或FXU7是不实际的。同样,设置其内仅有一个寄存器的独立芯片也是不合乎要求的。本领域技术人员会理解:将被请求指令和数据分别移入L1 I—超速缓存11和L1 D—超速缓存14将节省时间,因为信息多半是会再次需要的。
图3是构成SCU9的各部件的方块图。所示PBUS6将信息请求从ICU3传送至SCU9。可见:这些信息请求被置于L2请求队列53和存储器请求队列52。这样,由于SCU9包含用于存储器17和L2超速缓存15两者的控制器,所以能并行处理来自PBUS6的信息请求。当信息请求退出队列53时,该请求被输入到L2超速缓存目录10和比较器57。被请求信息同L2超速缓存15中的存储单元比较。即目录10输出地址标识符至比较器57,然后比较器确定超速缓存中的信息是否为ICU3所请求的信息。若不是,超速缓存发生遗漏并允许完成存储器操作,即为所需信息检索主存储器。若通过比较器57匹配从队列53来的所需信息在L2超速缓存中找到该信息,则超速缓存发生命中并将一命中信号送至L2超速缓存控制器55,控制器55又给存储器控制器59发一停止存储器操作信号。
来自存储器请求队列51的信息请求被送至存储器控制器59和存储器DRAM地址变换器61,同时该请求从L2请求队列53被送至L2超速缓存目录10。这使得在L2超速缓存在进行被请求数据检索的同时能开始存储器存取操作。这提供了最大限度地减小了与从存储器17检索信息相关的等待时间,这一优点。
应指出的是:存储器控制器59和L2超速缓存控制器55处于同一集成电路(IC)装置上。这使得停止存储器操作信号能在一个周期内直接从L2超速缓存控制器55供至存储器控制器59。本领域技术人员将理解:这极大地节省了信号在一块IC上的元部件之间转移时所占用的循环时间。存在与在芯片边界上传送相关的大量辅助操作。例如,芯片必须为占用总线而判优然后再实施一种转移协议。因此,由于消除了芯片边界而节省了大量的时钟周期,这提高了性能。也就是说,当出现L2超速缓存命中时,停止存储器操作信号由存储器控制器59接收,后才完成,存储器存取操作和将任何控制信号输出至总线18上的存储器17。因此,当L2超速缓存发生命中,由于未能触发任一存储器操作信号,故不会延迟下一存储器操作。例如,允许连接到总线21或23的MCA适配器在DMA变换期间继续将数据写入主存储器17而没有由于对存储器的拥有方面进行的判优而引起的中断。此外,没有DRAM扰动,即紧接着的存储器操作不会因DRAM的予充电而被推迟。
总之,不仅由于同时开始L2超速缓存和存储器的存取而最大限度地减少了与存储器存取相关的等待时间,而且由于发生超速缓存命中时,允许存储器继续进行处理而最大限度地增大了存储器的可用时间。仅仅当比较器57确定存在超速缓存遗漏时,主存储器是否了解正被请求的信息。
图5是表示当诸如图1所示等传统***中发生L2超速缓存遗漏时所用周期的时序图。在周期1中,一个再装入请求置于数据总线104上而在周期2期间,传统超速缓存控制器106确定:L2超速缓存已发生遗漏。接着,在周期4,存储器控制器请求信号变成有效(由于发生芯片交叉,要求周期3和4要将从超速缓存控制器来的L2超速缓存遗漏信号通知存储器控制器112),并在周期5期间,在存储器控制器112中存在存储器判优和DRAM地址变换。在周期6和7,产生行/列地址,并在周期6和7分别启动行地址选通(RAS)信号和列地址选通(CAS)信号。当这些信与有效时,行和列地址信息在总线上。来自存储器的信息在周期12中被输出至存储器控制器112(在存储器数据总线113上)并在周期14期间置于数据总线110上(图1和5的数据总线2)。在周期16中能将检索出的数据放在数据总线104(图1和5的数据总线1)并移入CPU100中的L1超速缓存102之前,遇到另一次芯片交叉。应注意:为在芯片之间移送数据这里用了两个时钟周期作为时间损失,不过,其他传统***对每个芯片交叉可能要求2个以上周期。因此可见:传统分级存储***在已出现L2超速缓存遗漏时,为从主存储器检索信息至少要求16周期时间。
参照图6,该图示出说明一超速缓存发生遗漏时,在本发明的L2超速缓存15和主存储器17之间的控制顺序。在周期1期间,处理部件之一将再装入请求置于PBUS6上,如由有效PBUS信号所示,而在周期2SCU9装入被请求地址并执行查阅L2超速缓存目录。将该目录标记同出自PBUS6上发出的读地址位进行比较。以判定该请求是否命中或遗漏。在周期2期间,并行执行存储器判优和存储器DRAM行/列地址产生。在此情况下,已假设:已出现超速缓存遗漏但未启动停止存储器(STOP MEMORY)信号,如图6中可见。所以,在周期3和4,产生存储器行/列地址,而在周期3,启动行地址选通信号。在周期4期间,启动列地址选通信号。因此,在周期4,行和列地址均在总线(图2的总线18)上。然后这些信号由SCU9提供,在周期9期间存储器17开始将信息送至存储器数据总线20上。此时,数据被送至DCU13。若该请求是对数据存储器作出的,则本发明仅需9个周期去从存储器检索数据并使其对DCU13中的D-超速缓存14有效。然而若请求是对指令的,则这些指令将在周期11置于再装入总线并在此时对ICU11有效。在任何情况下,信息(包括数据和指令)在周期11被放在再装入总线2以使信息被送至L2超速缓存。下一次该信息以此方式被请求,将在L2超速缓存中找到和一个超速缓存命中,而不是将发生L2超速缓存遗漏。在周期11,启动L2写使能和芯片使能信号,以使该信息能以并行方式沿存储器数据总线20同时写到L2超速缓存15和从存储器17写入L1超速缓存13,以避免将来的超速缓存丢失。
因此,可见:与传统***中的16周期相比较,本发明***允许仅在9周期(对数据)中将信息置于DCU13中,而仅在11周期(对指令)中置于再装入总线2上。这是由于本发明的新颖特征所致,即本发明为存储器设有一专用端口以将信息直接供至CPU。
图7是一表示一种传统分级存储器***,当L2超速缓存命中发生时的定时的时序图。在周期1期间,请求处理部件将一再装入请求置于数据总线104上,在周期2中,L2超速缓存控制器106查阅目录并确定该信息处于L2超速缓存中。命中(HIT)信号在周期2被启动,指示要检索的信息处于该超速缓存中。在周期4,启动L2超速缓存芯片使能信号并将L2地址送到L2超速缓存108。在周期5,被检索信息从L2超速缓存108输出至超速缓存控制器106,在周期7期间,由于在数据置于总线104之前,从L2超速缓存108供至超速缓存控制器106时所需的附加芯片线路交叉,该数据从数据总线104被连续供至CPU100。由此可见:对于个传统分级存储***而言,在任何L2超速缓存的指令或数据置于数据总线104上之前至少经过了7个周期。
在图1所示先有技术中,存储器存取是如此之慢,以致存储器操作,例如,判优,存储器DRAM地址变换,行/列地址产生等诸如之类甚至未被启动,因为L2超速缓存中的信息的存在,即L2和存储器操作均是独立的和顺序的。然而其他传统***可能在读出超速缓存目录的同时(周期2)启动存储器存取。在此情况下,由于个别超速缓存控制器必需给一独立的存储器控制器发送一信号,而给存储器操作至少附加了三个(3)周期,然而,本发明将超速缓存控制器和存储器控制器组合在直接控制L2超速缓存和存储器的单一存储控制部件(SCU9)中。这样,在从SCU9发出任何到存储器17的信号之前可中断存储器操作。因此存储器17可连续正常操作。
图8是说明本发明专用端口是怎样在L2超速缓存和CPU之间将数据和指令比传统***更快地供至CPU的时序图。再者,图8表示当L2超速缓存发生命中时,在从SCU9将任何信号输出到存储器17之前,存储器存取是怎样被停止的。
在周期1期间,处理部件之一,例如FXU7或BPU4,如由PBUS正确信号变成有效所示,将一再装入请求置于处理器总线PBUS6上。则PBUS6将信号发至SCU9。在周期2中,SCU9装入被请求信息的地址并读出L2超速缓存目录10,以执行查阅L2超速缓存目录。然后将目录10的目录标记同来自PBUS6上发送的真实地址位进行比较(用图3的比较器57)以确定是否已发生超速缓存命中或遗漏。在周期2,并行地开始SCU9中的存储器存取操作。在周期2期间,执行存储器判优和存储器DRAM行/列地址的产生。在此情况下已发生L2超速缓存命中,所以,启动一停止—存储器信号,以防止存储器操作一直被启动。停止存储器信号中断由SCU9产生的存储器行/列地址。此外,存储器RAS和存储器CAS不被送到存储器(见图6)。
在周期4期间,SCU9通过启动L2芯片使能信号和将L2地址从SCU9发送到超速缓存15来开始L2超速缓存的读存取。周期5中,开始将来自L2超速缓存15的信息送到再装入总线2并送至请求处理部件(看图2)。从比较图7和8可见:传统分级存储器为从L2超速缓存检索信息要求7个周期,而本发明仅需要5个周期,因此显著节省了处理时间量。这种节省是由于以下事实:专用L2端口使数据能从超速缓存直接传至CPU,而不是通过中间过渡超速缓存控制器芯片,或诸如此类的装置。
现虽已图示和描述了某些最佳实施例,但应理解,可能对其作出许多未脱离所附权利要求书范围的变化和改型。
Claims (20)
1.包括处理部件、外部超高速缓冲存储器和存储器的计算机***,包括:
用于确定所述处理部件所需信息是否存在所述外部超高速缓冲存储器或所述存储器中的判定装置;和
用于将所述信息从所述外部超高速缓冲存储器或所述存储器直接供到所述处理部件的供给装置。
2.根据权利要求1的***,其特征在于:所述供给装置包括用于将所述信息从所述外部超高速缓冲存储器或所述存储器直接传送到包含在所述处理部件中的至少一个执行部件的传送装置。
3.根据权利要求2的***,其特征在于:所述传送装置包括:
用于接收来自所述外部超高速缓冲存储器的所述信息的第一接收装置;和
用于接收来自所述存储器的所述信息的第二接收装置。
4.根据权利要求3的***,其特征在于:所述第一接收装置包括:
超高速缓冲存储器总线,用于将所述信息直接从所述外部超高速缓冲存储器传送到所述处理部件;
存储装置,用于贮存来自所述处理部件中的外部超高速缓冲存储器的所述信息;和
存取装置,用于通过所述至少一个执行部件存取来自外部超高速缓冲存储器的所述信息。
5.根据权利要求4的***,其特征在于:所述第二接收装置包括
存储器总线,用于将所述信息直接从所述存储器传送至所述处理部件;
存储装置,用于贮存来自所述处理部件中的存储器的所述信息;和
存取装置,用于通过所述至少一个执行部件存取来自存储器的所述信息。
6.根据权利要求5的***,其特征在于:所述信息包括数据信息和指令信息。
7.根据权利要求6的***,其特征在于:所述第一和所述第二接收装置还包括:
用于将所述数据信息存到所述处理***内部的一个数据超高速缓冲存储器部件中的装置;和
用于将所述指令信息存到所述处理***内部的一个指令超高速缓冲存储器部件中的装置。
8.根据权利要求7的***,其特征在于:所述第一和第二接收装置还包括:
用于当所述数据信息被直接供至所述至少一个执行部件时,同时将所述数据信息存入所述内部数据超高速缓冲存储器的装置;和
用于当所述指令信息被直接供至所述至少一个执行部件时,同时将所述指令信息存入所述内部指令超高速缓冲存储器中的装置。
9.根据权利要求2的***,其特征在于:所述传送装置包括用于旁路包含在所述处理部件中的内部超高速缓冲存储器的装置。
10.根据权利要求1的计算机***,其特征在于:所述判定装置包括:
用于从所述外部超高速缓冲存储器和所述存储器同时起动一检索信息的请求的装置;
用于判定所述信息是否在所述外部超高速缓冲存储器中的装置;和
用于在所述信息处于所述外部超高速缓冲存储器时,则在从所述处理部件传送任何存储器存取操作之前中断从所述存储器检索信息的所述请求的中断装置。
11.一种在一计算机***的处理部件与外部超高速缓冲存储器和存储器之间转移信息的方法,该方法包括以下步骤:
判定由所述处理部件请求的信息是否贮存在所述外部超高速缓冲存储器或所述存储器;和
使所述被请求信息或从所述外部超高速缓冲存储器或从所述存储器直接,供给所述处理部件。
12.根据权利要求11的方法,其特征在于:所述供给步骤包括:将所述信息或从所述外部超高速缓冲存储器或从所述存储器直接转移到包含在所述处理部件中的至少一个执行部件。
13.根据权利要求12的方法,其特征在于:所述转移步骤包括以下诸步骤:
接收来自所述外部超高速缓冲存储器的所述信息;和
接收来自所述存储器的所述信息。
14.根据权利要求13的方法,其特征在于;所述接收来自所述外部超高速缓冲存储器信息的步骤包括以下步骤:
将所述信息直接从所述外部超高速缓冲存储器传送到所述处理部件;
将来自外部超高速缓冲存储器的所述信息贮存在所述处理部件中;和
借助所述至少一个执行部件存取来自外部超高速缓冲存储器的所述信息。
15.根据权利要求14的方法,其特征在于:所述接收来自所述存储器信息的步骤包括以下步骤:
将所述信息直接从所述存储器传送到所述处理部件;
将来自所述存储器的所述信息存入所述处理部件;和
通过所述至少一个执行部件存取来自存储器的所述信息。
16.根据权利要求15的方法,其特征在于:所述信息包括数据信息和指令信息。
17.根据权利要求16的方法,其特征在于:所述接收来自所述外部超高速缓冲存储器信息的步骤和接收来自所述存储器信息的步骤还包括以下步骤:
将所述数据信息贮存在所述处理***内部的一个数据超高速缓冲存储器部件内;和
将所述指令信息贮存在所述处理***内部的一个指令高速缓冲存储器部件内。
18.根据权利要求17的方法,其特征在于:所述接收来自所述外部超高速缓冲存储器信息的步骤和接收来自所述存储器信息步骤还包括以下步骤:
在将所述数据信息直接供给所述至少一个执行部件的同时,将所述数据信息并行存入所述内部数据超高速缓冲存储器;和
在将所述指令信息直接供给所述至少一个执行部件的同时将所述指令信息并行存入所述内部指令超高速缓冲存储器。
19.根据权利要求12的方法,其特征在于:所述转移步骤包括:旁路包含在所述处理部件内的一个内部超高速缓冲存储器的步骤。
20.根据权利要求11的方法,其特征在于:所述判定步骤包括以下步骤:
同时启动从所述外部超高速缓冲存储器和所述存储器的检索信息请求;
判定所述信息是否处在所述外部超高速缓冲存储器内;和
当所述信息处在所述外部超高速缓冲存储器内时,在从所述处理部件传送任何存储器存取操作之前中断从所述存储器检索信息的所述请求。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US245,786 | 1994-05-19 | ||
US245786 | 1994-05-19 | ||
US08/245,786 US6226722B1 (en) | 1994-05-19 | 1994-05-19 | Integrated level two cache and controller with multiple ports, L1 bypass and concurrent accessing |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1123933A true CN1123933A (zh) | 1996-06-05 |
CN1089462C CN1089462C (zh) | 2002-08-21 |
Family
ID=22928068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN95106102A Expired - Fee Related CN1089462C (zh) | 1994-05-19 | 1995-05-09 | 采用集成的超高速缓存和存储器控制器的***和方法 |
Country Status (11)
Country | Link |
---|---|
US (1) | US6226722B1 (zh) |
EP (1) | EP0760133A1 (zh) |
JP (1) | JPH07319767A (zh) |
KR (1) | KR950033837A (zh) |
CN (1) | CN1089462C (zh) |
BR (1) | BR9502022A (zh) |
CA (1) | CA2142799A1 (zh) |
CZ (1) | CZ9603197A3 (zh) |
HU (1) | HUT76241A (zh) |
PL (1) | PL176554B1 (zh) |
WO (1) | WO1995032472A1 (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1306419C (zh) * | 2003-05-02 | 2007-03-21 | 威盛电子股份有限公司 | 一种高速缓存及从高速缓存读取数据的方法 |
CN1313935C (zh) * | 2002-10-03 | 2007-05-02 | 英特尔公司 | 用于减少存储器设备等待时间的装置、方法和*** |
CN100345216C (zh) * | 2002-07-19 | 2007-10-24 | 海力士半导体有限公司 | 用于高速数据存取的动态随机存取存储器 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000181796A (ja) * | 1998-12-14 | 2000-06-30 | Nec Corp | 情報処理装置 |
US6578110B1 (en) | 1999-01-21 | 2003-06-10 | Sony Computer Entertainment, Inc. | High-speed processor system and cache memories with processing capabilities |
US6484237B1 (en) * | 1999-07-15 | 2002-11-19 | Texas Instruments Incorporated | Unified multilevel memory system architecture which supports both cache and addressable SRAM |
US6625707B2 (en) * | 2001-06-25 | 2003-09-23 | Intel Corporation | Speculative memory command preparation for low latency |
US6835591B2 (en) * | 2001-07-25 | 2004-12-28 | Nantero, Inc. | Methods of nanotube films and articles |
US6919592B2 (en) * | 2001-07-25 | 2005-07-19 | Nantero, Inc. | Electromechanical memory array using nanotube ribbons and method for making same |
US7566478B2 (en) * | 2001-07-25 | 2009-07-28 | Nantero, Inc. | Methods of making carbon nanotube films, layers, fabrics, ribbons, elements and articles |
US6643165B2 (en) | 2001-07-25 | 2003-11-04 | Nantero, Inc. | Electromechanical memory having cell selection circuitry constructed with nanotube technology |
US6574130B2 (en) * | 2001-07-25 | 2003-06-03 | Nantero, Inc. | Hybrid circuit having nanotube electromechanical memory |
US6706402B2 (en) | 2001-07-25 | 2004-03-16 | Nantero, Inc. | Nanotube films and articles |
US6789169B2 (en) * | 2001-10-04 | 2004-09-07 | Micron Technology, Inc. | Embedded DRAM cache memory and method having reduced latency |
US6784028B2 (en) | 2001-12-28 | 2004-08-31 | Nantero, Inc. | Methods of making electromechanical three-trace junction devices |
US7176505B2 (en) * | 2001-12-28 | 2007-02-13 | Nantero, Inc. | Electromechanical three-trace junction devices |
US7467377B2 (en) * | 2002-10-22 | 2008-12-16 | Intel Corporation | Methods and apparatus for compiler managed first cache bypassing |
US6941421B2 (en) * | 2002-10-29 | 2005-09-06 | International Business Machines Corporation | Zero delay data cache effective address generation |
US20060248287A1 (en) * | 2005-04-29 | 2006-11-02 | Ibm Corporation | Methods and arrangements for reducing latency and snooping cost in non-uniform cache memory architectures |
US7562190B1 (en) | 2005-06-17 | 2009-07-14 | Sun Microsystems, Inc. | Cache protocol enhancements in a proximity communication-based off-chip cache memory architecture |
US7444473B1 (en) * | 2005-06-17 | 2008-10-28 | Sun Microsystems, Inc. | Speculative memory accesses in a proximity communication-based off-chip cache memory architecture |
US7496712B1 (en) | 2005-06-17 | 2009-02-24 | Sun Microsystems, Inc. | Proximity communication-based off-chip cache memory architectures |
US20070130114A1 (en) * | 2005-06-20 | 2007-06-07 | Xiao-Feng Li | Methods and apparatus to optimize processing throughput of data structures in programs |
US7596661B2 (en) * | 2005-09-01 | 2009-09-29 | Mediatek Inc. | Processing modules with multilevel cache architecture |
US8055847B2 (en) * | 2008-07-07 | 2011-11-08 | International Business Machines Corporation | Efficient processing of data requests with the aid of a region cache |
JP5118731B2 (ja) | 2010-08-12 | 2013-01-16 | 株式会社東芝 | キャッシュユニット及びプロセッシングシステム |
US10474584B2 (en) * | 2012-04-30 | 2019-11-12 | Hewlett Packard Enterprise Development Lp | Storing cache metadata separately from integrated circuit containing cache controller |
US9405687B2 (en) * | 2013-11-04 | 2016-08-02 | Intel Corporation | Method, apparatus and system for handling cache misses in a processor |
KR102161689B1 (ko) * | 2013-12-10 | 2020-10-05 | 삼성전자 주식회사 | L2 캐시 특성을 조절할 수 있는 멀티-코어 cpu 시스템, 이의 동작 방법, 및 이를 포함하는 장치들 |
CN105701040B (zh) * | 2014-11-28 | 2018-12-07 | 杭州华为数字技术有限公司 | 一种激活内存的方法及装置 |
US9658963B2 (en) * | 2014-12-23 | 2017-05-23 | Intel Corporation | Speculative reads in buffered memory |
JP6367704B2 (ja) * | 2014-12-25 | 2018-08-01 | 株式会社バイオス | 記憶制御システム及び記憶制御装置 |
JP6478843B2 (ja) * | 2015-07-07 | 2019-03-06 | ルネサスエレクトロニクス株式会社 | 半導体装置及びキャッシュメモリ制御方法 |
US11055221B2 (en) * | 2019-03-22 | 2021-07-06 | Samsung Electronics Co., Ltd. | Speculative DRAM read, in parallel with cache level search, leveraging interconnect directory |
US11288067B2 (en) * | 2019-05-24 | 2022-03-29 | Texas Instruments Incorporated | Vector reverse |
US11422947B2 (en) * | 2020-08-12 | 2022-08-23 | International Business Machines Corporation | Determining page size via page table cache |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3896419A (en) * | 1974-01-17 | 1975-07-22 | Honeywell Inf Systems | Cache memory store in a processor of a data processing system |
US4161024A (en) | 1977-12-22 | 1979-07-10 | Honeywell Information Systems Inc. | Private cache-to-CPU interface in a bus oriented data processing system |
US4823259A (en) * | 1984-06-29 | 1989-04-18 | International Business Machines Corporation | High speed buffer store arrangement for quick wide transfer of data |
US4797814A (en) * | 1986-05-01 | 1989-01-10 | International Business Machines Corporation | Variable address mode cache |
US5202972A (en) * | 1988-12-29 | 1993-04-13 | International Business Machines Corporation | Store buffer apparatus in a multiprocessor system |
US5155828A (en) * | 1989-07-05 | 1992-10-13 | Hewlett-Packard Company | Computing system with a cache memory and an additional look-aside cache memory |
US5214765A (en) * | 1989-08-31 | 1993-05-25 | Sun Microsystems, Inc. | Method and apparatus for executing floating point instructions utilizing complimentary floating point pipeline and multi-level caches |
US5261066A (en) * | 1990-03-27 | 1993-11-09 | Digital Equipment Corporation | Data processing system and method with small fully-associative cache and prefetch buffers |
US5210845A (en) * | 1990-11-28 | 1993-05-11 | Intel Corporation | Controller for two-way set associative cache |
US5345576A (en) * | 1991-12-31 | 1994-09-06 | Intel Corporation | Microprocessor simultaneously issues an access to an external cache over an external cache bus and to an internal cache, cancels the external cache access on an internal cache hit, and reissues the access over a main memory bus on an external cache miss |
-
1994
- 1994-05-19 US US08/245,786 patent/US6226722B1/en not_active Expired - Fee Related
- 1994-12-27 EP EP95905594A patent/EP0760133A1/en not_active Withdrawn
- 1994-12-27 CZ CZ19963197A patent/CZ9603197A3/cs unknown
- 1994-12-27 PL PL94316998A patent/PL176554B1/pl not_active IP Right Cessation
- 1994-12-27 WO PCT/EP1994/004315 patent/WO1995032472A1/en not_active Application Discontinuation
- 1994-12-27 HU HU9603142A patent/HUT76241A/hu unknown
-
1995
- 1995-02-17 CA CA002142799A patent/CA2142799A1/en not_active Abandoned
- 1995-05-09 CN CN95106102A patent/CN1089462C/zh not_active Expired - Fee Related
- 1995-05-10 JP JP7111435A patent/JPH07319767A/ja active Pending
- 1995-05-11 BR BR9502022A patent/BR9502022A/pt not_active Application Discontinuation
- 1995-05-18 KR KR1019950012401A patent/KR950033837A/ko not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100345216C (zh) * | 2002-07-19 | 2007-10-24 | 海力士半导体有限公司 | 用于高速数据存取的动态随机存取存储器 |
CN1313935C (zh) * | 2002-10-03 | 2007-05-02 | 英特尔公司 | 用于减少存储器设备等待时间的装置、方法和*** |
CN1306419C (zh) * | 2003-05-02 | 2007-03-21 | 威盛电子股份有限公司 | 一种高速缓存及从高速缓存读取数据的方法 |
Also Published As
Publication number | Publication date |
---|---|
CA2142799A1 (en) | 1995-11-20 |
PL176554B1 (pl) | 1999-06-30 |
KR950033837A (ko) | 1995-12-26 |
CZ9603197A3 (cs) | 2002-06-12 |
JPH07319767A (ja) | 1995-12-08 |
EP0760133A1 (en) | 1997-03-05 |
WO1995032472A1 (en) | 1995-11-30 |
CN1089462C (zh) | 2002-08-21 |
HUT76241A (en) | 1997-07-28 |
PL316998A1 (en) | 1997-03-03 |
HU9603142D0 (en) | 1997-01-28 |
BR9502022A (pt) | 1996-01-30 |
US6226722B1 (en) | 2001-05-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1089462C (zh) | 采用集成的超高速缓存和存储器控制器的***和方法 | |
US6622225B1 (en) | System for minimizing memory bank conflicts in a computer system | |
JP3412575B2 (ja) | 命令履歴キャッシングを使用して推測的に命令を実行する回路、データ処理システム、およびそのための方法 | |
EP0106667B1 (en) | Central processing unit | |
US6212603B1 (en) | Processor with apparatus for tracking prefetch and demand fetch instructions serviced by cache memory | |
JP3875738B2 (ja) | ロード・バッファを備えたロード/ストア・ユニット内にて切り離されたタグ及びデータ・アレイへのアクセス方法及びそのアレイを有する装置 | |
US5694568A (en) | Prefetch system applicable to complex memory access schemes | |
KR100305310B1 (ko) | 멀티스레드프로세서의명령어및연관된인출요청의백그라운드완료 | |
US6202107B1 (en) | Host controller interface descriptor fetching unit | |
EP0817091B1 (en) | System and method for parallelizing execution of memory transactions using multiple memory models | |
US6012134A (en) | High-performance processor with streaming buffer that facilitates prefetching of instructions | |
US5845324A (en) | Dual bus network cache controller system having rapid invalidation cycles and reduced latency for cache access | |
US4323968A (en) | Multilevel storage system having unitary control of data transfers | |
US5930832A (en) | Apparatus to guarantee TLB inclusion for store operations | |
JPH0756815A (ja) | キャッシュ動作方法及びキャッシュ | |
JP2000003308A (ja) | オ―バラップしたl1およびl2メモリ・アクセス方法および装置 | |
JP3678443B2 (ja) | スーパーパイプライン式スーパースカラーマイクロプロセッサ用の書き込みバッファ | |
US6427189B1 (en) | Multiple issue algorithm with over subscription avoidance feature to get high bandwidth through cache pipeline | |
CN102541510A (zh) | 一种指令缓存***及其取指方法 | |
US5574883A (en) | Single chip processing unit providing immediate availability of frequently used microcode instruction words | |
US20030163643A1 (en) | Bank conflict determination | |
US5737756A (en) | Dual bus computer network using dual busses with dual spy modules enabling clearing of invalidation queue for processor with store through cache while providing retry cycles for incomplete accesses to invalidation queue | |
US20040088490A1 (en) | Super predictive fetching system and method | |
EP0442690A2 (en) | Data cache store buffer for high performance computer | |
US6662265B1 (en) | Mechanism to track all open pages in a DRAM memory system |
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 |