当前位置: 首页 > 专利查询>英特尔公司专利>正文

用于执行自旋‑循环跳转的装置和方法制造方法及图纸

技术编号:15768566 阅读:337 留言:0更新日期:2017-07-06 19:30
一种用于执行自旋‑循环跳转的装置和方法。处理器的一个实施例包括:跳转‑暂停执行逻辑,其执行跳转‑暂停指令,所述跳转‑暂停指令指定条件并且标识目的地指令;其中响应于跳转‑暂停指令的执行,跳转‑暂停执行逻辑要提供跳转‑暂停指令和目的地指令之间的循环包括自旋‑等待循环的提示,以及测试所述条件,如果满足所述条件,则所述跳转‑暂停执行逻辑在跳转到目的地指令之前按指定量延迟执行。处理器的第二实施例包括测试‑减法执行逻辑,其执行测试‑减法指令,所述测试‑减法执行逻辑使第二源寄存器中的计数器值递减,所述测试‑减法执行逻辑还测试第一源寄存器或存储器中的监视值和第二源寄存器中的计数器值,其中如果监视值具有指示退出条件的值或者如果计数器值等于零,则所述测试‑减法执行逻辑要退出自旋‑等待循环。

Apparatus and method for performing spin cycle jump

An apparatus and method for performing spin cycle jump. One embodiment comprising processor: jump suspend its execution logic, jump the jump pause instruction, pause instruction specified conditions and identifies the destination instruction; the response to jump suspend the execution of the instruction, the jump suspended logic to provide jump suspended between instruction and destination instruction cycle including the spin wait loop tips, and testing the condition, if the condition is satisfied, the jump suspended logic instructions before by the amount specified in the destination jump to delay execution. Second processor embodiments include test subtraction execution logic, the execution of the test subtraction instruction, the test execution logic to subtraction counter second source register values decline, the test subtraction execution logic test counter first source register or memory monitoring value and second source register values, which if the monitoring value indicating exit condition value or if the counter value is equal to zero, then the test subtraction execution logic to exit the spin wait loop.

【技术实现步骤摘要】
【国外来华专利技术】用于执行自旋-循环跳转的装置和方法
本专利技术一般涉及计算机处理器的领域。更特别地,本专利技术涉及用于执行自旋-循环(spin-loop)跳转的方法和装置。
技术介绍
指令集或指令集架构(ISA)是与编程相关的计算机架构的部分,其包括原生数据类型、指令、寄存器架构、寻址模式、存储器架构、中断和异常处理、以及外部输入和输出(I/O)。应注意的是,术语“指令”在本文中一般是指宏指令(即被提供给处理器以供执行的指令),与微指令或微操作(micro-op)(即处理器的解码器解码宏指令的结果)相对。微指令或微操作可以被配置成指示处理器上的执行单元来实行操作以实现与宏指令关联的逻辑。ISA与微架构不同,所述微架构是用于实现指令集的处理器设计技术的集合。具有不同微架构的处理器可以共享公共指令集。例如,Intel®奔腾4处理器、Intel®CoreTM处理器和来自加利福尼亚州桑尼维尔的高级微设备公司的处理器实现几乎相同的版本的x86指令集(具有已经添加有较新版本的一些扩展),但具有不同的内部设计。例如,ISA的相同寄存器架构可以使用公知的技术在不同的微架构中以不同的方式实现,包括专用物理寄存器、使用寄存器重命名机制(例如,使用寄存器别名表(RAT)、重排序缓冲器(ROB)和退役寄存器文件)的一个或多个动态分配的物理寄存器。除非以其他方式指定,否则短语寄存器架构、寄存器文件和寄存器在本文中用于指代对软件/编程器可见的那个以及指令以其指定寄存器的方式。在需要区别的情况下,形容词“逻辑的”、“架构的”或“软件可见的”将用于指示寄存器架构中的寄存器/文件,而不同形容词将用于指定给定微架构中的寄存器(例如,物理寄存器、重排序缓冲器、退役寄存器、寄存器池)。指令集包括一个或多个指令格式。给定指令格式定义各种字段(位的数量、位的位置)以除了其他之外尤其指定将执行的操作和该操作将在其上执行的(一个或多个)操作数。某些指令格式通过指令模板(或者子格式)的定义被进一步分解。例如,给定指令格式的指令模板可以被定义为具有指令格式的字段的不同子集(所包括的字段典型地以相同的次序,但是至少某些具有不同的位的位置,因为包括更少的字段)和/或被定义为具有不同地解释的给定字段。给定指令使用给定指令格式(并且,如果被定义,以该指令格式的指令模板中的给定的一个)来表达并指定操作和操作数。指令流是指令的特定序列,其中序列中的每个指令是以指令格式(并且,如果被定义,该指令格式的指令模板中的给定的一个)的指令的出现。附图说明对本专利技术的更好的理解可以从以下详细描述结合附图来获得,其中:图1A和1B是图示根据本专利技术的实施例的通用矢量友好的指令格式及其指令模板的框图;图2A-D是图示根据本专利技术的实施例的示例性特定矢量友好的指令格式的框图;图3是根据本专利技术的一个实施例的寄存器架构的框图;以及图4A是图示根据本专利技术的实施例的示例性有序取出、解码、退役流水线和示例性寄存器重命名、无序发出/执行流水线二者的框图;图4B是图示根据本专利技术的实施例的要被包括在处理器中的有序取出、解码、退役核的示例性实施例和示例性寄存器重命名、无序发出/执行架构核二者的框图;图5A是单个处理器核、连同其到管芯上互连网络的连接的框图;图5B图示根据本专利技术的实施例的图5A中的处理器核的部分的展开图。图6是根据本专利技术的实施例的具有集成存储器控制器和图形的单核处理器和多核处理器的框图;图7图示根据本专利技术的一个实施例的系统的框图;图8图示根据本专利技术的实施例的第二系统的框图;图9图示根据本专利技术的实施例的第三系统的框图;图10图示根据本专利技术的实施例的片上系统(SoC)的框图;图11图示根据本专利技术的实施例的对比使用软件指令转换器来将源指令集中的二进制指令转换成目标指令集中的二进制指令的框图;图12图示可以在其上实现本专利技术的实施例的示例性处理器;图13图示示出示例性自旋-循环的方法;图14图示由跳转-暂停(jump-pause)指令的一个实施例执行的多个操作;图15图示根据测试-减法(test-subtract)指令的一个实施例的方法。具体实施方式在以下描述中,为了解释的目的,阐述众多具体细节以便提供对以下描述的本专利技术的实施例的透彻理解。然而,对于本领域技术人员将明显的是,本专利技术的实施例可以在没有这些具体细节中的一些的情况下实践。在其他情况下,公知的结构和设备以框图的形式示出以避免使本专利技术的实施例的基础原理模糊。示例性处理器架构和数据类型指令集包括一个或多个指令格式。给定指令格式定义各种字段(位的数量、位的位置)以除了其他之外尤其指定将执行的操作(操作码(opcode))和该操作将在其上执行的(一个或多个)操作数。某些指令格式通过指令模板(或者子格式)的定义被进一步分解。例如,给定指令格式的指令模板可以被定义为具有指令格式的字段的不同子集(所包括的字段典型地以相同的次序,但是至少某些具有不同的位的位置,因为包括更少的字段)和/或被定义为具有不同地解释的给定字段。因此,ISA的每个指令使用给定指令格式(并且,如果被定义,以该指令格式的指令模板中的给定的一个)来表达并包括用于指定操作和操作数的字段。例如,示例性ADD指令具有特定操作码和指令格式,所述指令格式包括指定该操作码的操作码字段和选择操作数(源1(source1)/目的地和源2(source2))的操作数字段;并且在指令流中该ADD指令的出现将在选择特定操作数的操作数字段中具有特定的内容。称为高级矢量扩展(AVX)(AVX1和AVX2)并使用矢量扩展(VEX)编码方案的SIMD扩展的集合已经已经被发布和/或出版(例如,参见Intel®64和IA-32架构软件开发者手册,2011年10月;并且参见Intel®高级矢量扩展编程参考,2011年6月)。示例性指令格式本文描述的(一个或多个)指令的实施例可以以不同格式来体现。此外,下面详述了示例性的系统、架构和流水线。(一个或多个)指令的实施例可以在这样的系统、架构和流水线上执行,但并不限于所详述的那些。A.通用矢量友好的指令格式矢量友好的指令格式是适合于矢量指令的指令格式(例如,存在对矢量操作特定的某些字段)。虽然描述了其中通过矢量友好的指令格式支持矢量和标量操作两者的实施例,但可替换的实施例仅使用矢量友好的指令格式的矢量操作。图1A-1B是图示了根据本专利技术的实施例的通用矢量友好的指令格式及其指令模板的框图。图1A是图示了根据本专利技术的实施例的通用矢量友好的指令格式及其A类指令模板的框图;而图1B是图示了根据本专利技术的实施例的通用矢量友好的指令格式及其B类指令模板的框图。具体地,针对通用矢量友好的指令格式100定义了A类和B类指令模板,其两者都包括非存储器访问105指令模板和存储器访问120指令模板。在矢量友好的指令格式的上下文中的术语通用是指该指令格式不被束缚于任何特定指令集。虽然将描述其中矢量友好的指令格式支持下述内容的本专利技术的实施例:具有32位(4字节)或64位(8字节)数据元素宽度(或大小)的64字节矢量操作数长度(或大小)(并且因此,包括16个双字大小元素或可替换地8个四字大小元素的64字节矢量);具有16位(2字节)或8位(1字节)数据元素宽度(或大小)的64字节矢量操作数长度(或大小);具有32位(本文档来自技高网...
<a href="http://www.xjishu.com/zhuanli/55/201480083502.html" title="用于执行自旋‑循环跳转的装置和方法原文来自X技术">用于执行自旋‑循环跳转的装置和方法</a>

【技术保护点】
一种处理器,包括:跳转‑暂停执行逻辑,其执行跳转‑暂停指令,所述跳转‑暂停指令指定条件并且标识目的地指令;其中响应于跳转‑暂停指令的执行,跳转‑暂停执行逻辑要提供跳转‑暂停指令和目的地指令之间的循环包括自旋‑等待循环的提示,以及测试所述条件,如果满足所述条件,则所述跳转‑暂停执行逻辑在跳转到目的地指令之前按指定量延迟执行。

【技术特征摘要】
【国外来华专利技术】1.一种处理器,包括:跳转-暂停执行逻辑,其执行跳转-暂停指令,所述跳转-暂停指令指定条件并且标识目的地指令;其中响应于跳转-暂停指令的执行,跳转-暂停执行逻辑要提供跳转-暂停指令和目的地指令之间的循环包括自旋-等待循环的提示,以及测试所述条件,如果满足所述条件,则所述跳转-暂停执行逻辑在跳转到目的地指令之前按指定量延迟执行。2.根据权利要求1所述的处理器,其中如果不满足所述条件,则所述跳转-暂停执行逻辑要退出自旋-等待循环。3.根据权利要求1所述的处理器,其中所述指定量大于或等于零。4.根据权利要求1所述的处理器,其中所述目的地指令包括自旋-等待循环中的指令。5.根据权利要求1所述的处理器,还包括测试-减法执行逻辑,其执行测试-减法指令,所述测试-减法执行逻辑响应地使计数器值递减1、测试监视值和测试计数器值。6.根据权利要求5所述的处理器,其中所述测试-减法执行逻辑要确定是否监视值指示退出条件以及是否计数器值具有零值,其中如果监视值指示退出条件或者计数器值具有零值,则所述测试-减法执行逻辑要退出自旋-等待循环。7.根据权利要求6所述的处理器,其中如果监视值不指示退出条件或者计数器值不具有零值,则所述测试-减法执行逻辑要使自旋-等待循环中的下一个指令被执行。8.一种处理器,包括:第一源寄存器或存储器,其存储监视值;第二源寄存器,其存储计数器值;以及测试-减法执行逻辑,其执行测试-减法指令,所述测试-减法执行逻辑使第二源寄存器中的计数器值递减,所述测试-减法执行逻辑还测试第一源寄存器或存储器中的监视值和第二源寄存器中的计数器值,其中如果监视值具有指示退出条件的值或者如果计数器值等于零,则所述测试-减法执行逻辑要退出自旋-等待循环。9.根据权利要求8所述的处理器,其中如果监视值不具有指示退出条件的值或者如果计...

【专利技术属性】
技术研发人员:D西夫科夫I埃莫莱夫
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1