【技术实现步骤摘要】
【国外来华专利技术】用于提供向量混合和置换功能的指令和逻辑
本公开涉及处理逻辑、微处理器以及相关联的指令集体系结构的领域,该指令集体系结构在被处理器或其他处理逻辑所执行时运行逻辑、数学或其他功能性操作。具体而言,本公开涉及用于提供向量混合和置换功能的指令和逻辑。
技术介绍
目前的诸多处理器通常包括用于提供计算密集型操作但提供高度数据并行性的指令,这些指令可通过使用多种数据存储设备的高效实现来使用,这些数据存储设备诸如:单指令多数据(SIMD)向量寄存器。利用SIMD向量寄存器的处理器的一个可能的性能问题是,存储在物理存储器中的数据的放置方式需要在向量寄存器中进行重排以应用所期望的存储器和/或SIMD算术操作,例如处于未对齐地址的数据、或处于两个相应高速缓存行的末尾和开始处的数据、或在表的不同条目中的数据、或在图像中跨越块边界的数据,等等。过去的一些实施例已经实现用于处理这些可能的性能问题中的某些特殊情况的指令,诸如处理未对齐地址或执行特定转换的特殊重新安排的指令。然而,用于处理某些特殊情况的实现方式可能难以更普遍地适应,和/或可能需要更多个专用电路或预先处理数据以作出适应。这样的实现 ...
【技术保护点】
一种处理器,包括:一个或多个向量寄存器,各自包括用于存储向量元素的值的多个数据字段;解码级,用于解码第一指令,所述第一指令指定:所述一个或多个向量寄存器的目的地操作数、所述一个或多个向量寄存器的第一操作数、向量元素尺寸、所述一个或多个向量寄存器的第二操作数、以及第三操作数;以及执行单元,用于响应于经解码的第一指令:从所述第二操作数中具有所述向量元素尺寸的多个数据字段读取索引值,所述多个索引值中的每一个索引值具有第一选择器部分和第二选择器部分;以及将向量元素值存储到所述目的地操作数中具有所述指定的向量元素尺寸的相应数据字段的部分中,其中对于所述多个数据字段中的每一个,响应于相 ...
【技术特征摘要】
【国外来华专利技术】1.一种用于执行指令的处理器,包括:一个或多个向量寄存器,各自包括用于存储向量元素的值的多个数据字段;解码级,用于解码第一指令,所述第一指令指定:所述一个或多个向量寄存器的目的地操作数、所述一个或多个向量寄存器的第一操作数、向量元素尺寸、所述一个或多个向量寄存器的第二操作数、以及第三操作数;以及执行单元,用于响应于经解码的第一指令:从所述第二操作数中具有所述向量元素尺寸的多个数据字段读取多个索引值,所述多个索引值中的每一个索引值具有第一选择器部分和第二选择器部分;以及将向量元素值存储到所述目的地操作数中具有所指定的向量元素尺寸的相应数据字段的部分中,其中对于中间向量结果的多个数据字段中的每一个,响应于相应的第一选择器部分具有第一值,从通过所述相应的第一选择器部分提供索引的所述第一操作数中具有所指定的向量元素尺寸的相应数据字段将第一向量元素值复制到所述中间向量结果的相应数据字段,而响应于相应的第一选择器部分具有第二值,从通过所述相应的第一选择器部分提供索引的所述第三操作数中具有所指定的向量元素尺寸的相应数据字段将第二向量元素值复制到所述中间向量结果的相应数据字段,然后响应于相应的第二选择器部分,将所述目的地操作数中具有所指定的向量元素尺寸的相应数据字段的所述部分替换为通过所述相应的第二选择器部分提供索引的所述中间向量结果中的数据字段。2.如权利要求1所述的处理器,其特征在于,所指定的第三操作数是一个或多个向量寄存器中的一个。3.如权利要求1所述的处理器,其特征在于,所指定的第三操作数是存储器位置。4.如权利要求1所述的处理器,其特征在于,所述第二操作数中的多个索引值中的每一个索引值具有由具有所述向量元素尺寸的相应数据字段的最高有效位组成的第一选择器部分。5.如权利要求4所述的处理器,其特征在于,所述第二操作数中的多个索引值中的每一个索引值具有由具有所述向量元素尺寸的相应数据字段的最低4个有效位组成的第二选择器部分。6.如权利要求4所述的处理器,其特征在于,所述第二操作数中的多个索引值中的每一个索引值具有由具有所述向量元素尺寸的相应数据字段的最低3个有效位组成的第二选择器部分。7.如权利要求4所述的处理器,其特征在于,所述第二操作数中的多个索引值中的每一个索引值具有由具有所述向量元素尺寸的相应数据字段的最低2个有效位组成的第二选择器部分。8.如权利要求1所述的处理器,其特征在于,所指定的目的地操作数也是指定的第一操作数。9.如权利要求1所述的处理器,其特征在于,所述目的地操作数中将被替换的具有所指定的向量元素尺寸的相应数据字段的所述部分是未被所述第一指令所指定的掩码操作数掩蔽的那些数据字段。10.一种用于执行指令的机器实现的方法,包括:解码第一指令,所述第一指令指定:一个或多个向量寄存器的目的地操作数、所述一个或多个向量寄存器的第一操作数、向量元素尺寸、所述一个或多个向量寄存器的第二操作数、以及第三操作数,每个向量寄存器包括用于存储向量元素的值的第一多个数据字段;以及响应于经解码的第一指令:从所述第二操作数中具有所述向量元素尺寸的数据字段读取多个索引值,所述多个索引值中的每一个索引值具有第一选择器部分和第二选择器部分;以及将向量元素值存储到所述目的地操作数中具有所指定的向量元素尺寸的相应数据字段的部分中,其中对于中间向量结果的多个数据字段中的每一个,响应于相应的第一选择器部分具有第一值,从通过所述相应的第一选择器部分提供索引的所述第一操作数中具有所指定的向量元素尺寸的相应数据字段将第一向量元素值复制到所述中间向量结果的相应数据字段,而响应于相应的第一选择器部分具有第二值,从通过所述相应的第一选择器部分提供索引的所述第三操作数中具有所指定的向量元素尺寸的相应数据字段将第二向量元素值复制到所述中间向量结果的相应数据字段,然后响应于相应的第二选择器部分,将所述目的地操作数中具有所指定的向量元素尺寸的相应数据字段的所述部分替换为通过所述相应的第二选择器部分提供索引的所述中间向量结果中的数据字段。11.如权利要求10所述的机器实现的方法,其特征在于,所指定的第三操作数是所述一个或多个向量寄存器中的一个。12.如权利要求10所述的机器实现的方法,其特征在于,所指定的第三操作数是存储器位置。13.如权利要求10所述的机器实现的方法,其特征在于,所述第二操作数中的多个索引值中的每一个索引值具有由具有所述向量元素尺寸的相应数据字段的最高有效位组成的第一选择器部分。14.如权利要求13所述的机器实现的方法,其特征在于,所述第二操作数中的多个索引值中的每一个索引值具有由具有所述向量元素尺寸的相应数据字段的最低4个有效位组成的第二选择器部分。15.如权利要求13所述的机器实现的方法,其特征在于,所述第二操作数中的多个索引值中的每一个索引值具有由具有所述向量元素尺寸的相应数据字段的最低3个有效位组成的第二选择器部分。16.如权利要求13所述的机器实现的方法,其特征在于,所...
【专利技术属性】
技术研发人员:R·凡伦天,B·L·托尔,J·韦德梅耶,S·J·萨姆德若拉,J·考博尔,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。