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

位范围隔离指令、方法和装置制造方法及图纸

技术编号:6719819 阅读:195 留言:0更新日期:2012-04-11 18:40
接收指示源操作数和目标操作数的指令。响应于该指令将结果储存在目标操作数中。该结果操作数可具有:(1)第一位范围,具有由该指令显式指定的第一端,其中各个位的值与源操作数在相应位置中的位的值相同;以及(2)第二位范围,不管源操作数在相应位置中的位的值如何,其所有位都具有相同值。在不在源操作数的相应位置中相对于这些有相同值的位来移动结果的第一范围的情况下,可完成该指令的执行,而不管第一位范围在结果中的位置如何。还揭示了用于执行这种指令的执行单元、具有用于执行这种指令的处理器的计算机系统、以及储存这种指令的机器可读介质。

【技术实现步骤摘要】

各个不同实施例涉及位操作指令、执行位操作指令的方法、用于执行位操作指令 的执行单元、或者结合有这种执行单元的设备。具体而言,各个不同实施例涉及用于隔离位 范围范围隔离指令、执行位范围隔离指令的方法、用于执行位范围隔离指令的执行单元、或 者结合有这种执行单元的设备。
技术介绍
通用处理器、专用处理器、控制器和其它设备执行如由指令集架构(ISA)指定的 指令。这些指令使得设备能执行各种各样不同类型的操作。一种通用类型的操作是位操作 操作。已知各种不同的位操作指令。一种已知的位操作指令是EXTR-提取指令。EXTR指 令在Intel Itanium⑧体系结构软件开发人员手册卷3 指令集参考,修订2. 2,2006年1 月,文件编号245319-005中描述。EXTR指令提取由两个立即值指定的位字段,并将所提取的位字段右移位以便于在 目的文件中使所提取的位字段右对齐。这种在单个指令中除提取位字段之外还将所提取的 位字段移位会倾向于限制特定数据处理操作的速度和/或效率。其它位操作指令依赖于倾 向于具有长等待时间的查表。由于快速和/或高效处理数据的重要性,新的和不同的数据操作指令将是有用 的。附图说明通过参照以下描述和用来例示本专利技术诸实施例的附图,本专利技术可得到最佳的理 解。在附图中图1是处理位范围隔离指令的一个实施例的方法实施例的流程框图。图2是指令处理装置的一示例实施例的框图。图3示出根据位范围隔离指令的第一示例实施例的位范围隔离操作的第一示例 实施例。图4示出根据位范围隔离指令的第二示例实施例的位范围隔离操作的第二示例 实施例。图5示出根据位范围隔离指令的第三示例实施例的位范围隔离操作的第三示例 实施例。图6示出对BZHI——将以指定位位置开始的高位归零——指令的描述,该指令表 示位范围隔离指令的一具体示例实施例。图7示出BZHI——将以指定位位置开始的高位归零——指令的伪代码中的操作, 该指令表示位范围隔离指令的一具体示例实施例。图8是位范围隔离逻辑的一示例实施例的框图。5图9示出适当的32位通用寄存器集合的一个具体示例实施例。图10示出适当的64位通用寄存器集合的另一个具体示例实施例。图11示出表示状态或标志寄存器的一个适当示例实施例的EFLAGS寄存器。图12是适当计算机系统的第一示例实施例的框图。图13是适当计算机系统的第二示例实施例的框图。具体实施例在以下描述中,阐述了诸如处理器类型、指令实现细节、数据类型、寄存器类型、寄 存器排列、系统配置等的许多具体细节。然而,可以理解,可在没有这些具体细节的情况下 实践各实施例。在其它实例中,为了不混淆对本说明书的理解,没有具体示出公知电路、结 构和技术。存在其中储存在寄存器或其它存储位置中的位可包括感兴趣位串或位范围、以及 目前不感兴趣或者至少不是感兴趣位范围的一部分的一个或多个其它位串或位范围的不 同情况。代表性地,感兴趣的位范围可表示要对其作进一步处理的数字或值。目前不感兴 趣的位可被视为是不想要的位或不关心的位。在一个或多个实施例中,感兴趣的位范围可 通过归零或以其他方式弃用不想要的位、同时保留感兴趣位范围中位的值来隔离。这可有 助于促进对感兴趣位范围的进一步处理。诸实施例涉及新且有用的位范围隔离指令。其它实施例涉及用于执行位范围隔离 指令的执行单元。另外的实施例涉及具有这种执行单元或能够执行这些指令的通用处理 器、专用处理器、控制器、或其它逻辑设备或指令处理装置。再有一些实施例涉及储存在盘、 存储器、或其它有形机器可读介质上的位范围隔离指令。图1是处理位范围隔离指令的一个实施例的方法100的实施例的流程框图。在各 个实施例中,该方法可在使用期间由通用处理器、专用处理器(例如图形处理器或数字信 号处理器)、硬件加速器(例如密码加速器)、或另一类型的逻辑器件或指令处理装置执行。在框101,位范围隔离指令可在处理器或其它装置处被接收。在一个或多个实施例 中,位范围隔离指令可指示源操作数和目标操作数。在框102,结果可响应于位范围隔离指令被储存在目标操作数中。该结果操作数 可具有第一位范围和第二位范围。第一位范围可以使其每个位的值与源操作数在相应位置 中的位的值相同。不管源操作数在相应位置中的位的值如何,第二位范围都可具有相同值。 在一个或多个实施例中,第二范围的所有位都可以是0。或者,第二范围的所有位都可以是 1。在框103,在不在源操作数的相应位置中相对于这些有相同值的位来移位或以其 它方式移动结果的第一范围的情况下,可完成该位范围隔离指令的执行。无论第一位范围 在结果中的位置如何(例如,即使第一位范围是结果内的中间位范围),可能都是如此。在 一个或多个实施例中,位范围隔离指令的执行可能不涉及倾向于具有长等待时间的查表。从位范围隔离指令中略去这种移位或位移动操作存在若干可能优点。首先,并非 总是需要移位操作。并且,移位操作可能倾向于增加指令执行的时间,和/或可能倾向于增 加逻辑区域/成本。此外,许多ISA已具有可与位范围隔离指令分开使用的专用移位操作。 其它优点将在以下进一步讨论。图2是指令处理装置110的一示例实施例的框图。在一个或多个实施例中,指令 处理装置可以是通用处理器。该处理器可以是各种复杂指令集计算(CISC)处理器、各种精 简指令集计算(RISC)处理器、各种超长指令字(VLIW)处理器、其各种混合、或完全其它类 型的处理器中的任一种。在一个或多个实施例中,处理器可以是由美国加利福尼亚州圣克 拉拉的英特尔公司制造的类型的通用处理器,但这不是必需的。可从英特尔公司购买到的 通用处理器的具体示例包括但不限于Intel C0reTM i7处理器终极版、Intel Core i7 处理器、Intel Core i5处理器、Intel Core 2终极处理器、Intel Core 2四核处 理器、Intel Core 2 双核处理器、Intel Pentium 处理器、以及 Intel Celeron 处 理器。或者,指令处理装置可以是专用处理器。适当的专用处理器的代表性示例包括但 不限于网络处理器、通信处理器、密码处理器、图形处理器、协处理器、嵌入式处理器、以及 数字信号处理器(DSP),在此仅举数例。这些处理器还可以基于CISC、RISC、VLIW、其混合、 或完全其它类型的处理器。在另外的实施例中,指令处理装置可以是控制器(例如微控制器)、或者其它类型 的能够处理指令的逻辑电路。仍然参照图2,在使用期间,指令处理装置可接收位范围隔离指令112的一个实施 例。作为示例,可从存储器或从软件接收位范围隔离指令。该位范围隔离指令可表示由指 令处理装置标识的机器指令或控制信号。位范围隔离指令可包括操作码或其它指令标识 符。该指令处理装置可具有能用于响应于位范围隔离指令和/或由其指定地储存结果的特 定或具体电路系统或其它逻辑(例如软件结合硬件和/或固件)。指令处理装置的所示实施例包括指令解码器114。该解码器可接收和解码位范围 隔离指令。该解码器可生成和输出反映原始位范围隔离指令或由其生成的一个或多个微操 作、微代码入口点、微指令、其它指令或其它控制信号。该解码器可利用各种不同机制实现。 适当机制的本文档来自技高网...

【技术保护点】
1.一种方法,包括:接收指令,所述指令指示源操作数和目标操作数;响应于所述指令将结果储存在所述目标操作数中,所述结果操作数具有:第一位范围,具有由所述指令显式指定的第一端,其中各个位的值与所述源操作数在相应位置中的位的值相同;以及第二位范围,不管所述源操作数在相应位置中的位的值如何,所述第二位范围都具有相同值;且在不在所述源操作数的相应位置中相对于所述有相同值的位来移动所述结果的所述第一范围的情况下,完成所述指令的执行,而不管所述第一位范围在所述结果中的位置如何。

【技术特征摘要】
2009.12.22 US 12/645,3071.一种方法,包括接收指令,所述指令指示源操作数和目标操作数;响应于所述指令将结果储存在所述目标操作数中,所述结果操作数具有第一位范围,具有由所述指令显式指定的第一端,其中各个位的值与所述源操作数在 相应位置中的位的值相同;以及第二位范围,不管所述源操作数在相应位置中的位的值如何,所述第二位范围都具有 相同值;且在不在所述源操作数的相应位置中相对于所述有相同值的位来移动所述结果的所述 第一范围的情况下,完成所述指令的执行,而不管所述第一位范围在所述结果中的位置如 何。2.如权利要求1所述的方法,其特征在于,所述完成包括无论所述第一位范围是否是 所述结果中的中间范围都在不执行移位操作的情况下完成所述指令的执行,并且其中完成 所述指令的执行是不在存储器中查表地执行的。3.如权利要求1所述的方法,其特征在于,所述接收包括接收隐式地指示所述第一位 范围的第二端的指令。4.如权利要求3所述的方法,其特征在于,所述接收包括接收将所述第一位范围的第 二端隐式地指定为最低有效位和最高有效位之一的指令。5.如权利要求3所述的方法,其特征在于,所述指令具有仅允许显式指定两个操作数 的格式。6.如权利要求1所述的方法,其特征在于,所述接收包括接收指定第二源操作数的指 令,所述第二源操作数指定所述第一位范围的所述第一端。7.如权利要求6所述的方法,其特征在于,所述第二源操作数具有表示与所述第一端 相对应的位的位置和以位计量的长度之一,其中所述长度的末尾对应于所述第一端。8.如权利要求1所述的方法,其特征在于,所述接收包括接收通过至少一个显式指定 的源操作数来显式指定所述第一位范围的两端的指令。9.如权利要求1所述的方法,其特征在于,所述储存包括储存值均为零(0)的第二位范围。10.如权利要求9所述的方法,其特征在于,还包括将所述源操作数复制至所述目标;生成掩码,所述掩码包括(a)第一位集合,其各个位与所述第一位范围在相应位置中 的位相对应且各自具有值一(1);以及(b)第二位集合,其各个位与所述第二位范围在相应 位置中的位相对应且各自具有值零(0);以及对所述掩码和所述目标执行与运算。11.如权利要求1所述的方法,其特征在于,所述方法由具有多个核的通用微处理器执 行,且其中所述核的至少一个具有对所述指令作出响应的电路。12.一种装置,包括执行单元,其用于作为指令的结果将结果操作数储存在由所述指令指示的目标操作数 处,所述结果操作数具有第一位范围,具有由所述指令显式指定的第一端,其中各个位的值与由所述指令指示的源操作数在相应位置中的位的值相同;以及第二位范围,其中不管所述源操作数在相应位置中的位的值如何,所述第二位范围的 所有位都将具有相同值;以及在不在所述源操作数的相应位置中相对于所述有相同值的位来移动所述结果的所述 第一范围的情况下,所述执行单元完成所述指令的执行,而不管所述第一位范围在所述结 果中的位置如何。13.如权利要求12所述的装置,其特征在于,所述执行单元无论所述第一位范围是否 是所述结果中的中间范围都在不执行移位操作的情况下完成所述指令的执行,并且其中所 述执行单元在不执行存储器中的查表的情况下储存所述结果操作数。14.如权利要求12所述的装置,其特征在于,所述指令隐式地指定所述第一位范围的第二段。15.如权利要求14所述的装置,其特征在于,所述指令将所述第二端隐式地指定为最 低有效位和最高有效位之一。16.如权利要求14所述的装置,其特征在于,所述指令具有仅允许显式指定两个操作 数的格式。17.如权利要求14所述的装置,其特征在于,所述执行单元用于根据所述指令指示的 第二源操作数来确定所述第一位范围的所述第一端。18.如权利要求17所...

【专利技术属性】
技术研发人员:M·洛克西金E·玛乌林B·L·托尔M·G·迪克森S·P·米莱克斯D·L·克赖泽尔E·M·乌尔德阿迈德瓦尔V·戈帕尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:US

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

1