高速缓存过滤方法和装置制造方法及图纸

技术编号:7148674 阅读:208 留言:0更新日期:2012-04-11 18:40
一种存储器和数据处理中使用的方法和装置,其通过使用有效行来拒绝不经常使用的访问进入高速缓存而减少允许进入处理器高速缓存的访问的数量。用存储器控制器内的比较器来产生指示行命中或行未命中的信号,然后把该信号用于一个或多个解复用器,以使能或禁止把存储器访问传输到处理器高速缓存位置。高速缓存可以是包括数据和/或指令的一级(L1)或二级(L2)高速缓存,或是L1、L2、数据和指令缓存的组合。

【技术实现步骤摘要】
【国外来华专利技术】
本专利技术总体涉及存储器和处理。具体而言,本专利技术涉及用于高速缓存过滤的方法 和装置。
技术介绍
特别是在计算机处理和存储器系统领域,处理器和主存储器之间的速度差距日渐 增长。该差距直接影响整个计算系统的性能。为了缓解性能方面的顾虑,计算系统包括赖 以缩小该速度差距的高速缓存机制。这种高速缓存机制在缩小速度差距方面的成功随其参 数而变化,参数诸如为高速缓存的大小、块大小和关联性。然而,这种高速缓存机制不可能 通过改变这些参数而持续改善性能,这是由于这样做会达到由于增加系统复杂度、功耗和 高速缓存自身的性态而出现性能变差的现象。为了使高速缓存有效工作,目前的高速缓存机制通常依赖于访问(reference)的 空间局部性(locality)和时间局部性。然而,诸如多媒体应用的一些情况局部性有限,而 是更依赖于主存储器的性能。而且用C、C++和面向对象的编程语言编写的应用程序使用动 态分配的数据结构把数据映射到可用存储器空间。因而数据会分散在存储器中,因此空间 局部性差。这些应用中的数据元素在时间上不能尽快重复利用,因而时间局部性也差。这 种类型的计算应用中空间局部性和时间局部性差会使传统高速缓存机制效率下降。存储器系统中,空间局部性和时间局部性差但多次使用的访问比存储在高速缓存 中但从未再次使用的访问更需要保存在高速缓存中。不希望出现保存在高速缓存中但不再 使用的访问,这是由于这些访问和其他更经常使用的访问竞争。此外,不应除去或替换空间 局部性和时间局部性差但是使用频率高的访问。通常通过利用一些应用中不存在的访问的局部性来改善这些高速缓存机制。更常 见的通过增加额外硬件成本来实现,以通过增加高速缓存大小和关联性、提供更多的存储 器体系级别或者提供预取缓冲器来把更多访问保存在高速缓存中。相应地,由于处理器速度和主存储器速度之间的差距增长以及一些应用中缺少 局部性,高速缓存机制变得效率更低。为了解决高速缓存限制以及高速缓存未命中损失 (penalty)的持续增加,在需要数据之前使用硬件和软件预取方案事先从主存储器中取出 数据。虽然这种预取方法对一些应用中的普通存取模式是有用的,但是,这种方法不能隐藏 现代和未来处理器中长达几百个周期的非常长的高速缓存未命中延迟。提出了其他方法以通过选择性分配来更好地管理主存储器高速缓存(即一级高 速缓存或Ll高速缓存)。这些选择性分配方案根据统计划分高速缓存,这样,基于高速缓存 块的空间和时间局部性把高速缓存块划分到不同的子高速缓存中。然而,如果存取模式不 适合划分方法,这些方法性能较差,因而这些方法存在问题。提出了其他方法,这些方法利用多级高速缓存中访问使用频率以把最经常使用的 访问移动到较高级别高速缓存,以改善Ll高速缓存性能。然而,该方法适于具有小的一级 高速缓存的系统,在一级高速缓存大小和关联性增加时其效率降低。还提出了其他方法,利用第一级高速缓存作为过滤器,以把有用的不确定存储器 访问放在第一级高速缓存中。然而,该方法性能改善有限,而且为了预测访问的使用不利地 增加了硬件成本。因而,需要提供一种不依赖于昂贵的附加硬件并且可以处理大存储器高速缓存的 高速缓存机制,这种机制以节约成本的方式减小现代存储器系统和计算机处理器之间的速度差距。
技术实现思路
本专利技术的目的是消除或减轻前述高速缓存机制的至少一种缺点。通过分析存储器访问的特性认识到多次使用的访问很少,而使用从未超过一次的 访问很多。此外,发现使用两次或更多次的地址数量大约为使用一次或多次的地址数量的 一半。这意味着传输到传统高速缓存中的一半地址从未使用过。利用昂贵的处理器和存储 器总线时间把这些地址从主存储器传输到高速缓存中。此外,高速缓存中从未使用的访问 和经常使用的访问竞争,可以把经常使用的访问排挤到高速缓存之外。因而,把经常使用的 访问保存在高速缓存中而把不常用的访问拒绝在高速缓存之外是有用的。总体而言,本专利技术实施例通过监控对DRAM开放行的访问的特性来动态管理高速 缓存。DRAM中的数据不受处理器预取方案或高速缓存的影响。高速缓存中有数据时,由 于给定时刻仅把有限大小的数据传输给高速缓存,所以高速缓冲中的数据的局部性发生改 变。使用高速缓存中数据特性的现有方案受到处理器影响,并且其范围受到高速缓存局部 性限制。因而,显而易见的是高速缓存不能解决其自身的限制,相反,必须从高速缓存之外 寻求解决之道。本专利技术实施例提供了不增加系统复杂度而改善高速缓存性能的新方法。这 通过使用访问特性以及其在主存储器中的使用频率而实现。提供本专利技术实施例用于拒绝仅使用一次的地址,从而减少高速缓存冲突以及有用 块的排除。由于被拒绝访问的整个高速缓存块的传输时间减少,所以未命中损失也减少。如 果拒绝访问进入高速缓存的话,本专利技术实施例把一个字传输到处理器寄存器。在典型的多 核芯片中,对存储器总线使用的要求增加,且限制了系统的扩展性。本专利技术实施例通过对于 仅使用一次的访问消除长高速缓存块到处理器的传输而减少了总线使用。第一方面中,本专利技术提供了 一种高速缓存过滤方法,所述方法包括出现高速缓存 未命中时,对于给定存储器访问获得行命中/未命中信号;以及在行命中/未命中信号指示 行未命中时拒绝和行命中/未命中信号关联的存储器访问。另一个实施例中,提供了一种动态随机存取存储器(DRAM)内的高速缓存过滤方 法,所述方法包括产生对应于存储器访问的行命中/未命中信号;以及出现一级(Li)和 二级(U)高速缓存未命中并且行命中/未命中信号指示行未命中时,存取DRAM中的数据 并锁存对应行锁存中的行地址。另一个实施例中,本专利技术提供了一种用于数据处理的装置,所述装置包括具有多 个位置的存储器;耦合到存储器的存储器控制器,存储器控制器包括至少一个比较器,用于 产生和与多个位置之一相关的存储器访问相对应的行命中/未命中信号;以及可操作地耦 合到存储器控制器的至少一个解复用器,其中解复用器使用行命中/未命中信号以传送和 存储器访问相关的数据;以及行锁存器,用于锁存对应于数据的行。另一个实施例中,提供了一种静态随机存取存储器(SRAM)内的高速缓存过滤方 法,所述方法包括产生对应于存储器访问的行命中/未命中信号;以及出现一级(Li)和 二级(U)高速缓存未命中并且行命中/未命中信号指示行未命中时,用随机存取模式存取 SRAM中的数据并锁存对应于数据的行。通过结合附图阅读以下对本专利技术示例实施例的描述,本专利技术的其他方面和特征对 本领域技术人员是显而易见的。附图说明现在将参考附图通过示例描述本专利技术的实施例。图1的框图示出结合本专利技术实施例使用的动态随机存取存储器(DRAM)和DRAM控 制器中的行锁存器。图2是包括处理器、DRAM和DRAM控制器并说明本专利技术实施例的系统框图。图3是如2所示的根据本专利技术实施例的DRAM控制器框图。图4的示意图示出行信号指示行命中时的数据传输。图5的示意图示出行信号指示行未命中时的数据传输。图6的流程图示出根据本专利技术实施例的高速缓存过滤方法的实施例。图7是可适用本专利技术实施例的系统中且给定体内的具有多个有效(active)部分 行的系统示意图。图8的示意图和图7类似,但是系统包括自适应区域变化。图9的框图从指令和数据高速缓存的角度示出本专利技术的本文档来自技高网
...

【技术保护点】
1.一种高速缓存过滤方法,所述方法包括:出现高速缓存未命中时,对于给定存储器访问获得行命中/未命中信号;以及所述行命中/未命中信号指示行未命中时拒绝和所述行命中/未命中信号关联的所述存储器访问。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:N·N·梅克希尔
申请(专利权)人:莫塞德技术公司
类型:发明
国别省市:CA

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

1