买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明授权】用于在高速缓存条目处标识存储器访问请求的待决的系统和方法_超威半导体公司_201780043868.1 

申请/专利权人:超威半导体公司

申请日:2017-07-13

公开(公告)日:2024-03-26

公开(公告)号:CN109478163B

主分类号:G06F12/0802

分类号:G06F12/0802

优先权:["20160715 US 15/211,547"]

专利状态码:有效-授权

法律状态:2024.03.26#授权;2019.08.09#实质审查的生效;2019.03.15#公开

摘要:一种处理系统[100]在高速缓存条目处指示对数据的存储器访问请求[102]的待决,所述高速缓存条目响应于所述存储器访问请求而被指派来存储所述数据。在执行指令时,处理器向最靠近所述处理器的高速缓存[140]发出对数据的请求。响应于高速缓存未命中,高速缓存控制器标识所述高速缓存的用于响应于所述存储器访问请求而存储所述数据的条目[245],并且在所述标识的高速缓存条目处存储所述存储器访问请求待决的指示[147]。如果当所述存储器访问请求在存储器层次结构的较高级别处待决时,所述高速缓存控制器接收到对所述数据的后续存储器访问请求,则所述高速缓存控制器基于存储在所述条目处的指示符标识出所述存储器访问请求是待决的。

主权项:1.一种用于在高速缓存条目处标识存储器访问请求的待决的方法,其包括:响应于对高速缓存处的第一数据的第一请求的高速缓存未命中,由处理器指派所述高速缓存的高速缓存条目来存储所述第一数据;以及当所述第一数据正被从存储器子系统的不同级别检索到所述高速缓存时:在所述高速缓存条目处存储所述第一请求在所述高速缓存处待决的指示符,该指示符包括第一数据的主存储器地址和指示该第一数据是待决高速缓存未命中的对象的状态位;以及在缓冲区中存储包括数据索引和所述高速缓存条目的位置信息的标识符;响应于当所述第一数据正被检索到所述高速缓存时在所述高速缓存处接收到对所述第一数据的第二请求,读取所述高速缓存条目处的所述指示符;以及响应于基于所述指示符标识出所述第一请求在所述高速缓存处待决,将对所述第一数据的所述第二请求置于待决状态,直到所述第一数据已被检索到所述高速缓存,并将所述第二请求视为已被复制到所述处理器的高速缓存命中。

全文数据:用于在高速缓存条目处标识存储器访问请求的待决的系统和方法背景技术相关技术描述为支持在处理器处执行指令,处理系统通常包括存储器子系统,所述存储器子系统由存储器模块组成以存储将由执行中的指令访问的数据。为促进处理效率,可将存储器子系统组织成存储器层次结构,所述存储器层次结构具有:在层次结构的顶部处的用于存储可由执行中的指令访问的所有数据的主存储器,以及在存储器层次结构的较低级别处的用于存储在主存储器处存储的数据的子集的一个或多个高速缓存。为进一步提高处理效率,处理系统可实现存储器管理协议,所述存储器管理协议通过一个或多个高速缓存控制器管理从主存储器到一个或多个较低的存储器级别的数据提取。例如,如果在存储器层次结构的高速缓存处未找到处理器所需的数据称为“高速缓存未命中”,则高速缓存控制器发出存储器访问请求以从存储器层次结构的不同级别诸如从不同的高速缓存或从主存储器检索数据。为防止发出对来自存储器层次结构的给定级别的相同数据的多个存储器访问请求这可能会浪费处理器资源,高速缓存控制器将对应于作为待决的存储器访问请求的对象的每个数据单元的存储器地址存储在缓冲区中。当向高速缓存控制器提出对相同数据的后续请求时,在确定所述数据不存在于存储器层次结构的对应级别中时,高速缓存控制器通常查询所述缓冲区以确定所请求数据的存储器地址是否存储在那里。如果所请求数据的主存储器地址存在于存储器缓冲区中,这指示对数据的请求已经是待决的,则高速缓存控制器将不发出对所述数据的另外请求。然而,存储器缓冲区需要相对大量的空间,并且可消耗相对大量的功率。附图说明通过参考附图,本公开可被更好地理解,并且本公开的众多特征和优点对于本领域技术人员变得显而易见。在不同附图中使用相同附图标号来指示类似或相同的项目。图1是根据一些实施方案的处理系统的框图,所述处理系统在响应于存储器访问请求而存储数据的高速缓存条目处记录对存储器访问请求的待决的指示。图2是图1的处理系统的实例的框图,所述处理系统根据一些实施方案将未命中标签存储在高速缓存条目中并将高速缓存条目标签存储在待决未命中缓冲区中以指示存储器访问请求的待决。图3是图1的处理系统的实例的框图,所述处理系统根据一些实施方案基于标识高速缓存条目处的未命中标签来接收标识对数据的存储器访问请求的待决。图4是图1的处理系统的实例的框图,所述处理系统根据一些实施方案从主存储器提取数据并将数据存储在由来自待决未命中缓冲区的高速缓存条目标签指示的高速缓存条目处。图5是根据一些实施方案的存储在图1的待决未命中缓冲区中的高速缓存条目标签的实例的框图。图6是根据一些实施方案的由图1的处理器采用的未命中标签的实例的框图。图7是根据一些实施方案的在高速缓存条目处指示存储器访问请求的待决的方法的流程图。具体实施方式图1至图7示出用于通过在高速缓存条目处指示对数据的存储器访问请求的待决来改进存储器管理效率的技术,所述高速缓存条目响应于所述存储器访问请求而被指派来存储所述数据。处理系统包括处理器和存储器层次结构,所述存储器层次结构包括:在层次结构的顶部的主存储器,以及在存储器层次结构的较低级别处的用于存储在主存储器中存储的数据的子集的一个或多个存储器高速缓存。在执行指令时,处理器向最靠近处理器的高速缓存发出对数据的请求。响应于高速缓存未命中,高速缓存控制器向存储器层次结构的较高级别发出对所述数据的存储器访问请求。此外,高速缓存控制器标识高速缓存的用于响应于存储器访问请求而存储所述数据的条目,并且在所述标识的高速缓存条目处存储所述存储器访问请求待决的指示。如果当存储器访问请求在存储器层次结构的较高级别处待决时,高速缓存控制器接收到对所述数据的后续存储器访问请求,则高速缓存控制器基于存储在所述条目处的指示符标识出所述存储器访问请求是待决的。通过采用用于存储数据的高速缓存条目而不是单独的未命中地址缓冲区来存储存储器访问请求的待决的指示符,处理器能够节省电路面积和功率。为通过实例示出,处理器的高速缓存中的一个例如,3级L3高速缓存在存储器层次结构中位于处理系统的主存储器正下方。在从主存储器提取作为L3高速缓存处的高速缓存未命中的对象的数据期间,可能向L3高速缓存提出对相同数据的后续请求。为了避免在对数据的存储器访问请求待决时创建对相同数据的另外存储器访问请求这将消耗系统资源而不会改进处理器性能,当数据正从主存储器被提取时,L3高速缓存的高速缓存控制器立即指派高速缓存条目来存储所述数据,并且还在所述高速缓存条目处存储指示对所述数据的存储器访问请求在主存储器处待决的指示符。在一些实施方案中,所述指示符是未命中标签,所述未命中标签包括正被提取的数据的主存储器地址以及指示所述数据是待决的存储器访问请求的对象的状态信息。高速缓存控制器还在诸如缓冲区的旁侧结构中存储高速缓存条目标签,所述高速缓存条目标签包括数据标识符和所指派高速缓存条目的位置信息。如果当数据仍处于从主存储器被提取的过程中时在L3高速缓存处接收到对相同数据的后续请求,则高速缓存控制器检查高速缓存存储器以确定所述数据是否已存储在高速缓存存储器中,并且标识出所述高速缓存条目存储了未命中标签,从而指示所请求数据已经是存储器访问请求的对象。作为响应,高速缓存控制器将存储器访问请求置于待决状态以等待所述数据存储在所述高速缓存条目处。一旦已经从主存储器检索到所请求数据,高速缓存控制器就在旁侧结构中查询检索到的数据的数据标识符,以确定是否存在对应于所述数据标识符的高速缓存条目标签。在读取了对应于数据的高速缓存条目标签时,处理系统将检索到的数据存储在由高速缓存条目标签指示的高速缓存条目处,并且将状态信息更新为有效状态以指示所述数据现在存在于高速缓存中。此外,高速缓存控制器满足针对所述数据的任何待决的存储器访问请求。因此,L3高速缓存使用高速缓存条目本身而不是单独的缓冲区来存储存储器访问请求的待决的指示符,从而节省功率和电路面积。图1示出根据一些实施方案的处理系统100的实例,所述处理系统100被配置来在响应于存储器访问请求而存储数据的高速缓存条目处存储对存储器访问请求的待决的指示。因此,处理系统100可用于诸如个人计算机、工作站、诸如智能电话的移动装置、视频游戏控制台、智能电视等数个装置中的任一者中。如本文进一步描述,处理系统100包括处理器核110、一个或多个高速缓存存储器级别例如,高速缓存存储器140、高速缓存控制器120、待决未命中缓冲区130以及主存储器150。处理器核110包括一个或多个指令流水线,用于执行以计算机程序的形式组织的指令,从而代表电子装置执行任务。虽然处理器核110可具有例如呈寄存器的形式的一定量的整体存储器,但这种存储器在存储容量方面通常是有限的。因此,为了执行指令,处理器核110存储并检索来自处理系统100的存储器层次结构的数据,所述存储器层次结构包括一个或多个高速缓冲存储器级别本文中表示为单个高速缓存存储器级别140以及主存储器150。特别地,在执行指令的过程中,处理器核110生成称为存储器访问请求102的操作,以存储存储操作或加载读取操作来自存储器层次结构的数据。一个或多个高速缓冲存储器级别140以及主存储器150一起工作以满足存储器访问请求102,如本文进一步描述。高速缓存存储器140是存储供处理器核110访问的数据的存储器模块。在至少一个实施方案中,高速缓存存储器140包括一组条目,每个条目存储称为高速缓存行的相关联数据单元。在一些实施方案中,一个或多个高速缓存存储器级别140的每一个是组关联高速缓存,其中每个高速缓存被划分成多个组。每个组包括数个数据位置或通道,其中每个通道对应于存储高速缓存行的高速缓存条目。每个组仅存储与存储器地址的子集相关联的高速缓存行,其中与一个组相关联的子集由对应的高速缓存控制器基于存储器地址的一部分被称为索引进行标识。通过采用组关联性,一个或多个高速缓存存储器级别140促进相对快速地标识高速缓存未命中和高速缓存命中。高速缓存控制器120是被配置来从处理器核110接收对数据的存储器访问请求102并搜索高速缓存存储器140以确定高速缓存条目中的一个是否存储与存储器访问请求102所针对的存储器地址相关联的高速缓存行的模块。如果在高速缓存存储器140中找到所请求高速缓存行,则发生高速缓存命中。在高速缓存命中的情况下,高速缓存控制器120通过在读取操作的情况下将来自高速缓存存储器140的所请求高速缓存行提供给处理器核110,或者在写入操作的情况下将写入数据存储到高速缓存条目,来满足存储器访问请求102。如果在高速缓存存储器140中未找到所请求高速缓存行,则发生高速缓存未命中。在高速缓存存储器140处发生高速缓存未命中的情况下,高速缓存控制器120将存储器访问请求102提供给主存储器150。响应于存储器访问请求102,主存储器150在所述请求102所针对的主存储器地址处检索高速缓存行,并将所述高速缓存行提供给高速缓存存储器140,在此情况下满足存储器访问请求102。在一些实施方案中,高速缓存存储器140的尺寸被设定成使得它在给定的时间点无法存储处理器核110所请求的所有数据,从而需要通过如上所述的存储器层次结构传输数据。每当发生高速缓存未命中且必须从主存储器150提取所请求高速缓存行时,从主存储器检索高速缓存行需要时间,在此期间处理器核110可能接收到对同一高速缓存行的一个或多个另外的请求。为减少由于在对高速缓存行的尚未解决的访问请求待决时生成对同一高速缓存行的多个存储器访问请求而导致的低效率,处理系统100在高速缓存存储器140处跟踪尚未解决的访问请求。为了示出,在操作中,处理器核110向高速缓存控制器120发送存储器访问请求102,所述高速缓存控制器120在高速缓存存储器140中搜索所请求高速缓存行。如果在高速缓存存储器140中找到所请求高速缓存行,则将其提供给处理器核110。如果在高速缓存存储器140中未找到所请求高速缓存行,则高速缓存控制器120将存储器访问请求102提供给主存储器150。当所请求高速缓存行正处于由处理器核110从主存储器150检索提取的过程中时,高速缓存控制器120将高速缓存条目指派给正被提取的高速缓存行。在一些实施方案中,高速缓存控制器120指派对应于高速缓存组和通道的高速缓存条目,一旦已从主存储器150检索到高速缓存行,就将所述高速缓存行存储在所述高速缓存条目中。高速缓存控制器120在高速缓存条目处存储未命中标签147,所述未命中标签147包括正被提取的高速缓存行的主存储器地址以及指示所述高速缓存行是待决高速缓存未命中的对象的状态位。高速缓存控制器120还在待决未命中缓冲区130中存储高速缓存条目CE标签165,所述高速缓存条目标签165包括数据索引和关于已被指派给正被提取的高速缓存行的高速缓存条目的位置信息。例如,在一些实施方案中,高速缓存控制器120在待决未命中缓冲区130中存储高速缓存条目标签165,所述高速缓存条目标签165包括数据索引和已在高速缓存存储器140中指派给正被提取的高速缓存行的高速缓存通道。待决未命中缓冲区130是存储高速缓存条目标签165的存储器模块,所述高速缓存条目标签165包括数据索引和已由高速缓存控制器120指派来存储高速缓存行的高速缓存条目的高速缓存条目位置信息,所述高速缓存行是尚未解决的访问请求的对象。在一些实施方案中,待决未命中缓冲区130被配置来存储高速缓存条目标签,所述高速缓存条目标签包括数据索引和已经为正处于从主存储器150提取的过程中的每个高速缓存行指派的高速缓存通道。在一些实施方案中,待决未命中缓冲区130中的包括数据索引和所指派的高速缓存通道的每个高速缓存条目标签比正处于从主存储器150提取的过程中的高速缓存行的完整主存储器地址小即,需要更少的位。在对高速缓存行的第一存储器访问请求102仍处于从主存储器150实现的过程中时,高速缓存控制器120从处理器核110接收到对所述高速缓存行的后续存储器访问请求104的情况下,高速缓存控制器120搜索高速缓存存储器140,以确定高速缓存条目中的一个是否包含与后续存储器访问请求104所针对的存储器地址相关联的高速缓存行。在此情况下,高速缓存控制器120在高速缓存条目处标识正被提取的高速缓存行的主存储器地址以及指示所述高速缓存行是待决的高速缓存未命中的对象的状态位。基于高速缓存控制器对状态位的读取,高速缓存控制器将不向主存储器150转发对所请求高速缓存行的后续存储器访问请求104,而是将继续进行它的其他任务。当主存储器150在所述请求所针对的主存储器地址处检索到高速缓存行并将所述高速缓存行提供给高速缓存存储器140时,高速缓存控制器120将高速缓存行的数据索引与存储在待决未命中缓冲区130中的高速缓存条目标签165进行比较。高速缓存控制器将高速缓存行的数据索引与所存储的高速缓存条目标签进行匹配,并且从高速缓存条目标签165读取高速缓存存储器140中的已被指派来存储所述高速缓存行的高速缓存条目。高速缓存控制器120将所述高速缓存行存储在所述高速缓存条目的先前指派的组和通道处并将状态位更新为有效状态,从而指示所述高速缓存行存在于高速缓存存储器140中。图2示出高速缓存控制器220的实例,所述高速缓存控制器220响应于高速缓存未命中而在高速缓存存储器240中的高速缓存条目245处存储未命中标签247,并且生成高速缓存条目标签265并将其存储在待决未命中缓冲区230中。高速缓存控制器220从处理器未示出接收对高速缓存行的请求,并且搜索高速缓存存储器240以确定高速缓存条目中的一个是否存储了与存储器访问请求所针对的存储器地址相关联的高速缓存行。在此实例中,所请求高速缓存行并不存在于高速缓存存储器240中,因此高速缓存控制器220将存储器访问请求提供给主存储器未示出。当提供给主存储器的存储器访问请求待决时,高速缓存控制器220将高速缓存条目245指派给作为待决的存储器访问请求的对象的高速缓存行,并且生成未命中标签247,所述未命中标签247包括所述高速缓存行的主存储器地址以及指示所述高速缓存行是待决的存储器访问请求的对象的状态位。高速缓存控制器220将未命中标签247存储在高速缓存存储器240中的所指派高速缓存条目245处。高速缓存控制器220还生成高速缓存条目标签265,所述高速缓存条目标签265包括用于作为待决的存储器访问请求的对象的高速缓存行和高速缓存控制器220已指派给所述高速缓存行的高速缓存条目245的数据索引。高速缓存控制器220将高速缓存条目标签265存储在待决未命中缓冲区230中。通常,高速缓存条目具有指示所述高速缓存条目是否填充有有效的高速缓存行的状态位。在此实例中,存储在高速缓存条目245处的未命中标签247包括状态位,所述状态位指示与存储在未命中标签247中的主存储器地址相关联的数据是待决的存储器访问请求“未命中待决”的对象。图3示出处理器310的实例,所述处理器310根据一些实施方案向高速缓存控制器320发出对作为待决的存储器访问请求的对象的高速缓存行的后续请求304。高速缓存控制器320接收后续请求304并在高速缓存存储器340中搜索所请求高速缓存行。高速缓存控制器320将所请求高速缓存行的主存储器地址与存储在高速缓存条目345处的未命中标签347进行匹配。高速缓存控制器320读取未命中标签347的状态位未示出,并且确定所请求高速缓存行已经是待决的存储器访问请求的对象。在确定所请求高速缓存行已处于正从主存储器未示出中检索的过程中之后,高速缓存控制器320将对高速缓存存储器340的搜索的结果视为已被复制到处理器未示出的高速缓存命中,并且继续进行它的其他任务而不向主存储器创建对所请求高速缓存行的另外请求。因为高速缓存控制器320能够根据它对高速缓存存储器340的搜索确定所请求高速缓存行是待决未命中的对象,所以高速缓存控制器320并不需要检查待决未命中缓冲区未示出来确定是否所请求高速缓存行是待决未命中的对象,从而节省了功率。图4示出高速缓存控制器420的实例,所述高速缓存控制器420向主存储器450发出存储器访问请求402,从在主存储器450中存储数据460的主存储器地址复制所请求数据460,并且将数据460存储在高速缓存存储器440中的高速缓存条目未示出处,所述高速缓存条目由存储在待决未命中缓冲区430中的高速缓存条目标签465指示。响应于存储器访问请求402,主存储器450在请求402所针对的主存储器地址处检索高速缓存行,并将数据460提供给高速缓存控制器420。高速缓存控制器420将数据460的数据索引与存储在待决未命中缓冲区430中的高速缓存条目标签进行比较。当高速缓存控制器420将数据460的数据索引与高速缓存条目标签465的索引进行匹配时,高速缓存控制器420从高速缓存条目标签465读取高速缓存条目。高速缓存控制器420将数据460存储在高速缓存存储器440中的由高速缓存条目标签465指示的位置处。高速缓存控制器420将高速缓存条目处的条目的状态位更新为有效状态,从而指示数据460存在于高速缓存存储器440中。图5示出高速缓存条目标签565的实例。高速缓存条目标签565包括用于作为存储器访问请求的对象的高速缓存行的数据索引512以及指派给所述高速缓存行的高速缓存条目未示出的高速缓存通道514。数据索引512包括高速缓存行的主存储器地址的子集,并且比完整主存储器地址短。高速缓存通道514包括高速缓存存储器未示出中已被指派给作为存储器访问请求的对象的高速缓存行且由未命中标签未示出临时占用的通道。高速缓存条目标签565比作为存储器访问请求的对象的高速缓存行的完整主存储器地址小需要更少的存储容量。图6示出未命中标签647的实例。对于全关联高速缓存,未命中标签647包括作为存储器访问请求的对象的高速缓存行的完整主存储器地址616以及指示与主存储器地址616相关联的高速缓存行是待决未命中的对象的状态位618。对于组关联高速缓存,未命中标签647包括作为存储器访问请求的对象的高速缓存行的完整主存储器地址616的一部分以及指示与主存储器地址616相关联的高速缓存行是待决未命中的对象的状态位618。图7示出处理对已经是待决的存储器访问请求的对象的数据的后续存储器访问请求的方法700。在框702处,高速缓存控制器接收对数据的请求。在框704处,高速缓存控制器在高速缓存存储器中搜索所请求数据,并且确定是否所述数据存在于高速缓存存储器中或针对所请求数据的未命中标签存在于高速缓存存储器中。如果所请求数据和针对所请求数据的未命中标签都不存在于高速缓存存储器中,则在框706处,高速缓存控制器向主存储器发送存储器访问请求以从主存储器提取所请求数据。在框708处,高速缓存控制器将高速缓存条目指派给所请求数据。在框710处,高速缓存控制器生成包括所请求数据的主存储器地址以及指示所述数据是高速缓存未命中的对象的状态位的未命中标签,并且将所述未命中标签存储在所述高速缓存条目处。在框712处,高速缓存控制器生成包括用于所请求数据和所指派高速缓存条目的索引的高速缓存条目标签,并且将所述高速缓存条目标签存储在未命中待决缓冲区中。在框714处,高速缓存控制器从主存储器接收所请求数据。在框716处,高速缓存控制器在待决未命中缓冲区中查询匹配所请求数据的数据索引的高速缓存条目标签,并且从高速缓存条目标签读取高速缓存条目信息。在框718处,高速缓存控制器将所请求数据复制到高速缓存条目标签中所指定的高速缓存条目,并且将针对所述高速缓存条目的状态位更新为有效状态。返回框704,如果高速缓存控制器在高速缓存存储器中搜索所请求数据并确定高速缓存存储器包含对应于所请求数据的未命中标签或者高速缓存存储器包含所请求数据,则在框720处,高速缓存控制器确定用于所请求数据的高速缓存条目是未命中标签还是所请求数据。如果高速缓存条目包含针对所请求数据的未命中标签,则在框722处,高速缓存控制器像已被复制到处理器中的高速缓存命中那样处理未命中标签,并且继续执行其他指令而将对所请求数据的存储器访问请求置于待决状态。如果在框720处,高速缓存控制器确定用于所请求数据的高速缓存条目包含所请求数据,则在框724处,高速缓存控制器将所请求数据复制到处理器。在一些实施方案中,上述技术的某些方面可由执行软件的处理系统的一个或多个处理器来实现。所述软件包括存储在或以其他方式有形地体现在非暂时性计算机可读存储介质上的一组或多组可执行指令。所述软件包括指令和某些数据,所述指令和某些数据在由一个或多个处理器执行时,操纵所述一个或多个处理器以执行上述技术的一个或多个方面。非暂时性计算机可读存储介质包括例如磁盘或光盘存储装置、诸如闪存的固态存储装置、高速缓存、随机存取存储器RAM,或者一个或多个其他非易失性存储器装置等。存储在非暂时性计算机可读存储介质上的可执行指令可以是源代码、汇编语言代码、目标代码或者由一个或多个处理器解译或以其他方式执行的其他指令格式。计算机可读存储介质可包括在使用期间可由计算机系统访问以向计算机系统提供指令和或数据的任何存储介质或存储介质的组合。此类存储介质可包括但不限于光学介质例如,压缩光盘CD、数字通用光盘DVD、蓝光光盘、磁性介质例如,软盘、磁带或磁性硬盘驱动器、易失性存储器例如,随机存取存储器RAM或高速缓存、非易失性存储器例如,只读存储器ROM或闪存或基于微机电系统MEMS的存储介质。计算机可读存储介质可嵌入计算系统中例如,系统RAM或ROM,固定地附接到计算系统例如,磁性硬盘驱动器,可移除地附接到计算系统例如,光盘或基于通用串行总线USB的闪存,或者经由有线或无线网络耦合到计算机系统例如,网络可访问存储装置NAS。应注意,并非上文在一般描述中所描述的所有活动或元件都是必需的,特定活动或装置的一部分可能不是必需的,并且除所描述的那些之外,可执行一个或多个其他活动,或者包括其他元件。再者,列出活动的次序不一定是执行所述活动的次序。此外,已参考具体实施方案对概念进行描述。然而,本领域普通技术人员应理解,在不脱离如所附权利要求所阐述的本公开的范围的情况下,可进行各种修改和改变。因此,说明书和附图应视为说明性的而不是限制性的,并且所有此类修改形式意图包括在本公开的范围内。上文已关于具体实施方案描述了益处、其他优点和问题解决方案。然而,所述益处、优点、问题解决方案以及可能致使任何益处、优点或解决方案出现或变得更明显的任何一个或多个特征都不应视为是任何或所有权利要求的关键、必需或本质特征。此外,上文所公开的特定实施方案仅仅是说明性的,因为所公开的主题可以不同的但等效的方式进行修改和实践,这些方式对受益于本文的教示的本领域技术人员来说是显而易见的。不意图对本文所示的构造或设计的细节进行限制,在下文所附权利要求中所描述的除外。因此,显而易见的是,上文所公开的特定实施方案可进行变更或修改,并且所有此类变化形式视为在所公开主题的范围内。因此,本文寻求的保护如下文所附权利要求中所阐述。

权利要求:1.一种方法,其包括:响应于对高速缓存[140]处的数据的第一请求[102]的高速缓存未命中,指派所述高速缓存的高速缓存条目[245]来存储所述数据;以及当所述数据正被检索到所述高速缓存时,在所述高速缓存条目处存储所述第一请求在所述高速缓存处待决的指示符[147]。2.如权利要求1所述的方法,其还包括:当正从不同的存储器级别[150]检索所述数据时,将所述高速缓存条目的标识符[165]存储在缓冲区中。3.如权利要求2所述的方法,其还包括:响应于当所述数据正被检索到所述高速缓存时在所述高速缓存处接收到对所述数据的第二请求[104],读取所述高速缓存条目处的所述指示符;以及响应于基于所述指示符标识出所述第一请求在所述高速缓存处待决,将对所述第一数据的所述第二请求置于待决状态[722],直到所述数据已被检索到所述高速缓存。4.如权利要求2所述的方法,其还包括:响应于在所述高速缓存处接收到所述数据,将所述数据存储在所述高速缓存中的所述高速缓存条目处。5.如权利要求4所述的方法,其还包括:响应于在所述高速缓存处接收到所述数据,访问所述缓冲区以确定所述高速缓存中的将要存储所述数据的所述高速缓存条目。6.如权利要求4所述的方法,其还包括:更新所述条目处的所述指示符以指示所述条目存储了有效数据。7.如权利要求2所述的方法,其中所述标识符包括所述高速缓存条目的组[512]和通道[514]的指示符。8.如权利要求2所述的方法,其中所述标识符包括基于对应于所述数据的存储器地址的标签值。9.一种处理器[100],其包括:高速缓存[140];以及高速缓存控制器[120],所述高速缓存控制器[120]用于:作为响应于对所述高速缓存处的数据的第一请求[102]的高速缓存未命中的响应,指派所述高速缓存的高速缓存条目[245]来存储所述数据;以及当所述数据正被检索到所述高速缓存时,在所述高速缓存条目处存储所述第一请求在所述高速缓存处待决的指示符[147]。10.如权利要求9所述的处理器,其中所述高速缓存控制器用于:当正从不同的存储器级别检索所述数据时,将所述高速缓存条目的标识符[165]存储在缓冲区[130]中。11.如权利要求10所述的处理器,其中所述高速缓存控制器用于:响应于当所述数据正被检索到所述高速缓存时在所述高速缓存处接收到对所述数据的第二请求[104],读取所述高速缓存条目处的所述指示符;并且响应于基于所述指示符标识出所述第一请求在所述高速缓存处待决,将对所述数据的所述第二请求置于待决状态[722],直到所述数据已被检索到所述高速缓存。12.如权利要求10所述的处理器,其中所述高速缓存控制器用于:响应于接收到所述数据,将所述数据存储在所述高速缓存中的所述高速缓存条目处。13.如权利要求12所述的处理器,其中所述高速缓存控制器用于:响应于接收到所述数据,访问所述缓冲区以确定所述高速缓存中的将要存储所述第一数据的所述高速缓存条目。14.如权利要求12所述的处理器,其中所述高速缓存控制器用于:更新所述指示符以指示所述条目存储了有效数据。15.如权利要求10所述的处理器,其中所述标识符包括所述高速缓存条目的组和通道的指示符。

百度查询: 超威半导体公司 用于在高速缓存条目处标识存储器访问请求的待决的系统和方法

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。