用于向量位字段压缩和扩展的指令和逻辑制造技术

技术编号:18465895 阅读:36 留言:0更新日期:2018-07-18 15:58
一种处理器,包括用以执行用于元素阵列和打包位阵列之间的转换的指令的核。所述核包括逻辑,所述逻辑用以识别要由打包位阵列使用的一个或多个位字段长度;识别元素阵列的元素的宽度;以及同时对于元素阵列的元素且对于打包位阵列的位字段,基于元素阵列的元素的宽度和位字段长度来在元素阵列和打包位阵列之间进行转换。

Instructions and logic for compression and extension of vector bit fields

A processor includes a core for executing instructions for conversion between element array and packing bit array. The core includes logic, which is used to identify the length of one or more bit fields to be used by a packaged bit array, the width of elements that identify the element array, and the bit field of the array of elements for the element array, and the element array based element width and the bit field length in the element array. The column and the package bit array are converted.

【技术实现步骤摘要】
【国外来华专利技术】用于向量位字段压缩和扩展的指令和逻辑
本公开涉及处理逻辑、微处理器以及关联的指令集架构的领域,指令集架构当由处理器或其它处理逻辑执行时执行逻辑、数学或其它功能操作。
技术介绍
微处理器系统正变得越来越普遍。多处理器系统的应用包括动态域分区,一直到桌面计算。为了利用多处理器系统,要执行的代码可被分成多个线程以便由各种处理实体执行。每个线程可彼此并行执行。此外,为了增大处理实体的效用,可采用无序执行。当使对此类指令的输入可用时,无序执行可执行指令。从而,在代码序列中以后出现的指令可在代码序列中较早出现的指令之前执行。附图说明在附图的图中作为示例而非限制示出了实施例:图1A是根据本公开的实施例用可包含执行指令的执行单元的处理器形成的示范计算机系统的框图;图1B示出了根据本公开的实施例的数据处理系统;图1C示出了用于执行文本字符串比较操作的数据处理系统的其它实施例;图2是根据本公开的实施例可包含执行指令的逻辑电路的处理器的微架构的框图;图3A示出了根据本公开的实施例的多媒体寄存器中的各种打包数据类型表示;图3B示出了根据本公开的实施例的可能寄存器中的数据存储格式;图3C示出了根据本公开的实施例的多媒体寄存器中的各种有符号和无符号的打包数据类型表示;图3D示出了操作编码格式的实施例;图3E示出了根据本公开的实施例的具有40位或更多位的另一可能操作编码格式;图3F示出了根据本公开的实施例的又一可能操作编码格式;图4A是示出根据本公开实施例的有序流水线和寄存器重命名阶段、无序发布/执行流水线的框图;图4B是示出根据本公开实施例的要包含在处理器中的有序架构核以及寄存器重命名逻辑、无序发布/执行逻辑的框图;图5A是根据本公开实施例的处理器的框图;图5B是根据本公开实施例的核的示例实现的框图;图6是根据本公开实施例的系统的框图;图7是根据本公开实施例的第二系统的框图;图8是根据本公开实施例的第三系统的框图;图9是根据本公开实施例的片上系统的框图;图10示出了根据本公开的实施例的可执行至少一个指令的含有中央处理单元和图形处理单元的处理器;图11是示出根据本公开实施例的IP核的开发的框图;图12示出根据本公开的实施例,第一类型的指令可如何由不同类型的处理器仿真;图13示出根据本公开的实施例的对比将源指令集中的二进制指令转换成目标指令集中二进制指令的软件指令转换器的使用的框图;图14是根据本公开的实施例的处理器的指令集架构的框图;图15是根据本公开的实施例的处理器的指令集架构的更详细框图;图16是根据本公开的实施例的用于处理器的指令集架构的执行流水线的框图;图17是根据本公开的实施例的用于利用处理器的电子装置的框图;图18是根据本公开的实施例的执行用于向量位字段压缩和扩展的指令的系统的框图;图19是根据本公开的实施例的执行用于向量位字段压缩的指令的系统的操作的说明;图20是根据本公开的实施例的执行用于向量位字段扩展的指令的系统的操作的说明;以及图21是根据本公开的实施例的执行用于向量位字段压缩和扩展的指令的方法的流程图。具体实施方式以下描述描述了用于处理设备上的向量位字段压缩和扩展的指令和处理逻辑。在以下描述中,阐述了众多特定细节,诸如处理逻辑、处理器类型、微架构条件、事件、启动(enablement)机制等,以便提供本公开的实施例的更透彻理解。然而,本领域技术人员将认识到,没有此类特定细节也可实践实施例。此外,一些众所周知的结构、电路等尚未详细示出,以避免不必要地使本公开的实施例混淆。尽管以下实施例参考处理器进行描述,但其它实施例可应用于其它类型集成电路和逻辑装置。本公开的实施例的类似技术和教导可应用于可受益于更高流水线吞吐量和改进性能的其它类型电路或半导体装置。本公开的实施例的教导可应用于执行数据操纵的任何处理器或机器。然而,实施例不限于执行512位、256位、128位、64位、32位或16位数据操作的处理器或机器,并且可应用于其中可执行数据操纵或管理的任何处理器和机器。此外,以下描述提供了示例,并且附图为了示出目的示出了各种示例。然而,这些示例不应被理解为限制意义,因为它们仅仅意图提供本公开的实施例的示例,而不是提供本公开的实施例的所有可能实现的详尽列表。尽管以下示例在执行单元和逻辑电路的上下文中描述了指令处置和分发(distribution),但本公开的其它实施例可通过存储在机器可读有形介质上的数据或指令实现,所述指令当由机器执行时使机器执行与本公开的至少一个实施例一致的功能。在一个实施例中,与本公开的实施例关联的功能体现在机器可执行指令中。指令可用于使可用指令编程的通用或专用处理器执行本公开的步骤。本公开的实施例可提供为计算机程序产品或软件,该产品或软件可包括机器或计算机可读介质,其上存储有可用于编程计算机(或其它电子装置)以执行根据本公开的实施例的一个或多个操作的指令。更进一步,本公开的实施例的步骤可由包含用于执行所述步骤的固定功能逻辑的特定硬件组件执行,或者由编程的计算机组件和固定功能硬件组件的任何组合执行。用于对逻辑编程以执行本公开的实施例的指令可被存储在系统中的存储器内,诸如DRAM、高速缓存、闪速存储器或其它存储装置内。更进一步,指令可经由网络或通过其它计算机可读介质分发。从而,机器可读介质可包含用于存储或传送由机器(例如计算机)可读形式的信息的任何机制,但其不限于软盘、光盘、紧凑盘只读存储器(CD-ROM)、以及磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪速存储器或在因特网上经由电、光、声或其它形式传播信号(例如载波、红外信号、数字信号等)传送信息中使用的有形机器可读存储装置。相应地,计算机可读介质可包含适合于存储或传送由机器(例如计算机)可读形式的电子指令或信息的任何类型有形机器可读介质。设计从创建到模拟到制造可经过各种阶段。表示设计的数据可用多种方式表示该设计。首先,如在模拟中可能有用的,硬件可使用硬件描述语言或另一功能描述语言表示。附加地,在设计过程的某些阶段,可产生具有逻辑和/或晶体管栅的电路级模型。更进一步,设计在某一阶段可达到用硬件模型表示各种装置的物理布局的数据级。在其中使用一些半导体制造技术的情况下,表示硬件模型的数据可以是规定在用于产生集成电路的掩膜的不同掩膜层上存在或缺乏各种特征的数据。在设计的任何表示中,数据都可存储在任何形式的机器可读介质中。存储器或者磁或光存储装置(诸如盘)可以是机器可读介质,以存储经由调制或以其它方式生成以传送信息的光波或电波传送的此类信息。在传送指示或携带代码或设计的电载波时,就执行电信号的复制、缓冲或重新传送而言,可进行新的拷贝。从而,通信提供商或网络提供商可在有形机器可读介质上至少暂时存储体现本公开实施例的技术的制品,诸如被编码到载波中的信息。在现代处理器中,可使用若干不同执行单元来处理和执行各种代码和指令。一些指令可能更快地完成,而其它指令可能花了若干时钟周期完成。指令吞吐量越快,处理器的总体性能越好。从而,使许多指令尽可能快地执行会是有利的。然而,可存在具有更大复杂性并且在执行时间和处理器资源方面要求更大的某些指令,诸如浮点指令、本文档来自技高网...

【技术保护点】
1.一种处理器,包括:前端,用以接收用于元素阵列和打包位阵列之间的转换的指令;解码器,用以解码所述指令;核,包括用以执行所述指令,所述核包括:第一逻辑,用以识别要由所述打包位阵列使用的一个或多个位字段长度;第二逻辑,用以识别所述元素阵列的元素的宽度;以及第三逻辑,用以同时对于所述元素阵列的多个元素和所述打包位阵列的多个位字段,基于元素的所述宽度和所述位字段长度来在所述元素阵列和所述打包位阵列之间进行转换;以及引退单元,用以引退所述指令。

【技术特征摘要】
【国外来华专利技术】2015.12.22 US 14/9793221.一种处理器,包括:前端,用以接收用于元素阵列和打包位阵列之间的转换的指令;解码器,用以解码所述指令;核,包括用以执行所述指令,所述核包括:第一逻辑,用以识别要由所述打包位阵列使用的一个或多个位字段长度;第二逻辑,用以识别所述元素阵列的元素的宽度;以及第三逻辑,用以同时对于所述元素阵列的多个元素和所述打包位阵列的多个位字段,基于元素的所述宽度和所述位字段长度来在所述元素阵列和所述打包位阵列之间进行转换;以及引退单元,用以引退所述指令。2.根据权利要求1所述的处理器,还包括第五逻辑,用以通过将所述元素阵列的元素压缩成要存储在所述打包位阵列中的位字段来执行转换,其中所述元素从所述宽度压缩成所述一个或多个位字段长度。3.根据权利要求1所述的处理器,还包括第五逻辑,用以通过将所述打包位阵列的位字段扩展成所述元素阵列的所述元素来执行转换,其中所述元素从所述一个或多个位字段长度扩展成所述宽度。4.根据权利要求1所述的处理器,其中所述转换要根据所述打包位阵列的位字段和所述元素阵列的元素的每个对的相同位字段长度来执行。5.根据权利要求1所述的处理器,其中所述转换要根据存储在向量中的多个不同位字段长度来执行,所述向量用以将长度指派到所述打包位阵列的位字段以及所述元素阵列的元素的对的对应转换。6.根据权利要求1所述的处理器,其中所述位字段长度要基于所述元素阵列的所有元素的最小表示,所述最小表示仍将保留所述元素阵列的所述元素的准确性。7.根据权利要求1所述的处理器,其中,所述打包位阵列的所述位字段要与处理器字节表示不对齐。8.一种系统,包括:前端,用以接收用于元素阵列和打包位阵列之间的转换的指令;解码器,用以解码所述指令;核,包括用以执行所述指令,所述核包括:第一逻辑,用以识别要由所述打包位阵列使用的一个或多个位字段长度;第二逻辑,用以识别所述元素阵列的元素的宽度;以及第三逻辑,用以同时对于所述元素阵列的多个元素和所述打包位阵列的多个位字段,基于元素的所述宽度和所述位字段长度来在所述元素阵列和所述打包位阵列之间进行转换;以及引退单元,用以引退所述指令。9.根据权利要求8所述的系统,还包括第五逻辑,用以通过将所述元素阵列的元素压缩成要存储在所述打包位阵列中的位字段来执行转换,其中所述元素从所述宽度压缩成所述...

【专利技术属性】
技术研发人员:E奥尔德艾哈迈德瓦尔T威尔哈姆R瓦伦丁
申请(专利权)人:英特尔IP公司
类型:发明
国别省市:美国,US

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

1