基于多核块的指令集架构中的寄存器重命名制造技术

技术编号:16388413 阅读:66 留言:0更新日期:2017-10-16 08:46
一种用于将架构寄存器映射到物理寄存器的设备可包含存储器和控制电路。所述存储器可经配置以存储核内寄存器重命名映射表和核间寄存器重命名映射表。所述核内寄存器重命名映射表可经配置以将所述架构寄存器映射到多核处理器的核心的所述物理寄存器。所述核间寄存器重命名映射表可经配置以响应于确定物理寄存器是已由所述第一核心执行、正在所述第一核心上执行,或预期在所述第一核心上执行的向所述架构寄存器的最近写入到的位置,使所述架构寄存器与所述第一核心的识别有关,所述最近写入是根据程序次序。所述控制电路可经配置以维持所述核内寄存器重命名映射表和所述核间寄存器重命名映射表。

【技术实现步骤摘要】
【国外来华专利技术】基于多核块的指令集架构中的寄存器重命名
本文所揭示的方面大体上涉及将架构寄存器映射到物理寄存器,且明确地说,涉及在基于块的指令集架构的环境中,将架构寄存器映射到物理寄存器。
技术介绍
计算机程序表示作为指令序列的算法。序列的次序称为程序次序。通常,在编程器可理解的源代码中表示的计算机程序中的指令通过编译器重组成由处理单元可执行的机器代码。随着消费者为越来越多的应用程序提供了市场,电子行业一直致力于提高处理单元的速度。同时执行多个指令(即,并行处理)的能力是提高处理单元的速度的一种方法。在并行处理中,处理单元包含多个执行单元。超长指令字(VLIW)是呈现用以并行处理的一种方法的处理器架构设计。在VLIW架构中,将指令分组成集束。通常,所述集束内的指令是彼此独立的。另外,VLIW架构经配置以使得通常获取并调度所述集束中的指令来作为一个单元执行。在用以并行处理的另一种方法中,执行单元响应于指令所需的所有操作数已由执行单元接收而执行指令块。因为使用此方法,有可能在第二执行单元执行第二指令之前,第一执行单元执行第一指令,即使第一指令在程序次序中的位置晚于第二指令,所以此处理单元可称为乱序(OOO)处理单元。基于块的指令集架构可经配置以结合根据基于块的微架构而配置的OOO处理单元来操作。在基于块的指令集架构中,计算机程序中的指令可被指派给还可称为块的群组。在基于块的微架构中,计算机处理单元的计算机处理器核心可经配置以执行作为一个单元的指令块。然而,因为计算机程序通常包含第一指令(即,生产指令)的结果是第二指令(即,消费指令)的操作数的情形,所以OOO处理单元的实施方案需要考虑消费指令的操作数取决于生产指令的情形。当消费指令等待生产指令使其结果可用于消费指令时出现的延迟(即,等待时间)可渐渐损害并行处理的优点。
技术实现思路
示范性方面可针对一种用于将架构寄存器映射到物理寄存器的设备。所述设备可包含存储器和控制电路。所述存储器可经配置以存储核内寄存器重命名映射表和核间寄存器重命名映射表。所述核内寄存器重命名映射表可经配置以将架构寄存器映射到多核处理器的核心的物理寄存器。所述核间寄存器重命名映射表可经配置以响应于确定物理寄存器是对已由第一核心执行、正在第一核心上执行,或预期在第一核心上执行的架构寄存器的最近写入的位置,使所述架构寄存器与第一核心的识别有关,所述最近写入是根据程序次序。所述控制电路可经配置以维持所述核内寄存器重命名映射表和所述核间寄存器重命名映射表。另一示范性方面可针对用于将架构寄存器映射到物理寄存器的另一设备。所述另一设备可包含:用于将架构寄存器映射到多核处理器的核心的物理寄存器的装置;以及用于响应于确定物理寄存器是对已由所述核心执行、正在所述核心上执行,或预期在所述核心上执行的架构寄存器的最近写入的位置而使架构寄存器与所述核心的识别有关的装置,所述最近写入是根据程序次序。又一示范性方面可针对一种用于在多核处理器上执行读取指令的方法。可参考第一指令块的核内寄存器重命名映射表来确定多核处理器的第一核心的物理寄存器是否为已由所述第一核心执行的向架构寄存器的最近写入的位置,所述最近写入是根据程序次序。可参考所述第一核心的核间寄存器重命名映射表来确定多核处理器的第二核心是否包含物理寄存器,其为对已由第二核心执行、正在第二核心上执行,或预期在第二核心上执行的架构寄存器的最近写入的位置。可响应于所述第二核心包含作为向架构寄存器的最近写入的位置的物理寄存器,从第二核心的物理寄存器读取值。又另一示范性方面可针对一种用于在基于块的处理器核心上执行写入指令的方法。可将值写入到基于块的处理器核心的物理寄存器,其对应于架构寄存器。所述写入指令可为第一指令块的指令。可确定包含用于架构寄存器的后续写入指令的第二指令块。可确定第一指令块与第二指令块之间的中间指令块。所述物理寄存器的识别可记录在与所述中间指令块相关联的核内寄存器重命名映射表的记录的第一字段中。可将记录的第二字段的值设定成指示物理寄存器是已由基于块的处理器核心执行的对架构寄存器的最近写入的位置,所述最近写入是根据程序次序。附图说明在详细描述、所附权利要求书和附图中描述这些和其它样本方面。图1是说明其中可操作基于块的计算机处理单元的系统的实例的框图。图2是说明基于块的计算机处理器核心的实例的框图。图3是说明一组保留站阵列的实例的框图。图4到9是说明在图1中说明的基于块的计算机处理器核心上以一序列时间周期执行的指令块的实例的图。图10是说明指令块和相关联的核内寄存器重命名映射表的实例的图。图11是说明核内寄存器重命名映射表的实例的图。图12是说明产生图11中说明的核内寄存器重命名映射表的过程的一部分的实例的图。图13是说明指令块和相关联的实时写入掩码的实例的图。图14是说明指令块和相关联的核间寄存器重命名映射表的实例的图。图15是说明核间寄存器重命名映射表的实例的图。图16和17是说明产生图15中说明的核间寄存器重命名映射表的过程的实例的图。图18是说明指令块和相关联的核间写入图的实例的图。图19是说明产生核间写入掩码的过程的实例的图。图20是说明产生与将在后续执行阶段在基于块的计算机处理器核心上执行的初始指令块相关联的输出核内寄存器重命名映射表的经更改过程的一部分的实例的图。图21是用于将架构寄存器映射到物理寄存器的设备的框图。图22到24是说明用于在多核处理器上执行读取指令的方法的实例的流程图。图25是说明用于在基于块的处理器核心上执行写入指令的方法的实例的流程图。图26是说明用于确定图25中参考的第一指令块与第二指令块之间的中间指令块的方法的实例的流程图。根据惯例,图式中所说明的各种特征可能并非按比例绘制。因此,为了清晰起见,可任意扩大或减小各种特征的尺寸。另外,为了清楚起见,可简化图式中所说明的实施方案。因此,图式可能并未说明给定设备或装置的全部组件。最后,可贯穿说明书和图式使用相同参考标号来表示相同特征。具体实施方式本文所揭示的方面大体上涉及将架构寄存器映射到物理寄存器,且明确地说,涉及在基于块的指令集架构的环境中,将架构寄存器映射到物理寄存器。基于块的指令集架构可经配置以通过根据基于块的微架构配置的乱序(OOO)计算机处理单元操作。在基于块的指令集架构中,计算机程序中的指令可被指派给还可称为块的群组。显式数据图执行(EDGE)指令集架构可为基于块的指令集架构的实例。在基于块的微架构中,计算机处理单元的计算机处理器核心可经配置以执行作为一个单元的指令块。基于块的计算机处理器核心可包含多个执行单元。执行单元响应于指令所需的所有操作数均已由执行单元接收而执行所述指令块的指令。有可能在第二执行单元可执行第二指令之前,第一执行单元可执行第一指令,即使第一指令在程序次序中的位置晚于第二指令。然而,一般来说,基于块的计算机处理单元可经配置,使得在第一指令块在程序次序中的位置早于第二指令块的情况下,在第二指令块的指令开始执行之前,第一指令块的指令开始执行。指令块中的指令数可处于一到最大数目(包含一和所述最大数目)的范围内。可相对于计算机处理器核心的微架构来定义所述最大数目。举例来说,所述最大数目可等于计算机处理器核心的保留站阵列中的保留站的数目。举例来说,但不作为限本文档来自技高网
...
基于多核块的指令集架构中的寄存器重命名

【技术保护点】
一种用于将架构寄存器映射到物理寄存器的设备,所述设备包括:存储器,其经配置以存储核内寄存器重命名映射表和核间寄存器重命名映射表,所述核内寄存器重命名映射表经配置以将所述架构寄存器映射到多核处理器的第一核心的所述物理寄存器,所述核间寄存器重命名映射表经配置以响应于确定所述物理寄存器是已由所述第一核心执行、正在所述第一核心上执行,或预期在所述第一核心上执行的向所述架构寄存器的最近写入的位置,使所述架构寄存器与所述第一核心的识别有关,所述最近写入是根据程序次序;以及控制电路,其经配置以维持所述核内寄存器重命名映射表和所述核间寄存器重命名映射表。

【技术特征摘要】
【国外来华专利技术】2015.03.04 US 14/639,0851.一种用于将架构寄存器映射到物理寄存器的设备,所述设备包括:存储器,其经配置以存储核内寄存器重命名映射表和核间寄存器重命名映射表,所述核内寄存器重命名映射表经配置以将所述架构寄存器映射到多核处理器的第一核心的所述物理寄存器,所述核间寄存器重命名映射表经配置以响应于确定所述物理寄存器是已由所述第一核心执行、正在所述第一核心上执行,或预期在所述第一核心上执行的向所述架构寄存器的最近写入的位置,使所述架构寄存器与所述第一核心的识别有关,所述最近写入是根据程序次序;以及控制电路,其经配置以维持所述核内寄存器重命名映射表和所述核间寄存器重命名映射表。2.根据权利要求1所述的设备,其中所述多核处理器是根据基于块的微架构来配置,所述第一核心经配置以执行指派给指令块的指令,且所述指令块是根据基于块的指令集架构来配置。3.根据权利要求2所述的设备,其中所述核内寄存器重命名映射表包括与第一指令块相关联的第一输入核内寄存器重命名映射表、与所述第一指令块相关联的第一输出核内寄存器重命名映射表、与第二指令块相关联的第二输入核内寄存器重命名映射表,以及与所述第二指令块相关联的第二输出核内寄存器重命名映射表。4.根据权利要求3所述的设备,其中所述设备经配置以结合执行读取指令,参考所述第一输入核内寄存器重命名映射表来确定所述物理寄存器是否为已由所述第一核心执行的向所述架构寄存器的所述最近写入的所述位置。5.根据权利要求3所述的设备,其中所述第一输出核内寄存器重命名映射表是所述第二输入核内寄存器重命名映射表。6.根据权利要求5所述的设备,其中所述核内寄存器重命名映射表包括对应于所述架构寄存器的记录,所述记录具有用以存储已映射到所述架构寄存器的所述物理寄存器的识别的第一字段,所述记录具有第二字段,所述第二字段的值经配置以指示所述物理寄存器是否为已由所述第一核心执行的向所述架构寄存器的所述最近写入的所述位置。7.根据权利要求6所述的设备,其中所述设备经配置以结合执行写入指令,确定所述第一指令块与具有后续写入指令的后续指令块之间的中间指令块,且所述设备经配置以将存储在所述第一输出核内寄存器重命名映射表的所述第一字段中的所述物理寄存器的所述识别复制到与所述中间指令块相关联的输出核内寄存器重命名映射表的对应第一字段。8.根据权利要求6所述的设备,其中所述第一指令块包含具有写入掩码的块标头,所述写入掩码具有对应于所述架构寄存器的位,所述位的值经配置以指示所述架构寄存器是否为预期在所述第一核心上执行的所述第一指令块的写入指令的目标。9.根据权利要求8所述的设备,其中所述存储器进一步经配置以存储实时写入掩码,所述控制电路进一步经配置以维持所述实时写入掩码,所述实时写入掩码与所述第一指令块相关联,所述实时写入掩码具有对应于所述架构寄存器的位,且所述实时写入掩码的所述位的值经配置以指示作为预期在所述第一核心上执行的所述第一指令块的所述写入指令的所述目标的所述架构寄存器实际上将维持曾由先前指令块的写入指令写入的值。10.根据权利要求9所述的设备,其中所述设备经配置以响应于确定所述架构寄存器实际上将维持曾由所述先前指令块的所述写入指令写入的所述值,确定所述第一指令块与具有后续写入指令的后续指令块之间的中间指令块,且所述设备经配置以将存储在所述第一输入核内寄存器重命名映射表的所述第一字段中的所述物理寄存器的所述识别复制到所述第一输出核内寄存器重命名映射表的对应第一字段,且复制到与所述中间指令块相关联的输出核内寄存器重命名映射表的对应第一字段。11.根据权利要求9所述的设备,其中所述设备经配置以结合执行读取指令,参考所述实时写入掩码来确定所述架构寄存器是否为已由所述第一核心执行、正在所述第一核心上执行,或预期在所述第一核心上执行的所述第一指令块的所述写入指令的所述目标。12.根据权利要求6所述的设备,其中所述多个核内寄存器重命名映射表的数目等于一与所述第一核心经配置以同时执行的所述指令块的数目相加的总和,所述第一核心经配置以同时执行的所述指令块的所述数目等于所述第一核心的保留站阵列的数目,传达到一个保留站阵列的一个指令块的执行是针对所述一个保留站阵列的一执行阶段,且所述第二输出核内寄存器重命名映射表是将在后续执行阶段期间在所述第一核心上执行的初始指令块的输入核内寄存器重命名映射表。13.根据权利要求12所述的设备,其中所述多核处理器的第二核心经配置以结合所述第一核心操作,且所述核间寄存器重命名映射表包括与所述第一核心相关联的第一核间寄存器重命名映射表,以及与所述第二核心相关联的第二核间寄存器重命名映射表。14.根据权利要求13所述的设备,其中所述第一核间寄存器重命名映射表包括针对所述执行阶段的第一个第一核间寄存器重命名映射表,以及针对所述后续执行阶段的第二个第一核间寄存器重命名映射表,且所述第二核间寄存器重命名映射表包括针对所述执行阶段的第一个第二核间寄存器重命名映射表,以及针对所述后续执行阶段的第二个第二核间寄存器重命名映射表。15.根据权利要求14所述的设备,其中所述设备经配置以结合执行读取指令,参考所述第一个第一核间寄存器重命名映射表来确定所述第一核心是否包含作为已由所述第一核心执行、正在所述第一核心上执行,或预期在所述第一核心上执行的向所述架构寄存器的所述最近写入的所述位置的所述物理寄存器。16.根据权利要求14所述的设备,其中所述存储器进一步经配置以存储核间写入掩码,所述控制电路进一步经配置以维持所述核间写入掩码,所述核间写入掩码与所述第一个第一核间寄存器重命名映射表相关联,所述核间写入掩码具有对应于所述架构寄存器的位,所述核间写入掩码的所述位的值经配置以指示向所述架构寄存...

【专利技术属性】
技术研发人员:G·M·赖特
申请(专利权)人:高通股份有限公司
类型:发明
国别省市:美国,US

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

1