如果已确定存储总线带宽受限,那么以压缩模式从系统存储器检索数据且如果存储总线未带宽受限,那么以未压缩模式从系统存储器检索数据。可基于存储总线利用率或根据存储器访问请求队列的深度确定带宽受限条件的存在。
【技术实现步骤摘要】
【国外来华专利技术】
本专利技术涉及计算机存储器和与存储器相关的带宽利用率。专利技术背景主存储器压缩方案的一个典型目标是降低对主存储器的片外访问的带宽要求。在任意这类方案中,存储控制器需了解对于给定数据请求其必须读取全尺寸的块或缩小尺寸的块(如果块被压缩)。存在多种存储器压缩方式。许多方案使用可能大的片上数据结构来存储(或高速缓存)“压缩或未压缩”状态的不同主存储器块。这些片上结构在主存储器访问前被查询以确定应使用完全或缩小的存储器请求尺寸。如果大量存储器可压缩,那么这需要大的片上结构。另一个解决方案是对主存储器本身中压缩/未压缩状态的块以及相关数据进行编码。例如,可提供额外数据位以对状态进行编码或数据可通过反转ECC位而标记。首先, 假设数据被压缩而访问数据且如果返回的数据指示其未被压缩,那么剩余的数据被访问。 这种方式导致访问未压缩数据的不良延时,因为其要求在发出第二请求前存储器请求等待第一(假定压缩)数据返回。专利技术概要因此,在本专利技术的实施方案中,提供一种方法,其包括根据在访问存储器时是否存在带宽受限条件而以压缩访问模式和全(未压缩)访问模式从存储器检索数据。可基于例如存储总线利用率或根据存储器访问请求队列的深度确定带宽受限条件的存在。在另一个实施方案中,一种装置包括宽带受限确定逻辑,其响应于一个或多个存储系统系统条件以确定是否存在带宽受限运行条件并且供应其指示。存储器访问控制逻辑响应于带宽受限确定逻辑,以在通过带宽确定逻辑确定带宽受限运行条件存在时以压缩模式从存储器检索数据,以及在通过带宽确定逻辑确定带宽受限运行条件不存在时从以全 (未压缩)访问模式从存储器检索数据。在压缩模式中,数据通过最初访问每个被请求数据块的缩小尺寸的数据块而被检索。如果这种初始缩小尺寸块不含全尺寸块的压缩数据, 那么请求第二缩小尺寸的数据块,其中一起取得的第一请求和第二请求形成全尺寸的数据块。在全访问模式中,针对每个被请求数据块检索全尺寸的数据块。在另一个实施方案中,提供一种方法,其包括确定存储系统是否以带宽受限模式运行。响应于存储系统以带宽受限模式运行,存储控制器以压缩访问模式从存储器访问数据。响应于存储系统未以带宽受限模式运行,存储控制器以未压缩访问模式从存储器访问数据数据。附图简述本领域技术人员通过参考附图可更好地了解本专利技术以及明白其许多目标、特征和优点。图I示出根据本专利技术的实施方案的并入带宽自适应存储控制器的系统的方框图。示出图I的带宽自适应存储控制器的部分的示例性高级方框图。图3示出本专利技术的实施方案的高级流程图。在不同附图中使用相同参考符号表示类似或相同项目。具体实施方式参考附图说明图1,示出并入本专利技术的实施方案的计算机系统的方框图。计算机系统包括处理器,诸如,例如中央处理单元(CPU)和/或图形处理单元(GPU) 101。系统包括带宽自适应存储控制器105和存储器107。在运行条件下,当存储器请求速率低至足够使得存在许多可用存储器带宽,使用主存储器压缩来节省带宽将具有最小的性能好处。此外,在运行条件下,当主存储器请求速率高至足以被存储器带宽限制时,存储器请求所经历的延时也非常高(因为排队延迟)。在替代实施方案中,处理器(在示例性实施方案中示作CPU和/或 GPU)可体现为其它处理器,诸如数字信号处理器、微控制器和类似处理器。图I的计算机系统可体现为手持设备、PDA、笔记本、台式计算机、服务器或需要处理器和存储器的任意其它系统。因此,一个实施方案对主存储器本身中的压缩/未压缩状态块以及相关数据进行编码。编码可例如用额外数据位实现或数据可通过反转ECC位或通过一些其它适当机制而标记为压缩。当存储控制器检测到其未处于带宽受限运行状态时,其总是访问全、未压缩尺寸的数据。因此,访问压缩或未压缩数据的延时实际上是相同的。另一方面,如果存储控制器检测到其处于带宽限制模式,那么其将首先假设数据被压缩而访问数据;且如果返回的数据指示其未被压缩,那么访问剩余的数据。所述方法形成访问未压缩数据的更大延时但是在数据被压缩的情况下节省带宽。所述额外带宽可用于其它请求,可能缩短排队延迟使得总体延时影响可被缓解。在带宽受限情况下增大存储控制器的有效带宽会产生来自主存储器压缩的大多数性能好处。参考图2,示出带宽受限存储控制器的部分的方框图。存储控制器需确定存储总线 109是否带宽受限以及使用带宽确定逻辑201。在一个实施方案中,带宽确定逻辑201监测存储总线的使用并且检测何时存储总线的使用时间短于一些最近运行窗内的可配置时间段。使用率可以是在时间窗内取得的样本的平均值。总线利用率可直接从总线或从存储器访问控制逻辑205中的控制逻辑监测。带宽确定逻辑可包括可编程阈值寄存器202以指定使用率,高于所述使用率,存储总线被视作带宽受限以及低于所述使用率,存储总线被视作带宽未受限。时间窗也可以是可编程的。带宽确定逻辑201提供带宽受限条件存在的指示 206给存储器访问控制逻辑205。存储器访问控制逻辑205包括提供适当控制信号和接口逻辑以从主存储器107检索数据的已知功能。或者,带宽确定逻辑201监测请求队列203以确定带宽受限条件的存在。请求队列203将至主存储器107的存储器访问请求排队。队列的深度指示存储总线使用率。队列越深,总线利用率越高且存储总线越可能以带宽受限条件运行。在估计带宽确定时,特定实施方案在请求队列和/或总线使用率监测时不区分读和写。在其它实施方案中,特别是使用存储器接口上的单向信令的实施方案,读数据接口可与写数据接口分开。在这样一种系统中,总线带宽监测或队列深度监测可能只需查看读取。与总线监测实施方案相同,区分带宽受限条件和非带宽受限条件的队列深度的阈值水平可在阈值寄存器202中编程。队列的深度可在预定或可编程时间窗内平均。一些实施方案可利用两种方式来提供带宽受限运行条件是否存在的附加保证。在本描述中,数据块Datal代表对应于压缩数据块的尺寸的缩小尺寸的数据块。 数据块Datal和Data2的组合代表全尺寸、非压缩数据块。当带宽自适应存储控制器以非带宽受限模式运行时,例如,当队列深度低于阈值水平且带宽确定逻辑201提供所述指示至存储器访问控制逻辑205时,存储器访问控制逻辑在一个实施方案中具有其被设定来指示其中全尺寸、非压缩数据块(Datal和Data2)被访问的全访问模式的块尺寸指示器207。 当存储控制器访问全尺寸块(即,存储控制器未处于带宽受限状态)时,检验所得全尺寸块看其压缩或未压缩。如果块未压缩,那么从主存储器返回的全尺寸块(datal+data2)被返回给请求者。如果另一方面,块被压缩,那么从主存储器返回的全尺寸的数据块的“datal” 部分被解压缩并且返回给请求者,而从主存储器返回的data2部分被丢弃。当带宽自适应存储控制器以非带宽受限模式运行时,例如,当队列深度高于阈值水平且块尺寸指示器207被设定来指示压缩块尺寸且存储控制器以其中缩小尺寸的数据块(例如,仅Datal)响应于存储器请求的执行而被访问的压缩访问模式运行。压缩检查逻辑209检查ECC位(或其它压缩标签)以确定缩小尺寸的被检索块是否实际被压缩以及缩小尺寸块是否存储在Datal暂时存储器213上。如果块实际未压缩,那么压缩检查块通过将请求放入Data2请本文档来自技高网...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】2010.06.22 US 12/820,3001.一种方法,其包括确定存储系统是否以带宽受限条件运行;响应于所述以所述带宽受限条件运行的存储系统,以压缩访问模式从存储器访问数据;以及响应于所述未以所述带宽受限条件运行的存储系统,以未压缩访问模式从所述存储器访问数据。2.根据权利要求I所述的方法,其进一步包括根据存储总线上的通信量高于预定阈值而确定所述带宽受限条件存在。3.根据权利要求I所述的方法,其进一步包括根据存储器访问请求队列的深度高于预定阈值而确定所述带宽受限条件存在。4.根据权利要求I所述的方法,其中以所述压缩访问模式检索数据包括响应于数据块的每个请求而从所述存储器检索缩小尺寸的数据块且其中以所述未压缩访问模式检索数据包括响应于数据块的每个请求而从所述存储器检索全尺寸数据块。5.根据权利要求4所述的方法,其进一步包括在检索所述缩小尺寸的数据块后,查看所述缩小尺寸的数据块是否压缩自用所述缩小尺寸的数据块检索的信息且如果未压缩,那么从所述存储器检索剩余的数据以形成全尺寸块。6.根据权利要求5所述的方法,其进一步包括发出与所述缩小尺寸的数据块不相关的存储器请求且在检索所述缩小尺寸的数据块与所述剩余的数据之间检索不相关数据以形成所述全尺寸的数据块。7.根据权利要求I所述的方法,其进一步包括存储有关所述存储器中的数据块在所述存储器中压缩或未压缩的信息。8.一种装置,其包括带宽受限确定逻辑,其响应于一个或...
【专利技术属性】
技术研发人员:詹姆斯·迈克尔·奥康纳,
申请(专利权)人:超威半导体公司,
类型:
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。