采用集成的超高速缓存和存储器控制器的系统和方法技术方案

技术编号:2891446 阅读:192 留言:0更新日期:2012-04-11 18:40
一种存储器系统,其内在L2超高速级冲存储器(以下简称L2)和主存储器中的数据检索被同时启动,使得在处理器在L2中找不到数据事件(丢失)中能将与判优,存储器DRAM地址转换等有关的存储器等待时间降至最少。L2和存储器存取控制置于同一部件(SCU)。L2和存储器有进入CPU的专用端口,使数据能直接转送。这免除了由将数据存入中间装置(如超高速缓存或存储器控制器)所引起的辅助操作。(*该技术在2015年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术一般地涉及数据处理系统,其中处理器启动对一个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命中事件传到存储器控制部件,使存储器控制器能在本文档来自技高网...

【技术保护点】
包括处理部件、外部超高速缓冲存储器和存储器的计算机系统,包括:用于确定所述处理部件所需信息是否存在所述外部超高速缓冲存储器或所述存储器中的判定装置;和用于将所述信息从所述外部超高速缓冲存储器或所述存储器直接供到所述处理部件的供给装置 。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:DJ希皮DB舒勒
申请(专利权)人:国际商业机器公司
类型:发明
国别省市:US[美国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1