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

完成其执行而不读取进位标志的循环指令制造技术

技术编号:11487972 阅读:82 留言:0更新日期:2015-05-21 07:32
本公开涉及一种处理元件和芯片组系统,用于完成对循环指令的执行且不读取进位标志。本公开的一个方面包括接收循环指令。该循环指令可指示源操作数和循环量。结果可存储在由循环指令指示的目的操作数中。该结果可使得源操作数循环了所述循环量。可以完成对循环指令的执行而不读取进位标志,不读取溢出标志,不读取符号标志、不读取零标志,并且不写入进位标志、不写入溢出标志、不写入符号标志、不写入零标志。

【技术实现步骤摘要】
完成其执行而不读取进位标志的循环指令本申请是美国优先权号为12/655,213、中国申请号为201010623118.1、题为“完成其执行而不读取进位标志的循环指令”的申请的分案申请。专利
各种不同的实施例涉及指令、执行所述指令的方法、执行指令的执行单元或包含这类执行单元的设备。尤其,各种不同的实施例涉及完成执行而不读取进位标志的循环指令、执行所述指令的方法、执行所述指令的执行单元或包含这类执行单元的设备。
技术介绍
循环指令通常包含在指令集架构(ISA)中。循环指令允许设备对数据进行循环。一种已知的循环指令是ROR指令-循环右移指令。ROR指令记载在英特尔架构软件开发者手册的第2卷“指令集说明”,序号:243192,1999年中。除了会引起循环之外,ROR指令还读取进位标志。读取这种算术标志容易花费额外的时间。此外,对读取进位标志的需要容易增加串行化,从而容易限制并行处理和/或预测执行。此外,ROR指令还会用目的操作数覆写源操作数。一旦ROR指令执行完成,就会破坏源操作数。在一些场合下,可能需要额外的数据移动指令或操作来保留源操作数。这些数据移动指令或操作容易花费额外的时间。由于快速、有效处理数据的重要性,新的且不同的循环指令将是有益的。附图说明通过参考以下用来阐述本专利技术实施例的描述和附图,可最大程度地理解本专利技术。在附图中:图1是指令处理装置的一示例性实施例的方框图。图2是处理一循环指令实施例的方法实施例的方框流程图。图3示出了代表合适标志寄存器一特定示例性实施例并具有进位标志(CF)和溢出标志(OF)的EFLAGS寄存器。图4示出了合适的32位通用寄存器组的一个特定示例性实施例。图5示出了合适的64位通用寄存器组的另一特定示例性实施例。图6示出了对代表循环指令一特定示例性实施例的RORX指令的说明。图7示出了对代表循环指令一特定示例性实施例的RORX指令进行伪代码操作。图8是合适的计算机系统的第一示例性实施例的方框图。图9是合适的计算机系统的第二示例性实施例的方框图。具体实施方式在下面的记述中,阐述了众多具体细节,例如指令执行明细、数据类型、寄存器类型、寄存器安排、处理器类型、系统配置,及类似物。然而应该理解,本专利技术的实施例在没有这些特定细节的情况下也可以实施。在其它例子中,为了不使记述内容难以理解,未详细说明公知的电路、结构和特征。实施例涉及具有执行单元的指令处理装置,其中所述执行单元用来执行循环指令并完成对循环指令的执行而不读取进位标志。图1是指令处理装置100的示例性实施例的方框图。在一个或多个实施例中,指令处理装置可以是通用处理器。该处理器可以是多种复杂指令集计算(CISC)处理器、多种精简指令集计算(RISC)处理器、多种非常长指令字(VLIW)处理器、前述处理器的多种混合形式,或完全其它类型的处理器中的任何一者。在一个或多个实施例中,处理器可以是由加利福尼亚州圣克拉拉市的英特尔公司制造的那种类型的通用处理器,尽管这不是必需的。可从英特尔公司获得的通用处理器的特殊示例包括但不局限于,CoreTMi7处理器至尊版、,CoreTMi7处理器、CoreTMi5处理器、CoreTM2至尊版处理器、CoreTM2四核处理器、CoreTM2双核处理器、处理器,以及处理器。作为替代,指令处理装置可以是专用处理器。合适的专用处理器的代表例包括但不局限于,网络处理器、通信处理器、加密处理器、图形处理器、协处理器、嵌入式处理器,以及数字信号处理器(DSP),这里仅列举出一些例子。这些处理器也可基于CISC、RISC、VLIW、其混合形式,或完全其它类型的处理器。在又一些其它实施例中,指令处理装置可以是控制器(例如,微控制器),或者能处理指令的其它类型的逻辑电路。在又一些其它实施例中,指令处理装置可以是指令执行加密电路。再次参见图1,在使用中,指令处理装置可接收循环指令102的一个实施例。作为示例,可从存储器或软件接收循环指令。循环指令可代表由指令处理装置识别的机器指令或控制信号。指令处理装置可具有专门或特定的电路或其它逻辑(例如,与硬件和/或固件组合的软件),它们可操作用于响应循环指令和/或根据循环指令的规定,对数据执行循环操作,以及用于响应机器指令或作为机器指令的结果,存储循环结果。指令处理装置的图示实施例包括指令解码器104。解码器可接收并解码循环指令。解码器可产生并输出反映原始循环指令或从原始循环指令导出的一个或多个微操作、微代码入口点、微指令、其它指令,或者其它控制信号。解码器可使用多种不同机构来实现。合适结构的示例包括但不局限于,微代码只读存储器(ROM)、查找表、硬件实现、可编程逻辑阵列(PLA),以及类似物。解码器不是该装置的必备组件。在一个或多个其它实施例中,装置可改为具有指令仿真器、指令翻译器、指令变形器、指令解释器,或者其它指令转换逻辑。多种不同类型的指令仿真器、指令变形器、指令翻译器,以及类似物是业内已知的。指令变换逻辑可接收循环指令,仿真、翻译、变形、解释或以其它方式变换循环指令,并输出与原始循环指令对应的一个或多个指令或控制信号。指令变换逻辑可用软件、硬件、固件或其组合来实现。在一些情形下,一些或全部指令变换逻辑可与指令处理装置的其余部分一起位于芯片外,例如位于分离的芯片或系统存储器中。在一些情形下,指令处理装置可既具有解码器又具有指令变换逻辑。再次参见图1,指令处理装置包括执行单元106。作为示例,执行单元可包括算术逻辑单元,或其它类型的能执行循环操作的逻辑单元。执行单元包括循环单元108。不同类型的循环单元是业内已知的,例如桶式循环器。本专利技术不局限于任何已知类型的循环电路或单元。在图示的实施例中,执行单元与解码器的输出耦合,或以其它方式与其通信。术语“耦合”可表示两个或更多个元件直接电气接触或连接。然而,“耦合”也可指两个或更多个元件彼此并不直接连接,但它们仍然彼此协作或交互(例如,通过居间组件)。作为一个示例,解码器和执行单元可通过居间的可选缓冲器或业内已知的可能耦合在解码器和执行单元之间的其它组件而相互耦合。作为解码器对循环指令的解码结果,执行单元可接收反映循环指令或从循环指令导出的一个或多个微操作、微代码入口点、微指令、其它指令,或者其它控制信号。作为替代,执行单元可接收和执行来自前述指令变换逻辑的指令或控制信号。在一个或多个实施例中,由于指示了源操作数(SRC)和循环量的循环指令102,执行单元可操作用于在由循环指令指示的目的操作数(DEST)中存储一结果,其中该结果使得源操作数循环了所述循环量。在一个或多个实施例中,循环指令可以是循环右移指令,其中循环右移指令可使数据向右循环。被循环移出最低有效位(LSB)的那些位可通过最高有效位(MSB)转回或绕回。作为替代,循环指令可以是循环左移指令。在循环中,数据没有丢失而仅仅是被循环或重置了。执行单元可以包括可操作用于执行从循环指令导出的指令或其它控制信号并对源操作数作所述循环量的循环操作的电路或其它执行逻辑(例如,与硬件和/或固件组合的软件)。循环指令可以隐含地指示和/或显式地指定(例如,通过一个或多个专用字段或位组)源操作数、目的操作数,以及循环量。作为示例的操作数和循环量的合适源包括,寄存器、存储器、指令的本文档来自技高网...

【技术保护点】
一种处理器,包括:多个通用寄存器;解码器,用于解码循环指令,所述循环指令指示所述通用寄存器中的源操作数、循环量、以及所述通用寄存器中的目的操作数;以及执行单元,耦合到所述解码器和所述通用寄存器,所述执行单元用于作为循环指令的结果,将结果存储在所述目的中,其中,所述结果使所述源操作数被循环了所述循环量,并且其中所述执行单元完成对所述循环指令的执行而不读取进位标志。

【技术特征摘要】
2009.12.26 US 12/655,2131.一种处理器,包括:多个通用寄存器;解码器,用于解码循环指令,所述循环指令指示存储于所述多个通用寄存器中的源操作数、循环量、以及所述多个通用寄存器中的目的地寄存器,其中,允许所述目的地寄存器和用于存储所述源操作数的通用寄存器不同;以及执行单元,耦合到所述解码器和所述多个通用寄存器,所述执行单元用于,由于对循环指令的解码,将结果存储在所述目的地寄存器中,其中,所述结果使所述源操作数被循环了所述循环量,并且其中所述执行单元完成对所述循环指令的执行而不使进位标志被读取且不使任何算术标志被写入。2.如权利要求1所述的处理器,其特征在于,所述循环指令显式地指定第二源操作数,所述第二源操作数具有所述循环量。3.如权利要求1所述的处理器,其特征在于,所述循环指令隐式地指定第二源操作数,所述第二源操作数具有所述循环量。4.如权利要求1所述的处理器,其特征在于,所述循环指令具有立即数,所述立即数包含所述循环量。5.如权利要求1-4中任意一项所述的处理器,其特征在于,所述执行单元完成对所述循环指令的所述执行而不使溢出标志被读取,其中所述结果是使所述源操作数向右循环所述循环量,并且其中所述源操作数是64位操作数。6.如权利要求5所述的处理器,其特征在于,所述执行单元完成对所述循环指令的所述执行而不使进位标志被写入且不使溢出标志被写入。7.如权利要求1-4中任意一项所述的处理器,其特征在于,所述执行单元通过执行从所述循环指令中所解码出的单个操作,完成对所述循环指令的所述执行,其中所述循环指令要求:其执行的完成不会写入任何算术标志。8.一种处理器,包括:多个通用寄存器;解码器,用于解码循环右移指令,所述循环右移指令显式地指示存储于所述多个通用寄存器中的源操作数、具有包含循环量的立即数、以及指示所述多个通用寄存器中的目的地寄存器,其中,与用于存储所述源操作数的通用寄存器相独立地显式地指定了所述目的地寄存器;以及执行单元,耦合到所述解码器和所述多个通用寄存器,所述执行单元用于,由于对循环右移指令的解码,将结果存储在所述目的地寄存器中,其中,所述结果使所述源操作数被循环右移了所述循环量,并且其中所述执行单元完成对所述循环右移指令的执行而不使进位标志被读取,不使溢出标志被读取,并且不使任何算术标志被写入,包括不使进位标志被写入以及不使溢出标志被写入。9.如权利要求8所述的处理器,其特征在于,所述执行单元完成对所述循环右移指令的所述执行是在一个时钟周期内完成的。10.一种处理器,包括:解码器,用于解码第一循环指令,所述第一循环指令用于显式地指示用于存储源操作数和循环量的源寄存器;以及执行单元,耦合到所述解码器,所述执行单元用于,由于对第一循环指令的解码,将结果存储在所述第一循环指令所指示的目的地寄存器中,该目的地寄存器应是与所述源寄存器相独立地被显式地指定的,其中,所述结果使所述源操作数被循环了所述循环量,并且其中所述执行单元完成对所述第一循环指令的执行而不使进位标志被读取并且不使任何算术标志被写入;其中所述第一循环指令被包含在指令集中,所述指令集包含第二循环指令,所述第二循环指令在由所述处理器执行时使所述处理器读取所述进位...

【专利技术属性】
技术研发人员:V·戈帕尔J·D·吉尔福德G·M·沃尔里齐W·K·费格哈利E·奥兹图科M·G·迪克森S·P·米莱克斯B·L·托尔M·洛克西金M·C·戴维斯A·J·法希
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1