【技术实现步骤摘要】
高速缓存存储器及其中实现的方法
本专利技术一般涉及高速缓存存储器电路,更特别地涉及用于将数据预拾取(prefetch)到处理器高速缓存中的系统和方法。
技术介绍
大多数现代计算机系统包括用于进行执行软件程序所必需的计算的微处理器。计算机系统还包括连接至微处理器(或者位于微处理器内部)的其它装置,诸如存储器。存储器存储微处理器所要执行的软件程序指令。存储器还存储程序指令进行操作以实现程序的期望功能的数据。计算机系统中的位于微处理器外部(或者位于处理器核心外部)的装置(诸如存储器)通过处理器总线而直接或间接地连接至微处理器(或核心)。处理器总线是使得微处理器能够以相对大的数据块传送数据的信号集合。当微处理器执行用于对存储器中所存储的数据进行计算的程序指令时,微处理器必须使用处理器总线将数据从存储器拾取到微处理器中。类似地,微处理器使用处理器总线来将计算结果写回存储器。从存储器拾取数据或将数据写入存储器所需的时间比微处理器对数据进行计算所需的时间大许多倍。因此,微处理器必须低效地空闲等待从存储器拾取到数据。为了减少这个问题,现代微处理器包括至少一个高速缓存存储器。高速缓存存储器或高速缓存是微处理器(或处理器核心)内部的存储系统存储器中的数据的子集的存储器(通常比系统存储器小得多)。当微处理器执行引用数据的指令时,该微处理器首先检查以查看数据是否存在于高速缓存中并且是否有效。如果是,则由于数据已经存在于高速缓存中,因此相比于必须要从系统存储器检索数据的情况可以更快速地执行指令。也就是说,微处理器不必在使用处理器总线将数据从存储器拾取到高速缓存中时等待。微处理器检测 ...
【技术保护点】
1.一种高速缓存存储器,包括:存储器区域,用于存储所述高速缓存存储器所请求的数据,所述存储器区域被配置为具有n路组关联;预拾取逻辑,其被配置为执行用于评估所述高速缓存存储器在不久的将来是否将请求该高速缓存存储器外部的目标数据的算法;存储位置阵列,其被组织为k个一维阵列的形式,其中k是大于1的整数值,k个阵列中的各阵列具有n个位置,其中每个这样的阵列位置针对所述k个阵列中的给定的一个阵列标识所述存储器区域的n路中的唯一1路,以及其中各阵列被组织为使得多个阵列位置的序列顺序按照所述多个阵列位置要被替换的顺序标识所述n路;所述高速缓存存储器针对多个一维阵列中的各一维阵列还包括:与所述预拾取逻辑相关联的置信度逻辑,其被配置为计算置信度测度,其中所述置信度测度反映相关处理器在不久的将来将请求所述目标数据的所确定的可能性;以及控制逻辑,其被配置为管理各阵列位置中的数据的内容,所述控制逻辑还被配置为:基于所计算出的置信度测度来分配特定的一个阵列位置以与要存储所述目标数据的路相对应;使各阵列位置中的值从所分配的阵列位置朝向与用于下一次替换的位置相对应的阵列位置移动;以及将与下一次替换位置相对应的阵列位 ...
【技术特征摘要】
2019.03.20 US 16/358,7921.一种高速缓存存储器,包括:存储器区域,用于存储所述高速缓存存储器所请求的数据,所述存储器区域被配置为具有n路组关联;预拾取逻辑,其被配置为执行用于评估所述高速缓存存储器在不久的将来是否将请求该高速缓存存储器外部的目标数据的算法;存储位置阵列,其被组织为k个一维阵列的形式,其中k是大于1的整数值,k个阵列中的各阵列具有n个位置,其中每个这样的阵列位置针对所述k个阵列中的给定的一个阵列标识所述存储器区域的n路中的唯一1路,以及其中各阵列被组织为使得多个阵列位置的序列顺序按照所述多个阵列位置要被替换的顺序标识所述n路;所述高速缓存存储器针对多个一维阵列中的各一维阵列还包括:与所述预拾取逻辑相关联的置信度逻辑,其被配置为计算置信度测度,其中所述置信度测度反映相关处理器在不久的将来将请求所述目标数据的所确定的可能性;以及控制逻辑,其被配置为管理各阵列位置中的数据的内容,所述控制逻辑还被配置为:基于所计算出的置信度测度来分配特定的一个阵列位置以与要存储所述目标数据的路相对应;使各阵列位置中的值从所分配的阵列位置朝向与用于下一次替换的位置相对应的阵列位置移动;以及将与下一次替换位置相对应的阵列位置中先前所保持的值写入所分配的阵列位置。2.根据权利要求1所述的高速缓存存储器,其中,各一维阵列被组织为修改的最近最少使用阵列即LRU阵列或修改的伪LRU阵列,其中通过允许基于所述置信度测度非循序地插入所述阵列中来修改传统LRU布置。3.根据权利要求1所述的高速缓存存储器,其中,所述高速缓存存储器是2级高速缓存存储器。4.根据权利要求1所述的高速缓存存储器,其中,所述算法包括边界框预拾取算法和流预拾取算法至少之一。5.根据权利要求1所述的高速缓存存储器,其中,所述置信度逻辑包括用于响应于各个新加载请求而修改所述置信度测度、以使得所述置信度测度在所述新加载被预拾取的情况下递增并且在所述新加载未被预拾取的情况下递减的逻辑。6.根据权利要求5所述的高速缓存存储器,还包括用于将所述置信度测度转译为用作预拾取存储器阵列的n阵列位置中一个位置的索引的数值的逻辑。7.根据权利要求6所述的高速缓存存储器,其中,所述置信度测度向所述数值的转译是非线性转译。8.根据权利要求1所述的高速缓存存储器,还包括用于将所述置信度测度转译为用作预拾取存储器阵列的n阵列位置中一个位置的索引的数值的逻辑。9.一种n路组关联高速缓存存储器,包括:预拾取逻辑,其被配置为执行用于评估所述高速缓存存储器在不久的将来是否将请求该高速缓存存储器外部的目标数据的算法;k组阵列,所述k组中的各组具有n个阵列位置,其中所述n个阵列位置中的各阵列位置标识所述高速缓存存储器的给定组的n路中的唯一1路;置信度逻辑,其被配置为计算置信度测度,其中所述置信度测度反映相关处理器在不久的将来将请求所述目标数据的所确定的可能性;以及控制逻辑,其...
【专利技术属性】
技术研发人员:道格拉斯·R·瑞德,阿卡什·多拉塔·赫巴尔,
申请(专利权)人:上海兆芯集成电路有限公司,
类型:发明
国别省市:上海,31
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。