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

用于加载-索引-和-收集操作的指令和逻辑制造技术

技术编号:18609809 阅读:25 留言:0更新日期:2018-08-04 22:53
一种处理器,包括执行单元以执行指令来从索引阵列加载索引,并基于那些索引从随机位置或稀疏存储器中的位置收集元素。执行单元包括用以按需要针对要由指令收集的每个数据元素加载要用于计算要被收集的具体数据元素的存储器中的地址的索引值的逻辑。索引值可以从针对所述指令标识的索引阵列中检索。执行单元包括用以将地址计算为针对指令指定的基地址和针对数据元素检索的索引值之和(在具有或没有缩放的情况下)的逻辑。执行单元包括用以将收集的数据元素存储在针对指令指定的目的地向量寄存器中的连续位置中的逻辑。

【技术实现步骤摘要】
【国外来华专利技术】用于加载-索引-和-收集操作的指令和逻辑
本公开涉及处理逻辑、微处理器以及关联的指令集架构的领域,所述指令集架构当由处理器或其它处理逻辑执行时执行逻辑、数学或其它功能操作。
技术介绍
微处理器系统正变得越来越常见。多处理器系统的应用包括动态域分区,一直到桌面计算。为了利用多处理器系统,要执行的代码可被分成多个线程以用于由各种处理实体执行。每个线程可彼此并行执行。当指令在处理器上接收时,它们可以被解码成项或指令字(其是本机(native)或更本机的)以用于在处理器上执行。处理器可在片上系统中实现。通过存储在阵列中的索引对存储器的间接读和写入访问可以在密码学、图形遍历、分类和稀疏矩阵应用中使用。附图描述:在附图的图中作为示例而非限制示出了实施例:图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是根据本公开的实施例的用以执行从索引阵列加载索引并基于那些索引从稀疏存储器中的位置收集元素的操作的说明;图22A和22B示出根据本公开的实施例的加载-索引-和-收集指令的相应形式的操作;图23示出根据本公开的实施例的用于从索引阵列加载索引并基于那些索引从稀疏存储器中的位置收集元素的示例方法。具体实施方式以下描述描述了用于在处理设备上执行用以从索引阵列加载索引并基于那些索引从稀疏存储器中的位置收集元素的向量操作的指令和处理逻辑。此类处理设备可包括无序处理器。在以下描述中,阐述了众多特定细节,诸如处理逻辑、处理器类型、微架构条件、事件、启动(enablement)机制等,以便提供本公开的实施例的更透彻理解。然而,本领域技术人员将认识到,没有此类特定细节也可实践实施例。此外,一些众所周知的结构、电路等尚未详细示出,以避免不必要地使本公开的实施例混淆。尽管以下实施例参考处理器进行描述,但其它实施例可应用于其它类型集成电路和逻辑装置。本公开的实施例的类似技术和教导可应用于可受益于更高流水线吞吐量和改进性能的其它类型电路或半导体装置。本公开的实施例的教导可应用于执行数据操纵的任何处理器或机器。然而,实施例不限于执行512位、256位、128位、64位、32位或16位数据操作的处理器或机器,并且可应用于其中可执行数据操纵或管理的任何处理器和机器。此外,以下描述提供了示例,并且附图为了示出目的示出了各种示例。然而,这些示例不应被理解为限制意义,因为它们仅仅意图提供本公开的实施例的示例,而不是提供本公开的实施例的所有可能实现的详尽列表。尽管以下示例在执行单元和逻辑电路的上下文中描述了指令处置和分发(distribution),但本公开的其它实施例可通过存储在机器可读有形介质上的数据或指令实现,所述指令当由机器执行时使机器执行与本公开的至少一个实施例一致的功能。在一个实施例中,与本公开的实施例关联的功能体现在机器可执行指令中。指令可用于使可用指令编程的通用或专用处理器执行本公开的步骤。本公开的实施例可提供为计算机程序产品或软件,该产品或软件可包括机器或计算机可读介质,其上存储有可用于编程计算机(或其它电子装置)以执行根据本公开的实施例的一个或多个操作的指令。更进一步,本公开的实施例的步骤可由包含用于执行所述步骤的固定功能逻辑的特定硬件组件执行,或者由编程的计算机组件和固定功能硬件组件的任何组合执行。用于对逻辑编程以执行本公开的实施例的指令可被存储在系统中的存储器内,诸如DRAM、高速缓存、闪速存储器或其它存储装置内。更进一步,指令可经由网络或通过其它计算机可读介质分发。从而,机器可读介质可包含用于存储或传送由机器(例如计算机)可读形式的信息的任何机制,但其不限于软盘、光盘、紧凑盘只读存储器(CD-ROM)、以及磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪速存储器或在因特网上经由电、光、声或其它形式传播信号(例如载波、红外信号、数字信号等)传送信息中使用的有形机器可读存储装置。相应地,计算机可读介质可包含适合于存储或传送由机器(例如计算机)可读形式的电子指令或信息的任何类型有形机器可读介质。设计从创建到模拟到制造可经过各种阶段。表示设计的数据可用多种方式表示该设计。首先,如在模拟中可能有用的,硬件可使用硬件描述语言或另一功能描述语言表示。附加地,在设计过程的某些阶段,可产生具有逻辑和/或晶体管栅的电路级模型。更进一步,设计在某一阶段可达到用硬件模型表示各种装置的物理布局的数据级。在其中使用一些半导体制造技术的情况下,表示硬件模型的数据可以是规定在用于产生集成电路的掩膜的不同掩膜层上存在或缺乏各种特征的数据。在设计的任何表示中,数据都可存储在任何形式的机器可读介质中。存储器或者磁或光存储装置(诸如盘)可以是机器可读介质,以存储经由调制或以其它方式生成以传送信息的光波或电波传送的此类信息。在传送指示或携带代码或设计的电载波时,就执行电信号的复制、缓冲或重新本文档来自技高网...

【技术保护点】
1.一种处理器,包括:前端,用以接收指令;解码器,用以解码所述指令;核,用以执行所述指令,所述核包括:第一逻辑,用以从索引阵列中检索第一索引值,其中:所述索引阵列要位于存储器中的第一地址,所述第一地址要基于所述指令的第一参数;以及所述第一索引值要位于所述索引阵列内的最低阶定位;第二逻辑,用以基于以下内容来计算要从所述存储器收集的第一数据元素的地址:所述第一索引值;以及对于所述存储器中的数据元素位置的群组的基地址,所述基地址要基于所述指令的第二参数;第三逻辑,用以从通过针对所述第一数据元素计算的所述地址可访问的所述存储器中的位置检索所述第一数据元素;以及第四逻辑,用以将所述第一数据元素存储到由所述指令的第三参数标识的目的地向量寄存器,其中所述第一数据元素要存储到所述目的地向量寄存器中的最低阶定位;以及引退单元,用以引退所述指令。

【技术特征摘要】
【国外来华专利技术】2015.12.22 US 14/9792311.一种处理器,包括:前端,用以接收指令;解码器,用以解码所述指令;核,用以执行所述指令,所述核包括:第一逻辑,用以从索引阵列中检索第一索引值,其中:所述索引阵列要位于存储器中的第一地址,所述第一地址要基于所述指令的第一参数;以及所述第一索引值要位于所述索引阵列内的最低阶定位;第二逻辑,用以基于以下内容来计算要从所述存储器收集的第一数据元素的地址:所述第一索引值;以及对于所述存储器中的数据元素位置的群组的基地址,所述基地址要基于所述指令的第二参数;第三逻辑,用以从通过针对所述第一数据元素计算的所述地址可访问的所述存储器中的位置检索所述第一数据元素;以及第四逻辑,用以将所述第一数据元素存储到由所述指令的第三参数标识的目的地向量寄存器,其中所述第一数据元素要存储到所述目的地向量寄存器中的最低阶定位;以及引退单元,用以引退所述指令。2.如权利要求1所述的处理器,其中所述核还包括:第五逻辑,用以从所述索引阵列中检索第二索引值,所述第二索引值要与所述阵列内的所述第一索引值相邻;第六逻辑,用以基于以下内容来计算要从所述存储器收集的第二数据元素的地址:所述第二索引值;以及对于所述存储器中的数据元素位置的所述群组的所述基地址;第七逻辑,用以从通过针对所述第二数据元素计算的所述地址可访问的所述存储器中的位置检索所述第二数据元素,其中所述第二数据元素要与所述存储器中的所述第一数据元素不相邻;以及第八逻辑,用以将所述第二数据元素存储到与所述第一数据元素相邻的所述目的地向量寄存器。3.如权利要求1所述的处理器,其中针对所述第一数据元素计算的所述地址要与对于所述存储器中的数据元素位置的所述群组的所述基地址不同。4.如权利要求1所述的处理器,其中所述核还包括:第五逻辑,用以对于要通过所述指令的执行被收集的每个附加数据元素,从所述索引阵列内的下一连续定位检索相应索引值;第六逻辑,用以基于以下内容来针对所述附加数据元素中的每个计算对于所述附加数据元素的相应地址:所述相应的索引值;以及对于所述存储器中的数据元素位置的所述群组的所述基地址;第七逻辑,用以从通过针对所述附加数据元素计算的所述地址可访问的所述存储器中的相应位置检索每个附加数据元素,所述附加数据元素要从其中被检索的所述位置中的至少两个要是不相邻位置;以及第八逻辑,用以将每个附加数据元素存储到所述目的地向量寄存器中的相应定位,所述附加元素被存储在其处的所述相应定位要是所述目的地向量寄存器中的连续位置;其中要被收集的数据元素的所述最大数量要基于所述指令的第四参数。5.如权利要求1所述的处理器,其中所述核还包括:第五逻辑,用以确定掩码寄存器中的针对附加索引值的位未被设置,所述掩码寄存器基于所述指令的第四参数来标识;第六逻辑,用以基于所述掩码中的所述位未被设置的所述确定而取消:所述附加索引值的检索;基于所述附加索引值计算对于附加数据元素的地址;所述附加数据元素的检索;以及所述附加数据元素在所述目的地向量寄存器中的存储;以及第七逻辑,用以基于所述掩码中的所述位未被设置的所述确定,将所述值保留在所述目的地向量寄存器中的所述位置中,所述位置是所述附加数据元素会以其它方式被存储到的位置。6.如权利要求1所述的处理器,其中:所述处理器还包括高速缓存;以及所述核还包括:高速缓存;第五逻辑,用以将来自所述索引阵列的附加索引值预获取到所述高速缓存中;第六逻辑,用以基于所述附加索引值计算对于要被收集的附加数据元素的地址;以及第七逻辑,用以将所述附加数据元素预获取到所述高速缓存中。7.如权利要求1所述的处理器,其中所述核还包括:第五逻辑,用以将对于要从所述存储器收集的所述第一数据元素的所述地址计算为所述第一索引值和对于所述存储器中的数据元素位置的所述群组的所述基地址的和。8.如权利要求1所述的处理器,其中所述核还包括:第五逻辑,用以确定掩码寄存器中的针对附加索引值的位被设置,所述掩码寄存器基于所述指令的第四参数来标识;第六逻辑,用以基于所述掩码中的所述位未被设置的所述确定而取消所述附加索引值的检索:基于所述附加索引值计算附加数据元素的地址,所述附加数据元素的检索;以及所述附加数据元素在所述目的地向量寄存器中的存储;以及第七逻辑,用以将NULL值存储在所述目的地向量寄存器中的所述位置中,所述位置是所述附加数据元素会以其它方式被存储到的位置。9.如权利要求1所述的处理器,其中所述核还包括:第五逻辑,用以基于所述指令的第四参数确定所述数据元素的所述大小。10.如权利要求1所述的处理器,还包括单指令多数据(SIMD)协处理器以实现所述指令的执行。11.一种方法,包括:在处理器中:接收指令;解码所述指令;执行所述指令,包括:从索引阵列中检索第一索引值,其中:所述索引阵列位于基于所述指令的第一参数的存储器中的地址;以及所述第一索引值位于所述索引阵列内的最低阶定位;基于以下内容计算要从所述存储器收集的第一数据元素的地址:所述第一索引值;以及对于所述存储器中的数据元素位置的群组的基地址,所述基地址基于所述指令的第二参数;以及从通过针对所述第一数据元素计算的所述地址可访问的所述存储器中的位置检索所述第一数据元素;以及将所述第一数据元素存储到由所述指令的第三参数标识的目的地向量寄存器内的最低阶定位;以及引退所述指令。12.如权利要求11所述的方法,还包括:从所述索引阵列中检索第二索引值,所述第二索引值与所述阵列内的所述第一索引值相邻;基于以下内容计算要从所述存储器收集的第二数据元素的地址:所述第二索引值;以及对于所述存储器中的数据元素位置的所述群组的所述基地址;从通过针对所述第二数据元素计算的所述地址可访问的所述存储器中的位置检索所述第二数据元素,其中所述第二数据元素与所述存储器中的所述第一数据元素不相邻;以及将所述第二数据元素存储在与所述第一数据元素相邻的所述目的地向量寄存器中。13.如权利要求11所述的方法,其中针对所...

【专利技术属性】
技术研发人员:CR扬特IM戈卡尔AC瓦莱斯E奥尔德艾哈迈德瓦尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1