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

用于多维数组中的元素偏移量计算的指令制造技术

技术编号:17704594 阅读:60 留言:0更新日期:2018-04-14 17:40
本发明专利技术涉及用于多维数组中的元素偏移量计算的指令。描述了具有功能单元逻辑电路的装置。该功能单元逻辑电路具有第一寄存器,该第一寄存器用于存储第一输入向量操作数,该第一输入向量操作数具有用于多维数据结构的每个维度的元素。第一向量操作数的每个元素指定其相应维度的尺寸。该功能单元具有第二寄存器,该第二寄存器用于存储第二输入向量操作数,该第二输入向量操作数指定该多维结构的特定区段的坐标。该功能单元还具有逻辑电路,该逻辑电路用于计算该特定区段相对于该多维结构的原点区段的地址的地址偏移量。

【技术实现步骤摘要】
用于多维数组中的元素偏移量计算的指令本专利技术专利申请是国际申请号为PCT/US2011/067078,国际申请日为2011年12月23日,进入中国国家阶段的申请号为201180076286.6,名称为“用于多维数组中的元素偏移量计算的指令”的专利技术专利申请的分案申请。背景
本专利技术的领域一般涉及计算系统,且更具体地涉及用于多维数组中的元素偏移量计算的指令。
技术介绍
图1示出了在半导体芯片上用逻辑电路实现的处理核100的高级图。该处理核包括流水线101。该流水线由各自被设计成在完全执行程序代码指令所需的多步骤过程中执行特定步骤的多个级组成。这些级通常至少包括:1)指令取出和解码;2)数据取出;3)执行;4)写回。执行级对由在先前级(例如在上述步骤1))中所取出和解码的指令所标识并在另一先前级(例如在上述步骤2))中被取出的数据执行由在先前级(例如在上述步骤1))中取出和解码的指令所标识的特定操作。被操作的数据通常是从(通用)寄存器存储空间102中取出的。在该操作完成时所创建的新数据通常也被“写回”寄存器存储空间(例如在上述级4))。与执行级相关联的逻辑电路通常由多个“执行单元”或“功能单元”103_1至103_N构成,这些单元各自被设计成执行其自身的唯一操作子集(例如,第一功能单元执行整数数学操作,第二功能单元执行浮点指令,第三功能单元执行从高速缓存/存储器的加载操作和/或到高速缓存/存储器的存储操作等等)。由所有这些功能单元执行的所有操作的集合与处理核100所支持的“指令集”相对应。计算机科学领域中广泛认可两种类型的处理器架构:“标量”和“向量”。标量处理器被设计成执行对单个数据集进行操作的指令,而向量处理器被设计成执行对多个数据集进行操作的指令。图2A和2B呈现了展示标量处理器与向量处理器之间的基本差异的比较示例。图2A示出标量AND(与)指令的示例,其中单个操作数集A和B一起进行“与”运算以产生奇异(或“标量”)结果C(即,AB=C)。相反,图2B示出向量AND指令的示例,其中两个操作数集A/B和D/E并行地分别一起进行“与”运算以同时产生向量结果C和F(即,A.AND.B=C以及D.AND.E=F)。根据术语学,“向量”是具有多个“元素”的数据元素。例如,向量V=Q,R,S,T,U具有五个不同的元素:Q、R、S、T和U。示例性向量V的“尺寸”是5(因为它具有5个元素)。图1还示出向量寄存器空间107的存在,该向量寄存器空间107不同于通用寄存器空间102。具体而言,通用寄存器空间102标准地用于存储标量值。这样,当各执行单元中的任一个执行标量操作时,它们标准地使用从通用寄存器存储空间102调用的操作数(并将结果写回通用寄存器存储空间102)。相反,当各执行单元中的任一个执行向量操作时,它们标准地使用从向量寄存器空间107调用的操作数(并将结果写回向量寄存器空间107)。可类似地分配存储器的不同区域以存储标量值和向量值。还应注意,存在位于功能单元103_1到103_N的相应输入处的掩码逻辑104_1到104_N,以及位于功能单元103_1到103_N的输出处的掩码逻辑105_1到105_N。在各种实现中,对于向量操作,实际上仅实现这些层中的一个层——不过这并非严格要求(虽然未在图1中描绘,但可以领会,仅执行标量操作而不执行向量操作的执行单元不需要具有任何掩码层)。对于采用掩码的任何向量指令,输入掩码逻辑104_1到104_N和/或输出掩码逻辑105_1到105_N可用于控制哪些元素被该向量指令有效地操作。在此,从掩码寄存器空间106读取掩码向量(例如与从向量寄存器存储空间107读取的输入操作数向量一起),并将该掩码向量呈现给掩码逻辑104、105层中的至少一层。在执行向量程序代码的过程中,每一向量指令无需要求全数据字。例如,一些指令的输入向量可能仅仅是8个元素,其他指令的输入向量可能是16个元素,其他指令的输入向量可能是32个元素,等等。因此,掩码层104/105用于标识完整向量数据字中的应用于特定指令的一组元素,以在多个指令之间实现不同的向量尺寸。通常,对于每一向量指令,掩码寄存器空间106中所保持的特定掩码模式被该指令调出,从掩码寄存器空间中被取出并且被提供给掩码层104/105中的任一者或两者,以“启用”针对该特定向量操作的正确元素集合。附图说明本专利技术是通过示例说明的,而不仅局限于各个附图的图示,在附图中,类似的参考标号表示类似的元件,其中:图1示出处理器流水线;图2a和2b比较标量与向量操作;图3a、b、c涉及多维结构和保持多维结构的每个部分的数据的方式;图4示出用于计算多维结构的特定部分的地址偏移量的方法;图5示出用于能执行图4的方法的功能单元的电路设计;图6A例示了示例性AVX指令格式;图6B示出来自图6A的哪些字段构成完整操作码字段和基础操作字段;图6C示出来自图6A的哪些字段构成寄存器索引字段;图7A-7B是示出根据本专利技术的实施例的通用向量友好指令格式及其指令模板的框图;图8是示出根据本专利技术的实施例的示例性专用向量友好指令格式的框图;图9是根据本专利技术的一个实施例的寄存器架构的框图;图10A是示出根据本专利技术的实施例的示例性有序流水线以及示例性寄存器重命名的无序发布/执行流水线两者的框图;图10B是示出根据本专利技术的各实施例的要包括在处理器中的有序架构核的示例性实施例和示例性的寄存器重命名的无序发布/执行架构核的框图;图11A-B示出了更具体的示例性有序核架构的框图,该核将是芯片中的若干逻辑块之一(包括相同类型和/或不同类型的其他核);图12是根据本专利技术的实施例的可具有超过一个的核、可具有集成的存储器控制器、并且可具有集成图形的处理器的框图;图13是根据本专利技术的实施例的示例性系统的框图;图14是根据本专利技术的实施例的第一更具体的示例性系统的框图;图15是根据本专利技术的实施例的第二更具体的示例性系统的框图;图16是根据本专利技术的实施例的SoC的框图;图17是根据本专利技术的实施例的对比使用软件指令变换器将源指令集中的二进制指令变换成目标指令集中的二进制指令的框图。具体实施方式概览向量机器可被设计成处理“多维”数据结构,其中向量的每个元素对应于该数据结构的唯一维度。例如,如果向量机器被编程为考虑三维结构(诸如“立方体”),则可创建一向量,该向量具有对应于该立方体的宽度的第一元素、对应于该立方体的长度的第二元素以及对应于该立方体的高度的第三元素。本领域普通技术人员将理解,在计算系统中对多维结构的计算必然需要具有两个或更多维度、包括超过三个维度的结构。然而,为简单起见,本申请将主要提供示例。当将特定尺寸分配给多维结构时,可将该结构打破成多个不同的“区段(section)”,这些“区段”的数量等于该结构的每个维度的相应尺寸之积。例如,图3a可视地描绘了3×3×3立方体301。由于该立方体的长度、宽度和高度维度中的每一个均为3,所以该立方体由3*3*3=27个单独的区段组成。可设计各种编程环境,以允许对多维结构的每个区段唯一地寻址。作为简单示例,参考图3a的立方体301,程序可能决定将该立方体的特定区段着色为特定颜色。如果该立方体的每个区段被配置成可唯一地寻址,则通过直接对该特定区段寻址并改变其本文档来自技高网...
用于多维数组中的元素偏移量计算的指令

【技术保护点】
一种装置,包括:功能单元逻辑电路,具有:a)第一寄存器,用于存储第一输入向量操作数,所述第一输入向量操作数具有用于多维数据结构的每个维度的元素,所述第一向量操作数的每个元素指定其相应维度的尺寸;b)第二寄存器,用于存储第二输入向量操作数,所述第二输入向量操作数指定所述多维结构的特定区段的坐标;c)逻辑电路,用于计算所述特定区段相对于所述多维结构的原点区段的地址的地址偏移量。

【技术特征摘要】
1.一种装置,包括:功能单元逻辑电路,具有:a)第一寄存器,用于存储第一输入向量操作数,所述第一输入向量操作数具有用于多维数据结构的每个维度的元素,所述第一向量操作数的每个元素指定其相应维度的尺寸;b)第二寄存器,用于存储第二输入向量操作数,所述第二输入向量操作数指定所述多维结构的特定区段的坐标;c)逻辑电路,用于计算所述特定区段相对于所述多维结构的原点区段的地址的地址偏移量。2.如权利要求1所述的装置,其特征在于,还包括第三寄存器,用于存储所述原点区段的所述地址。3.如权利要求2所述的装置,其特征在于,还包括加法器,耦合至所述逻辑电路的输出和所述第三寄存器,所述加法器用于计算所述特定区段的地址。4.如权利要求1所述的装置,其特征在于,所述逻辑电路被设计成计算:(Y_(N-l)*X_(N-2)*X_(N-3)...X_(1)*X_(0))+(Y_(N-2)*X_(N-3)...X_(1)*X_(0))+...+(Y_(1)*X_(0))+(Y_(0))其中N是所述多维结构的维度的数量,并且X是所述第一向量输入操作数,且Y是所述第二向量输入操作数。5.如权利要求1所述的装置,其特征在于,所述结果被存储在所述第一和第二寄存...

【专利技术属性】
技术研发人员:M·普罗特尼科夫A·纳赖金E·乌尔德阿迈德瓦尔
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国,US

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

1