用于高速缓冲存储标签压缩的方法及设备技术

技术编号:17352103 阅读:20 留言:0更新日期:2018-02-25 22:45
一种存储器结构使用加索引标签压缩结构来压缩存储器标签的部分。所述存储器标签的高阶位集合可存储在所述加索引标签压缩结构中,其中所述高阶位集合是由索引值识别。标签阵列存储所述存储器标签的低阶位集合及识别所述标签压缩结构中存储所述存储器标签的所述高阶位集合的条目的所述索引值。所述存储器标签可包括存储在数据阵列中的数据元素的存储器地址的至少一部分。

Method and equipment for high speed buffer storage label compression

A memory structure using indexed labels to tag memory compression compression structure part. The high - order set of the memory label can be stored in the index label compression structure, where the set of high - order bits is identified by the index value. The tag array stores the low order bit sets of the memory labels and identifies the index values of the entries of the higher-order bits stored in the label compression structure of the label compression structure. The memory label may include at least part of the memory address of the data element stored in the data array.

【技术实现步骤摘要】
【国外来华专利技术】用于高速缓冲存储标签压缩的方法及设备根据35U.S.C.§119的优先权主张本申请案主张2015年5月20日申请的美国专利申请案第14/716,947号的优先权,所述美国专利申请案被转让给本专利技术的受让人且特此以引用的方式明确地并入本文中。
本文中所揭示的方面涉及计算机微处理器(在本文中也被称作处理器)的领域。更具体地说,本文中所揭示的方面涉及高速缓冲存储标签压缩。
技术介绍
现代处理器通常依赖于高速缓冲存储器以改进处理性能。高速缓冲存储器通过利用工作负载的指令流及数据流中的时间及空间局部性而工作。高速缓冲存储器的部分专用于存储高速缓冲存储标签阵列。高速缓冲存储标签存储从主存储器提取的实际数据的地址。确定高速缓冲存储器中的命中或未命中的速度受到标签阵列的宽度约束,其中较大标签阵列通常产生较多计时压力。较宽(或较大)标签具有较多位。为了确定在高速缓冲存储器中是否存在命中,必须比较标签的所有位与探测地址。因此,所述比较中的较多位可需要较多延迟来返回所述比较的结果。
技术实现思路
本文中所揭示的方面通过将高阶标签位的唯一值存储在标签压缩高速缓冲存储器中来缩减为标签存储所需要的区域。在一个方面中,一种高速缓冲存储器包括标签压缩结构及标签阵列。所述标签压缩结构存储多个标签压缩条目。所述多个标签压缩条目中的每一者含有存储器标签的相应高阶位集合且是由相应索引值识别。所述标签阵列存储多个标签阵列条目。所述多个标签阵列条目中的每一者含有所述存储器标签的相应低阶位集合及对应于所述标签压缩结构的所述索引值中的一者的索引值。所述第一存储器标签可包括存储在数据阵列中的数据元素的存储器地址的至少一部分。在一个方面中,一种方法包括在标签压缩结构中的多个标签压缩条目中的第一标签压缩条目中存储第一存储器标签的高阶位集合。所述多个标签压缩条目中的每一者是由相应索引值识别。所述方法进一步包括在标签阵列中的多个标签阵列条目中的第一标签阵列条目中存储所述存储器标签的低阶位集合及用于所述第一标签阵列条目的索引值。所述第一标签阵列条目的所述索引值对应于所述标签压缩结构中的所述第一标签压缩条目。所述第一存储器标签可包括存储在数据阵列中的数据元素的存储器地址的至少一部分。在一个方面中,一种非暂时性计算机可读媒体存储指令,所述指令在由处理器执行时致使所述处理器执行操作,所述操作包括在标签压缩结构中的多个标签压缩条目中的第一标签压缩条目中存储第一存储器标签的高阶位集合。所述多个标签压缩条目中的每一者是由相应索引值识别。所述操作进一步包括在标签阵列中的多个标签阵列条目中的第一标签阵列条目中存储所述存储器标签的低阶位集合及用于所述第一标签阵列条目的索引值。所述第一标签阵列条目的所述索引值对应于所述标签压缩结构中的所述第一标签压缩条目。所述第一存储器标签可包括存储在数据阵列中的数据元素的存储器地址的至少一部分。在一个方面中,一种设备包括用于在多个标签压缩条目中的第一标签压缩条目中存储第一存储器标签的高阶位集合的装置。所述多个标签压缩条目中的每一者是由相应索引值识别。所述设备进一步包括用于在多个标签阵列条目中的第一标签阵列条目中存储所述存储器标签的低阶位集合及用于所述第一标签阵列条目的索引值的装置。所述第一标签阵列条目的所述索引值对应于所述第一标签压缩条目。所述第一存储器标签可包括数据元素的存储器地址的至少一部分。通过将存储器标签的部分存储在标签压缩高速缓冲存储器中,本文中所揭示的方面缩减冗余位在所述标签阵列中的存储。由此会需要用于存储器标签的较少物理区域,提供较快比较结果,且需要较少功率来执行比较。附图说明为了达成且可详细地理解上述方面,可参考随附图式来更特定地描述上文简要地概述的本专利技术的方面。然而,应注意,随附图式仅说明本专利技术的方面且因此不应被视为限制本专利技术的范围,这是因为本专利技术可准许其它方面。图1说明根据一个方面的提供高速缓冲存储标签压缩的处理器。图2为根据一个方面的经配置以提供高速缓冲存储标签压缩的处理器的组件的逻辑视图。图3为根据一个方面的说明存储在标签压缩高速缓冲存储器、标签阵列及数据阵列中的实例值的示意图。图4为根据一个方面的说明用以提供高速缓冲存储标签压缩的方法的流程图。图5为根据一个方面的说明用以建立新标签压缩高速缓冲存储器条目的方法的流程图。图6为根据一个方面的说明整合经配置以提供高速缓冲存储标签压缩的处理器的计算装置的框图。具体实施方式本文中所揭示的方面提供用以缩减用于存储器标签存储的区域的技术。举例来说,可用某一上部地址位集合来对高速缓冲存储器加标签。通常,高速缓冲存储标签需要用于大量位的存储,且现代高速缓冲存储架构相较于先前各代通常需要大体上较大的标签。举例来说,考虑假想的4向32千字节(KB)指令高速缓冲存储器,其具有64个位线。此类高速缓冲存储器的线的数目为215/29或512个线。每一线是与一标签相关联。高速缓冲存储器的集合的数目等于215/26/22或128个集合(具有7位集合解码)。在至少一个方面中,标签位不包含7位集合解码或6位字节偏移,此意指标签位始于A[7+6]或A[13],其中“A”指示到标签搜索的地址输入。因此,对于64个位的实例地址,比较标签与A[63:13],且标签存储为51个位/线。因此,用于高速缓冲存储器的总标签存储为51个位/线*512个线或26,112个位,从而引起10%的存储开销来存储高速缓冲存储标签。尽管标签值是任意的且代码相依的,但标签值中的每一者的位的子集可具有很少变化性,使得位的子集横越多个高速缓冲存储标签具有相同值。本文中所揭示的方面通过消除横越多个高速缓冲存储标签具有相同值的多个副本的冗余存储来利用此倾向。具体地说,本文中所揭示的方面引入一种经配置以存储唯一标签值的标签压缩高速缓冲存储器。由此会从高速缓冲存储标签移除许多位。可用指向标签压缩高速缓冲存储器条目的较小数目个位来替换从高速缓冲存储标签移除的位。标签压缩高速缓冲存储器可保留来自高速缓冲存储标签的任何位集合,所述位包含但不限于上部(或较高)地址位、地址空间标识符(ASID)、安全性位、异常级别位,及其类似者。因为标签压缩高速缓冲存储器保留原始高速缓冲存储标签的部分,所以存取必定在标签压缩高速缓冲存储器中“命中”以便在高速缓冲存储器中“命中”。相似地,在标签压缩高速缓冲存储器中“未命中”的存取必定也在高速缓冲存储器自身中“未命中”。收回标签压缩高速缓冲存储器条目会要求所有对应高速缓冲存储线(即,标签压缩高速缓冲存储器索引值匹配于经收回标签压缩高速缓冲存储器的索引的那些线)失效。然而,使高速缓冲存储线失效并不要求对标签压缩高速缓冲存储器进行任何更新。本文中所揭示的方面并行地存取标签压缩高速缓冲存储器及高速缓冲存储器以确定输入存储器地址引起高速缓冲存储“命中”还是“未命中”。具体地说,本文中所揭示的方面使用输入存储器地址的高阶位集合来存取标签压缩高速缓冲存储器。如果在标签压缩高速缓冲存储器中存在命中(即,标签压缩高速缓冲存储器中的条目匹配于输入存储器地址的高阶位),那么标签压缩高速缓冲存储器经配置以返回匹配条目的索引值。并行地,本文中所揭示的方面使用输入存储器地址的低阶位集合来搜索高速缓冲存储器。如果在高速缓冲存储器中存在命中(即,本文档来自技高网...
用于高速缓冲存储标签压缩的方法及设备

【技术保护点】
一种高速缓冲存储器,其包括:标签压缩结构,其存储多个标签压缩条目,其中所述多个标签压缩条目中的每一者含有存储器标签的相应高阶位集合且是由相应索引值识别;及标签阵列,其存储多个标签阵列条目,其中所述多个标签阵列条目中的每一者含有所述存储器标签中的一者的相应低阶位集合及对应于所述标签压缩结构的所述索引值中的一者的索引值,其中每一存储器标签包括存储在数据阵列中的数据元素的相应存储器地址的至少一部分。

【技术特征摘要】
【国外来华专利技术】2015.05.20 US 14/716,9471.一种高速缓冲存储器,其包括:标签压缩结构,其存储多个标签压缩条目,其中所述多个标签压缩条目中的每一者含有存储器标签的相应高阶位集合且是由相应索引值识别;及标签阵列,其存储多个标签阵列条目,其中所述多个标签阵列条目中的每一者含有所述存储器标签中的一者的相应低阶位集合及对应于所述标签压缩结构的所述索引值中的一者的索引值,其中每一存储器标签包括存储在数据阵列中的数据元素的相应存储器地址的至少一部分。2.根据权利要求1所述的高速缓冲存储器,其进一步包括经配置以通过以下操作而针对输入存储器地址返回所述标签阵列中的命中的指示的逻辑:在确定来自所述标签压缩结构的第一标签压缩条目中的所述存储器标签的所述高阶位集合匹配于所述输入存储器地址的高阶位集合后就返回对应于所述第一标签压缩条目的所述索引值;在确定所述输入存储器地址的所述低阶位集合匹配于第一标签阵列条目中的所述存储器标签的所述低阶位集合后就返回所述索引值及存储在所述第一标签阵列条目中的所述存储器标签的所述低阶位集合;确定所述第一标签压缩条目的所述经返回索引值匹配于所述第一标签阵列条目的所述经返回索引值;及确定所述输入存储器地址的低阶位集合匹配于所述存储器标签的所述经返回低阶位集合。3.根据权利要求1所述的高速缓冲存储器,其中所述标签压缩结构中的所述多个标签压缩条目中的每一者经配置以存储相应高阶位集合,其中所述多个标签阵列条目中的每一者经配置以存储相应存储器标签的低阶位集合及对应于所述多个标签压缩条目中的一者的索引值,所述高速缓冲存储器进一步包括经配置以在确定以下各者中的至少一者后就针对输入存储器地址返回所述标签阵列中的未命中的指示的逻辑:所述输入存储器地址的高阶位集合不匹配于所述多个标签压缩条目中的所述高阶位集合中的任一者;所述输入存储器地址的低阶位集合不匹配于存储在所述多个标签阵列条目中的所述低阶位集合中的任一者;及从存储匹配于所述输入存储器地址的所述高阶位的高阶位集合的标签阵列条目返回的索引值不匹配于存储匹配于所述输入存储器地址的所述低阶位的低阶位集合的标签压缩条目的索引值。4.根据权利要求3所述的高速缓冲存储器,其进一步包括经配置以响应于返回所述标签阵列中的所述未命中的所述指示而进行以下操作的逻辑:检索存储在存储器层次的下一级别处的数据;将所述数据存储在所述数据阵列的第一条目中;将所述输入存储器地址的高阶位集合存储在所述标签压缩结构中的第二标签压缩条目中;及存储以下各者:(i)所述输入存储器地址的低阶位集合,及(ii)所述标签阵列的第二标签阵列条目中对应于所述第二标签压缩条目的索引值,其中所述第二标签阵列条目对应于所述数据阵列的所述第一条目。5.根据权利要求1所述的高速缓冲存储器,其中所述标签压缩结构中的所述条目经进一步配置以存储以下各者中的一或多者:(i)进程的地址空间标识符ASID,(ii)安全性位集合,及(iii)异常级别位集合。6.根据权利要求1所述的高速缓冲存储器,其中第一标签阵列条目及第二标签阵列条目各自指定对应于第一标签压缩条目的索引值,其中所述第二标签阵列条目的低阶位集合不匹配于所述第一标签阵列条目的低阶位集合。7.根据权利要求1所述的高速缓冲存储器,其中所述标签压缩结构包括完全关联内容可寻址存储器,其中所述标签阵列包括以下各者中的至少一者的部分:(i)数据高速缓冲存储器,(ii)翻译后援缓冲器,(iii)线填充缓冲器,及(iv)指令高速缓冲存储器。8.根据权利要求1所述的高速缓冲存储器,其中所述高速缓冲存储器安置在集成电路中。9.一种方法,其包括:在标签压缩结构中的多个标签压缩条目中的第一标签压缩条目中存储第一存储器标签的高阶位集合,其中所述多个标签压缩条目中的每一者是由相应索引值识别;及在标签阵列中的多个标签阵列条目中的第一标签阵列条目中存储所述第一存储器标签的低阶位集合及用于所述第一标签阵列条目的索引值,其中所述第一标签阵列条目的所述索引值对应于所述标签压缩结构中的所述第一标签压缩条目的所述索引值,其中所述第一存储器标签包括存储在数据阵列中的数据元素的存储器地址的至少一部分。10.根据权利要求9所述的方法,其进一步包括通过以下操作而针对输入存储器地址返回所述标签阵列中的命中的指示:在确定来自所述标签压缩结构的第一标签压缩条目中的所述存储器标签的所述高阶位集合匹配于所述输入存储器地址的高阶位集合后就返回对应于所述第一标签压缩条目的所述索引值;在确定所述输入存储器地址的所述低阶位集合匹配于所述第一标签阵列条目中的所述存储器标签的所述低阶位集合后就返回所述索引值及存储在所述第一标签阵列条目中的所述存储器标签的所述低阶位集合;确定所述第一标签压缩条目的所述经返回索引值匹配于所述第一标签阵列条目的所述经返回索引值;及确定所述输入存储器地址的低阶位集合匹配于所述存储器标签的所述经返回低阶位集合。11.根据权利要求9所述的方法,其中所述标签压缩结构中的所述多个标签压缩条目中的每一者经配置以存储相应高阶位集合,其中所述多个标签阵列条目中的每一者经配置以存储相应存储器标签的低阶位集合及对应于所述多个标签压缩条目中的一者的索引值,所述方法进一步包括在确定以下各者中的至少一者后就针对输入存储器地址返回所述标签阵列中的未命中的指示:所述输入存储器地址的高阶位集合不匹配于所述多个标签压缩条目中的所述高阶位集合中的任一者;所述输入存储器地址的低阶位集合不匹配于存储在所述多个标签阵列条目中的所述低阶位集合中的任一者;及从存储匹配于所述输入存储器地址的所述高阶位的高阶位集合的标签阵列条目返回的索引值不匹配于存储匹配于所述输入存储器地址的所述低阶位的低阶位集合的标签压缩条目的索引值。12.根据权利要求11所述的方法,其进一步包括:响应于返回所述标签阵列中的所述未命中的所述指示而进行以下操作:检索存储在存储器层次的下一级别处的数据;将所述数据存储在所述数据阵列的第一条目中;将所述输入存储器地址的高阶位集合存储在所述标签压缩结构中的第二标签压缩条目中;及存储以下各者:(i)所述输入存储器地址的低阶位集合,及(ii)所述标签阵列的第二标签阵列条目中对应于所述第二标签压缩条目的索引值,其中所述第二标签阵列条目对应于所述数据阵列的所述第一条目。13.根据权利要求9所述的方法,其中所述标签压缩结构中的所述条目经进一步配置以存储以下各者中的一或多者:(i)进程的地址空间标识符ASID,(ii)安全性位集合,及(i...

【专利技术属性】
技术研发人员:亨利·阿瑟·佩尔兰三世托马斯·菲利普·施派尔托马斯·安德鲁·萨托里乌斯迈克尔·威廉·莫罗詹姆斯·诺里斯·迪芬德尔费尔肯尼思·艾伦·多克瑟尔迈克尔·斯科特·麦克勒瓦伊内
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国,US

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

1