【技术实现步骤摘要】
【国外来华专利技术】用以加速推测性执行的备用高速缓存集合
[0001]相关申请
[0002]本申请要求2019年7月31日提交且标题为“用以加速推测性执行的备用高速缓存集合(SPARE CACHE SET TO ACCELERATE SPECULATIVE EXECUTION)”的美国专利申请第16/528,483号的优先权,所述申请的全部公开内容由此以引用方式并入本文中。
[0003]本文中所公开的至少一些实施例大体上涉及高速缓存架构,且更特定来说,但不限于用于由计算机处理器进行的主执行和推测性执行的高速缓存架构。
技术介绍
[0004]高速缓存为存储比主存储器更接近处理器的数据以使得可由处理器存取存储于高速缓存中的数据的存储器组件。由于对主存储器中的数据的较早计算或较早存取,数据可存储于高速缓存中。当由处理器使用存储器地址所请求的数据可在高速缓存中找到时,发生高速缓存命中,而当无法在高速缓存中找到所述数据时,发生高速缓存未中。
[0005]一般来说,高速缓存为保存最近由处理器使用的数据的存储器。放置于高速缓存中的存储 ...
【技术保护点】
【技术特征摘要】
【国外来华专利技术】1.一种高速缓存系统,其包括:多个高速缓存集合;与来自处理器的执行类型信号线的连接,所述执行类型信号线识别执行类型;与来自所述处理器的信号线的连接,所述信号线识别推测性执行的状态;逻辑电路,其配置成:当所述执行类型为指示由所述处理器对指令的非推测性执行的第一类型时,分配所述多个高速缓存集合的第一子集以用于在高速缓存操作中高速缓存;当所述执行类型从所述第一类型改变为指示由所述处理器对指令的推测性执行的第二类型时,分配所述多个高速缓存集合的第二子集以用于在高速缓存操作中高速缓存;当所述执行类型为所述第二类型时,保留至少一个高速缓存集合;当所述执行类型从所述第二类型改变为所述第一类型且推测性执行的所述状态指示将接受推测性执行的结果时:当所述执行类型为所述第一类型时,重新配置所述第二子集以用于在高速缓存操作中高速缓存;以及当所述执行类型从所述第一类型改变为所述第二类型时,分配所述至少一个高速缓存集合以用于在高速缓存操作中高速缓存。2.根据权利要求1所述的高速缓存系统,其中所述逻辑电路配置成:当所述执行类型为所述第二类型且所述至少一个高速缓存集合包含所述多个高速缓存集合中的最少使用的高速缓存集合时,保留所述至少一个高速缓存集合。3.根据权利要求1所述的高速缓存系统,其包括:一或多个映射表,其映射所述多个高速缓存集合;且其中所述逻辑电路配置成根据所述一或多个映射表分配以及重新配置所述多个高速缓存集合的子集。4.根据权利要求1所述的高速缓存系统,其包括:多个高速缓存集合寄存器,其分别与所述多个高速缓存集合相关联;且其中所述逻辑电路配置成根据所述多个高速缓存集合寄存器分配以及重新配置所述多个高速缓存集合的子集。5.根据权利要求4所述的高速缓存系统,其中所述多个高速缓存集合的所述第一子集包括第一高速缓存集合,所述多个高速缓存集合的所述第二子集包括第二高速缓存集合,且所述至少一个高速缓存集合包括第三高速缓存集合;且其中所述多个高速缓存集合寄存器包括:第一高速缓存集合寄存器,其与所述第一高速缓存集合相关联,所述第一高速缓存集合寄存器配置成最初存储第一高速缓存集合索引,使得所述第一高速缓存集合用于非推测性执行;第二高速缓存集合寄存器,其与所述第二高速缓存集合相关联,所述第二高速缓存集合寄存器配置成最初存储第二高速缓存集合索引,使得所述第二高速缓存集合用于推测性执行;以及第三高速缓存集合寄存器,其与所述第三高速缓存集合相关联,所述第三高速缓存集
合寄存器配置成最初存储第三高速缓存集合索引,使得所述第三高速缓存集合用作备用高速缓存集合;6.根据权利要求5所述的高速缓存系统,其中所述逻辑电路配置成:基于从来自处理器的地址总线接收到的存储器地址以及从来自所述处理器的识别执行类型的执行类型信号线接收到的推测性执行或非推测性执行的识别来产生集合索引;以及确定所述集合索引是否与存储在所述第一高速缓存集合寄存器、所述第二高速缓存集合寄存器或所述第三高速缓存集合寄存器中的内容匹配。7.根据权利要求6所述的高速缓存系统,其中当所述执行类型从所述第二类型改变为所述第一类型且推测性执行的所述状态指示将接受推测性执行的结果时,所述逻辑电路还配置成:将所述第一高速缓存集合索引存储在所述第二高速缓存集合寄存器或与所述多个高速缓存集合的所述第二子集中的另一高速缓存集合相关联的另一高速缓存集合寄存器中,使得所述第二高速缓存集合或所述第二子集中的所述另一高速缓存集合用于非推测性执行。8.根据权利要求7所述的高速缓存系统,其中当所述执行类型从所述第二类型改变为所述第一类型且推测性执行的所述状态指示将接受推测性执行的结果时,所述逻辑电路还配置成:将所述第二高速缓存集合索引存储在所述第三高速缓存集合寄存器或与所述至少一个高速缓存集合中的另一高速缓存集合相关联的另一高速缓存集合寄存器中,使得所述第三高速缓存集合或所述至少一个高速缓存集合中的所述另一高速缓存集合用于推测性执行。9.根据权利要求8所述的高速缓存系统,其中当所述执行类型从所述第二类型改变为所述第一类型且推测性执行的所述状态指示将接受推测性执行的结果时,所述逻辑电路还配置成:将所述第三高速缓存集合索引存储在所述第一高速缓存集合寄存器或与所述多个高速缓存集合的所述第一子集中的另一高速缓存集合相关联的另一高速缓存集合寄存器中,使得所述第一高速缓存集合或所述第一子集中的所述另一高速缓存集合用作备用高速缓存集合。10.一种高速缓存系统,其包括:多个高速缓存集合,其包括高速缓存集合的第一子集、高速缓存集合的第二子集以及高速缓存集合的第三子集;与来自处理器的执行类型信号线的连接,所述执行类型信号线识别执行类型;与来自所述处理器的信号线的连接,所述信号线识别推测性执行的状态;逻辑电路,其配置成:当所述执行类型为指示由所述处理器对指令的非推测性执行的第一类型时,分配所述多个高速缓存集合的所述第一子集以用于在高速缓存操作中高速缓存;当所述执行类型从所述第一类型改变为指示由所述处理器对指令的推测性执行的第二类型时,分配所述多个高速缓存集合的所述第二子集以用于在高速缓存操作中高速缓
存;当所述执行...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。