The processor includes a decoding unit for decoding instructions that indicate source packet data, multiple data elements and destinations that will include multiple adjacent data elements. The processor also includes an execution unit coupled with a decoding unit. In response to this instruction, the executing unit stores the result packet data in the destination. Results Packet data will have multiple paths, each of which will store different non-overlapping sets of adjacent data elements aligned with the minimum effective end of the corresponding path. Results Different non-overlapping sets of adjacent data elements indicating the number of adjacent data elements in the adjacent path of packet data will be separated from each other by at least one of the most efficient data elements in the lower effective path.
【技术实现步骤摘要】
【国外来华专利技术】将源封包数据划分为通路的处理器、方法、系统和指令
本文中描述的实施例一般涉及处理器。具体地说,本文中描述的实施例一般涉及响应于指令,对封包数据进行操作的处理器。
技术介绍
许多处理器具有单指令、多数据(SIMD)架构。在SIMD架构中,多个数据元素可作为封包数据或矢量数据被封包在一个寄存器或存储器位置内。在封包或矢量数据中,寄存器或存储器位置的比特可在逻辑上被分割成数据元素的序列。例如,128比特宽封包数据寄存器可具有两个64比特数据元素、四个32比特数据元素、八个16比特数据元素或十六个8比特数据元素。数据元素中的每个可表示可对其单独操作和/或独立于其它数据元素对其操作的单独数据段(例如,像素颜色分量、浮点数等)。在此类SIMD架构中,封包数据指令、矢量指令或SIMD指令可用于同时和/或并行对此类封包数据或矢量操作数的多个数据元素,或两个此类封包数据或矢量操作数的多对数据元素进行操作。处理器可具有响应指令的并行执行硬件,以同时和/或并行对数据进行操作。附图说明通过参照下面的描述和用于图示实施例的附图,可最好地理解本专利技术。在图中:图1是操作以执行划分为通路(lane)指令的实施例的处理器的一实施例的框图。图2是执行将源封包数据划分为通路指令的实施例的方法的实施例的流程框图。图3是将源封包数据划分为通路操作的实施例的框图。图4是将源封包数据划分为通路操作的第一特定示例实施例的框图。图5是将源封包数据划分为通路操作的第二甚至更加特定的示例实施例的框图。图6是将源封包数据划分为通路操作的第三特定示例实施例的框图。图7是将源封包数据划分为通路操作的第四甚至更加 ...
【技术保护点】
1.一种处理器,包括:多个封包数据寄存器;解码指令的解码单元,所述指令指示将包含多个邻接数据元素的源封包数据,所述指令指示数据元素的数量,以及所述指令指示目的地存储位置;以及与所述多个封包数据寄存器耦合并且与所述解码单元耦合的执行单元,所述执行单元响应所述指令,在所述目的地存储位置中存储结果封包数据,所述结果封包数据具有多个通路,所述结果封包数据的每个所述通路存储与所述相应通路的最低有效端对齐的所述源封包数据的所述指示数量的邻接数据元素的不同非重叠集合,所述结果封包数据的邻接通路中的所述指示数量的所述邻接数据元素的所述不同非重叠集合将通过较低有效通路的至少一个最高有效数据元素位置而彼此被分隔。
【技术特征摘要】
【国外来华专利技术】2016.03.31 US 15/0872311.一种处理器,包括:多个封包数据寄存器;解码指令的解码单元,所述指令指示将包含多个邻接数据元素的源封包数据,所述指令指示数据元素的数量,以及所述指令指示目的地存储位置;以及与所述多个封包数据寄存器耦合并且与所述解码单元耦合的执行单元,所述执行单元响应所述指令,在所述目的地存储位置中存储结果封包数据,所述结果封包数据具有多个通路,所述结果封包数据的每个所述通路存储与所述相应通路的最低有效端对齐的所述源封包数据的所述指示数量的邻接数据元素的不同非重叠集合,所述结果封包数据的邻接通路中的所述指示数量的所述邻接数据元素的所述不同非重叠集合将通过较低有效通路的至少一个最高有效数据元素位置而彼此被分隔。2.根据权利要求1所述的处理器,其中所述解码单元将解码所述指令,所述指令将具有指示所述数据元素的所述数量的立即数。3.根据权利要求1所述的处理器,其中所述解码单元将解码所述指令,所述指令将通过每个将包含相同数量的数据元素的结构的数量的指示来指示数据元素的所述数量。4.根据权利要求1所述的处理器,其中所述解码单元将解码所述指令,所述指令将指示在系统存储器中的所述源封包数据,并且其中所述执行单元响应所述指令,将通过单个加载操作,从所述系统存储器加载所述数据元素的所述不同非重叠集合中的至少每个。5.根据权利要求4所述的处理器,其中所述解码单元将解码所述指令,所述指令将指示将包含多个掩码元素的掩码,并且其中所述执行单元响应所述指令,将从所述系统存储器仅加载对应于所述掩码的未遮蔽掩码元素的所述源封包数据的数据元素。6.根据权利要求1至5中任一项所述的处理器,其中所述解码单元将解码所述指令,所述指令将指示将包含32比特单精度浮点数据元素的所述源封包数据,并且所述指令将指示512比特目的地封包数据寄存器,并且其中所述执行单元响应所述指令,将存储所述结果封包数据,所述结果封包数据将会是512比特结果封包数据,并且所述结果封包数据将具有两个256比特通路,其中所述256比特通路中的每个将存储与所述相应256比特通路的所述最低有效端对齐的所述邻接32比特单精度浮点数据元素的所述对应不同非重叠集合,其中在所述512比特结果封包数据的所述邻接256比特通路中的所述邻接32比特单精度浮点数据元素的所述不同非重叠集合将通过所述较低有效256比特通路的所述至少一个最高有效32比特数据元素位置而彼此被分隔。7.根据权利要求1至5中任一项所述的处理器,其中所述解码单元将解码所述指令,所述指令将指示将包含32比特单精度浮点数据元素的所述源封包数据,并且所述指令将指示至少256比特目的地封包数据寄存器,并且其中所述执行单元响应所述指令,将存储所述结果封包数据,所述结果封包数据将是至少256比特结果封包数据,并且所述结果封包数据将具有至少两个128比特通路,其中所述至少两个128比特通路中的每个将存储与所述相应128比特通路的所述最低有效端对齐的所述邻接32比特单精度浮点数据元素的所述对应不同非重叠集合,其中在所述至少256比特结果封包数据的所述邻接128比特通路中所述邻接32比特单精度浮点数据元素的所述不同非重叠集合将通过所述较低有效128比特通路的所述至少一个最高有效32比特数据元素位置而彼此被分隔。8.根据权利要求1至5中任一项所述的处理器,其中所述解码单元将解码所述指令,所述指令将指示将包含32比特数据元素的所述源封包数据。9.根据权利要求1至5中任一项所述的处理器,其中所述解码单元将解码所述指令,所述指令将指示将包含64比特数据元素的所述源封包数据。10.根据权利要求1至5中任一项所述的处理器,其中所述执行单元响应所述指令,将存储所述结果封包数据,在所述结果封包数据中每个所述通路是128比特通路。11.根据权利要求1至5中任一项所述的处理器,其中所述执行单元响应所述指令,将存储所述结果封包数据,在所述结果封包数据中每个所述通路是256比特通路。12.根据权利要求1至5中任一项所述的处理器,其中所述解码单元将解码所述指令,所述指令将具有指示所述结果封包数据的所述通路的大小的字段。13.根据权利要求1至5中任一项所述的处理器,其中将对所述指令是隐式的是将所述指示数量的邻接数据元素的每个不同非重叠集合与所述相应通路的所述最低有效端对齐。14.一种由处理器执行的方法,所述方法包括:在所述处理器处接收指令,所述指令指示包含多个邻接数据元素的源封包数据,所述指令指示数据元素的数量,以及所述指令指示目的地存储位置;以及响应所述指令,在所述目的地存储位置中存储结果封包数据,所述结果封包数据具有多个通路,所述结果封包数据的每个所述通路存储与所述相应通路的最低有效端对齐的所述源封包数据的所述指示数量的邻接数据元素的不同非重叠集合,所述结果封包数据的邻接通路中的所述指示数量的所述邻接数据元素的所述不同...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。