实施混洗指令的设备、方法和操纵数据操作数的设备的制作方法

文档序号:6357020阅读:135来源:国知局
专利名称:实施混洗指令的设备、方法和操纵数据操作数的设备的制作方法
技术领域
本发明涉及基于处理器的系统,并且更具体地涉及处理器或其他处理引擎内的执行单元。
背景技术
微处理器可包括用于对数据实施操作的各种执行单元。这样的执行单元可包括算术逻辑单元(ALU)、浮点、整数和其他专用的执行单元。为了改进多媒体应用连同其他应用的效率,单指令多数据(SIMD)体系结构可使一个指令能够同时对若干数据、而不是对单个数据进行操作。在并行硬件执行的情况中,可以利用单个指令实施多个操作,从而改进了性能。为了使各种操作能够利用这样的体系结构,可以对驻留在寄存器或其他位置的压缩数据实施所谓的混洗操作以在例如SIMD操作的其他操作之前重新布置数据元素。另外的指令使得一个或多个位置中的数据移位给定的量以提供期望的结果。一些处理器包括用于对例如1 位操作数的较大的数据操作数实施混洗操作的多个单元。通过需要使用多个单元,产生以下结果就芯片面积而言不动产增加以及在操作期间功耗增加。此外,在不同执行单元中实施例如移位操作的其他操作,从而需要面积和功耗方面的额外开支。可利用例如一些指令集体系结构中的微操作(μ op)的子指令操作来执行基于混洗的指令(连同其他指令),以使所需要的操作能够取得期望的结果。这样的μ op可包括混洗、插入、移位、并置、压缩、解压缩以及诸如此类。此外,这样的指令的不同风格可用于支持数据的不同数据粒度。在假定所有这些的情况下,可能存在有控制变化和数据通路需求。 因此,可能需要多个执行单元来实施这些操作并且实施这些操作可能会用多个μ op和机器周期。因此,提高了功率需求并且出现了不希望的等待时间。

发明内容
本发明旨在解决上述问题。在本发明中,通过单个微操作(μ op),单个执行单元可处理各种与混洗有关的指令和其他指令。本发明提供一种方法,包括在公共执行单元中接收第一压缩数据操作数和第二压缩数据操作数;以及响应于第一指令,在所述公共执行单元中操纵所述第一压缩数据操作数和所述第二压缩数据操作数以按照所述执行单元的局部控制器的局部控制信号生成输出。本发明还提供一种设备,包括用于对第一数据操作数和第二数据操作数实施操作的执行单元;以及耦合到所述执行单元的控制器,如果所述控制器将与所述操作相关联的输入全局控制信号映射到局部控制信号上,则所述控制器用于提供所述局部控制信号以控制所述执行单元。本发明还提供一种系统,包括具有两条数据通路的执行单元和耦合到所述执行单元的动态随机存取存储器(DRAM),每条所述数据通路具有用于接收第一源操作数和第二源操作数并且基于操作类型选择部分以输出的第一选择器级;用于接收所述第一选择器级的输出的第二选择器级,其中所述第二选择器级由局部控制信号来控制,每个所述局部控制信号与结果的多个数据字段的其中之一相关联;以及用于接收所述第二选择器级的输出的第三选择器级,其中所述第三选择器级用于在每数据字段的基础上于所述第二级选择器的输出或设定值之间选择以生成所述结果。本发明还提供一种制品,包括机器可读存储介质,所述机器可读存储介质包括指令,在由机器执行时,所述指令使所述机器能够实施一种方法,所述方法包括接收与指令相关联的控制信息;确定所述控制信息是全局的还是局部的;基于所述指令的类型,控制执行单元的第一级选择器;以及为所述控制信息解码,如果所述控制信息是局部的,则向所述执行单元的第二级选择器中的每个提供局部控制信号,否则为所述第二级选择器中的每个将所述控制信息映射到所述局部控制信号上。本发明还提供一种用于对第一数据操作数和第二数据操作数实施混洗指令的设备,包括处理器,所述处理器包括用于实施所述混洗指令的第一执行单元,所述第一执行单元包括第一级第一多路复用器和第一级第二多路复用器,所述第一级第一多路复用器用于接收所述第二数据操作数的第一部分和所述第一数据操作数,而所述第一级第二多路复用器用于接收所述第一数据操作数的第一部分和所述第二数据操作数的第二部分,所述第一级第一多路复用器和所述第一级第二多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;第二级第三多路复用器和第二级第四多路复用器,所述第二级第三多路复用器用于接收所述第一级第一多路复用器的输出,而所述第二级第四多路复用器用于接收所述第一级第二多路复用器的输出,所述第二级第三多路复用器和所述第二级第四多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;耦合到所述第二级第三多路复用器和所述第二级第四多路复用器的数据操纵器,所述数据操纵器用于基于局部控制信号操纵来自所述第二级第三多路复用器和所述第二级第四多路复用器的输出;以及耦合到所述数据操纵器的输出的第三级多路复用器,其中所述第三级多路复用器用于输出所述混洗指令的结果。本发明还提供一种用于对第一数据操作数和第二数据操作数实施混洗指令的方法,包括在第一级第一多路复用器中接收所述第二数据操作数的第一部分和所述第一数据操作数;在第一级第二多路复用器中接收所述第一数据操作数的第一部分和所述第二数据操作数的第二部分,所述第一级第一多路复用器和所述第一级第二多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;在第二级第三多路复用器中接收来自所述第一级第一多路复用器的选择的部分;在第二级第四多路复用器中接收来自所述第一级第二多路复用器的选择的部分,所述第二级第三多路复用器和所述第二级第四多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;基于局部控制信号在数据操纵器中操纵来自所述第二级第三多路复用器和所述第二级第四多路复用器的选择的部分;在第三级多路复用器中接收所述数据操纵器的输出,其中所述第三级多路复用器用于输出所述混洗指令的结果。
5
本发明还提供一种用于操纵第一数据操作数和第二数据操作数的设备,包括用于对所述第一数据操作数和所述第二数据操作数实施操作的执行单元;以及耦合到所述执行单元以提供局部控制信号来控制所述执行单元的控制器,其中所述执行单元包括第一级第一多路复用器和第一级第二多路复用器,所述第一级第一多路复用器用于接收所述第二数据操作数的第一部分和所述第一数据操作数,而所述第一级第二多路复用器用于接收所述第一数据操作数的第一部分和所述第二数据操作数的第二部分,所述设备还包括第二级第三多路复用器和第二级第四多路复用器,所述第二级第三多路复用器用于接收所述第一级第一多路复用器的输出,而所述第二级第四多路复用器用于接收所述第一级第二多路复用器的输出。


图1是依照本发明一个实施例的混洗单元的高级视图的框图。图2是依照本发明一个实施例的混洗单元的一部分的更详细视图的框图。图3示出依照本发明实施例的、执行混洗指令的混洗单元的输入和输出的示例。图4是依照本发明实施例的执行单元的第一级选择器的框图。图5是依照本发明实施例的方法的流程图。图6是依照本发明一个实施例的系统的框图。
具体实施例方式本发明的实施例涉及基于处理器的系统,并且更具体地涉及处理器或其他处理引擎内的执行单元。在各种实施例中,通过单个微操作(μ op),单个执行单元可处理各种与混洗有关的指令和其他指令。虽然本发明实施例的范围不限于此方面,但在各种实现中,执行单元可以被制造为处理1 位操作数而且可以被配置为支持多个指令宽度,包括例如像64位多媒体扩展(MMX)指令这样的64位指令和1 位单指令多数据(SIMD)指令。例如,取决于体系结构,利用该执行单元,可以响应一个μ op或指令在单个机器周期内执行用于实施包括对各种形式的数据的混洗操作、移位操作以及其他算术运算的不的类混洗功能的各种指令。例如,在各种实施例中,可执行例如在htel 体系结构(IA-32)处理器或其扩展中可用的指令集体系结构(ISA)或其他ISA的指令。尤其如此的是,本发明的实施例提供了例如字节、字、双字和四字的不同数据粒度的指令的性能。在其中指令被解码为例如μ op的子指令的一个实施例中,通过在单个处理周期内于单个执行单元或多个并行执行单元中实施单个μορ,可执行指令。对该公开内容来说,可以交换使用术语“μορ”和“指令”,除非涉及特定的处理器体系结构,在该特定的处理器体系结构中,指令可以解码为例如μορ的子指令。现在参见图1,示出的是依照本发明一个实施例的混洗单元的高级视图的框图。如图1所示,混洗单元10包括例如多路复用器或其他选择机制的多级选择器。在图1的实施例中,混洗单元10可具有两条独立数据通路,即第一数据通路A和第二数据通路B。耦合每条独立数据通路以至少接收第一源操作数(即Si)和第二源操作数(即S》的部分。具体地,如图1所示,第一级选择器包括第一选择器20a和第二选择器25a。虽然为了容易说明而示出为单独的选择器,但是将会理解,可以存在多个第一选择器20a和第二选择器25a。 如图所示,耦合第一选择器20a以接收三个输入并提供单个输出(即3 1选择)。具体地,耦合第一选择器20a以接收第一源操作数Sl的高部分和低部分以及第二源操作数S2 的高部分。耦合第二选择器25a以接收第一源操作数Sl的高部分和第二源操作数S2的低部分。类似地,第一级选择器包括第一选择器20b和第二选择器25b。如图所示,耦合这些选择器以分别接收第二源操作数S2的高部分和低部分以及第一操作数Sl的低部分(在第一选择器20b中)、第一源操作数Sl的高部分和第二源操作数S2的低部分(在第二选择器 25b中)。虽然是利用图1实施例中的第一级选择器的该特定实现示出的,但是将会理解, 本发明的范围不限于此方面。仍然参见图1,第一级的选择器的输出可耦合到第二级的多个选择器的输入。具体地,耦合第二级的第一选择器30a以接收第一级的第一选择器20a的输出,而耦合第二级的第二选择器35a以接收第一级的第二选择器25a的输出。如图所示,第二级的第一选择器 30a和第二选择器3 可以是8 1选择器。可以耦合类似的第一选择器30b和第二选择器35b以接收第一级的第一选择器20b和第二选择器25b的输出。在各种实现中,为了放松定时约束并使基于混洗的操作在单个周期内能够执行, 可以向两条数据通路提供数据操作数的完整长度,即源操作数Sl和源操作数S2的所有位。 这样,允许更多的时间用于解码对μ op和例如立即数据的相关控制信息的操作以控制数据通路的较低部分。另外,可基于将要实施的操作类型由控制信号来控制由第一级选择器实施的选择。也就是说,这些第一级选择器基于功能性的性质(例如混洗或移位)来准备输入数据,但并不基于例如立即数据的、与指令相关联的完整控制信息来选择数据。相反, 立即数据的更大部分可用于控制在第二级选择器和更低级选择器中实施的选择。注意到, 控制信息可采用全局控制信息或局部控制信息的形式。也就是说,取决于指令类型,可以全局或局部控制数据通路。例如,基于一条控制信息,可类似地控制所有数据字段。这种全局控制的一个示例是移位控制。立即数据或其他控制信息可提供应用于所有数据字段的移位量,并且相应地,可同样将这样的全局控制信号应用于混洗单元10的至少更低级的选择器。正如下文将进一步描述的,可将这样的全局控制信号映射到耦合至各种选择器的局部控制信号。对于例如混洗指令的其他指令,可使用例如来自立即数据的局部控制信息。更具体地,可提供局部控制信号,其中每个数据字段接收不同的控制信息。因此可按照这些局部信号控制混洗单元10的至少更低级的选择器。换句话说,全局控制信号匹配相对位置选择,而局部控制信号匹配绝对位置选择。为了在单个执行单元中实现这些根本不同的指令, 可利用局部控制信号来控制混洗单元10的选择器,从而支持各种与混洗有关的指令。然而,为了进一步使类移位指令能够在混洗单元10中执行,可提供将全局信号映射到这些局部信号上的逻辑。相应地,提供可以在单个μ OP中执行各种不同指令的类属混洗体系结构。仍然参见图1,第二级选择器的输出可以耦合至第三级选择器的输入。具体地,如图1所示,耦合第三级选择器40以接收第二级的第一选择器30a和第二选择器3 的输出 (即B2H和B1H)。此外,还耦合选择器40以接收常量值(即Const),可基于利用使选择的常量或特殊值能够通过的指令接收的控制信号来生成该常量值。虽然是利用单个选择器40示出的,但是将会理解,在给定的实现中,在第三级中可存在多个选择器以实现所示的 3 1选择操作。在一些实现中,代替3 1选择器,可在第二级选择器和第三级选择器之间耦合数据操纵单元以使能够实现具有2 1选择器的第三级选择器。还如图1所示,第三级选择器45接收第二级选择器30b和35b的输出(即B2L和BlL)和常量值。虽然是利用图1实施例中的该特定实现示出的,但是将会理解,本发明的范围不限于此方面。虽然图1示出了混洗单元的整体结构的高级框图,现在参见图2,示出的是依照本发明一个实施例的混洗单元的一部分的更详细视图的框图。如图2所示,示出了执行单元100。在高级处,执行单元100包括第一级选择器,第一级选择器包括第一多路复用器 120a-120h(从类属上说为第一多路复用器(mux) 120)和第二多路复用器12\_125h(从类属上说为第二多路复用器125)。在各种实现中,可基于将要执行的例如移位或混洗操作的指令的给定功能性来控制第一多路复用器120和第二多路复用器125。因此,这些多路复用器的控制不取决于例如利用指令提供的立即数据的全部控制位。如图所示,耦合第一多路复用器120和第二多路复用器125中的每个以接收第一源操作数Sl和第二源操作数S2的各种字节级部分,通过一组旁路多路复用器IlOa-IlOp(从类属上说为旁路多路复用器110)将它们提供给这些多路复用器。注意到,旁路多路复用器110向第一级多路复用器提供了所有的第一源操作数和第二源操作数。注意到,如图2所示的混洗单元100仅仅是混洗单元的一半。也就是说,对于操作数Sl和S2的其他部分,可存在相同的独立数据通路(如图2 左侧的点表示的),如图1的高级数据通路A和B中所示的。仍然参见图2,第一多路复用器120和第二多路复用器125的输出耦合到多个第二级选择器,第二级选择器包括第三多路复用器130a-130h(从类属上说为第三多路复用器 130)和第四多路复用器13\-135h(从类属上说为第四多路复用器135)。可以基于局部控制信号来控制这些第二级多路复用器以使得能够实现移位或混洗连同其他操作。对于由全局信号控制的操作,例如移位操作,可将全局信号映射到接着提供的局部信号上以控制第三多路复用器130和第四多路复用器135。更具体地,如图2所示,执行单元100包括控制器155。控制器155可以是微控制器、程控逻辑、固件、软件、硬件或其组合。控制器155可用于接收与指令(即μ op和完整控制信息(例如来自直接总线的立即数据))相关联的输入控制信号并生成用于控制第二级选择器以及第三级选择器(将在下面进一步描述)的控制信号。在各种实现中,控制器155可适于实施全局控制信号到局部控制信号上的映射。也就是说,取决于指令类型,控制器巧5可接收输入全局信号,又将接收的输入全局信号映射到局部控制信号上,局部控制信号耦合到第二级选择器和第三级选择器的各种选择器(即在数据字段的基础上)。第二级选择器的输出可耦合到数据操纵器150。在各种实现中,数据操纵器150可用于对输入数据实施各种逻辑操作。这样,可避免与将3 1多路复用器用于第三级选择器相关联的大小和开支(即功耗和定时)。一般地,可以实现数据操纵器150以选择输入数据或特殊值(例如常量)。也就是说,数据操纵器150可生成常量值以避免在第三级对 3 1多路复用器的需求。具体地,如图2所示,数据操纵器150包括第一逻辑门152a,第一逻辑门15 可以是耦合以接收来自第三多路复用器130中对应一个的输出和来自控制器155的输出的“与”门。该输出可对应于预定值,取决于所期望的特定操作,它可以全部为1或全部为0。逻辑门15 的输出耦合到第二逻辑门IMa,第二逻辑门154a可以是耦合以在第一逻辑门152a的输出和特殊常量之间实施逻辑“或”的“或”门,取决于给定的实现, 它可以全部为0或1。注意到,耦合类似的逻辑门15 和154b以接收来自对应的第四多路复用器135的输入和来自控制器155的输入。当然,耦合类似的逻辑电路以接收来自第三多路复用器130和第四多路复用器135中的其他多路复用器的输入。随后,可耦合包括第五多路复用器140a_140h(从类属上说为第五多路复用器140) 的第三级选择器以接收来自数据操纵器150的输出并且可控制第三级选择器以向驱动器 160提供输出。如图2所示,由于存在于数据操纵器150中的逻辑,第五多路复用器140可以是2 1多路复用器。在各种实现中,控制器155可提供控制信号以控制第五多路复用器 140。现在参见图3,示出的是依照本发明实施例的、执行混洗指令的混洗单元的输入和输出的示例。如图3的实施例所示,混洗指令可以是压缩的、基于字节的混洗指令PSHUFB。 利用该指令,可实施基于字节的混洗。此外,可以针对结果的给定字节选择例如常量的预定值。具体地,如图3所示,可以从寄存器或从存储器获得的第一源操作数Sl被表示为 XMMl0在图3的实施例中,第一源操作数Sl可以是1 位,尽管本发明的范围不限于此方面。可以从寄存器或存储器获得的第二源操作数S2(在图3中表示为XMiC)可提供用于将第一源操作数Sl的数据字节混洗到目的地中的位置中的控制,该目的地还可对应于XMMl。 如图所示,可基于第二数据操作数的各个字节中的控制来混洗第一源操作数的各个对应字节。利用依照本发明实施例的混洗单元并且基于该指令的性质,可以在第一级选择器中选择第一源操作数Sl的高部分和低部分。接着,第二级选择器中的每个字节级多路复用器可基于第二数据操作数S2 (它还可以作为立即数据来提供)中对应字节的低三位来实施选择。最后,可控制第三级选择器以从第二级为给定的字节选择第一字节多路复用器或第二字节多路复用器的输出。注意到,在图3的示例中,对于某些字节(即字节1和15),可按照控制第三级多路复用器的控制逻辑来应用常量。这样,可在单个周期内于执行单元中执行该局部控制类型的指令。在一个实施例中,另一混洗指令可以是SHUFPS,它可以将多个(例如四个)单浮点(FP)数中的任何一个从第一源操作数混洗到目的位置的低两个目的字段并且由来自第二源操作数的多个(例如四个)单FP数中的任何一个生成高两个目的字段。立即值可用作表示将如何混洗数据元素的控制字。更具体地,控制字的预定位可表示通过由局部控制器生成的局部控制信号将第一操作数中这四个数据元素中的哪个混洗到目的寄存器的第一或最低数据元素中。类似地,还可在单个周期内于执行单元中执行全局类型的指令。例如,如压缩数据移位对齐(PALIGNR)指令的对齐指令可用于并置两个1 位源操作数并且在由立即数据携带的移位计数的控制下将它们移位到1 位目的位置中。在一个实施例中,立即数据的一部分可用于选择更高位或更低位和第一级多路复用器中的第一源操作数或第二源操作数。注意到,因为该指令可同时使用第一源操作数的更高字节(即SlH)和第二源操作数的更低字节(即S2L),第一选择器级中3 1多路复用器(例如图1的第一级选择器 20a)的实现可允许SlH数据和S2L数据的这种同时选择。
权利要求
1.一种用于对第一数据操作数和第二数据操作数实施混洗指令的设备,包括处理器,所述处理器包括用于实施所述混洗指令的第一执行单元,所述第一执行单元包括第一级第一多路复用器和第一级第二多路复用器,所述第一级第一多路复用器用于接收所述第二数据操作数的第一部分和所述第一数据操作数,而所述第一级第二多路复用器用于接收所述第一数据操作数的第一部分和所述第二数据操作数的第二部分,所述第一级第一多路复用器和所述第一级第二多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;第二级第三多路复用器和第二级第四多路复用器,所述第二级第三多路复用器用于接收所述第一级第一多路复用器的输出,而所述第二级第四多路复用器用于接收所述第一级第二多路复用器的输出,所述第二级第三多路复用器和所述第二级第四多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;耦合到所述第二级第三多路复用器和所述第二级第四多路复用器的数据操纵器,所述数据操纵器用于基于局部控制信号操纵来自所述第二级第三多路复用器和所述第二级第四多路复用器的输出;以及耦合到所述数据操纵器的输出的第三级多路复用器,其中所述第三级多路复用器用于输出所述混洗指令的结果。
2.如权利要求1所述的设备,其中,所述数据操纵器包括用于对来自所述第二级第三多路复用器和所述第二级第四多路复用器的所述输出实施逻辑操作的多个逻辑门。
3.如权利要求1所述的设备,其中,所述处理器包括用于提供所述局部控制信号以控制所述第一执行单元的控制器。
4.如权利要求1所述的设备,其中所述处理器还包括存储控制器。
5.如权利要求1所述的设备,其中所述处理器包括多核处理器,所述多核处理器包括第一核和第二核,其中,所述第一执行单元包括在所述第一核内。
6.如权利要求1所述的设备,其中所述第一数据操作数和所述第二数据操作数包括压缩数据操作数。
7.如权利要求1所述的设备,其中所述混洗指令允许实施基于字节的混洗,并针对所述结果的给定字节提供一个或多个常量的选择。
8.一种用于对第一数据操作数和第二数据操作数实施混洗指令的方法,包括在第一级第一多路复用器中接收所述第二数据操作数的第一部分和所述第一数据操作数;在第一级第二多路复用器中接收所述第一数据操作数的第一部分和所述第二数据操作数的第二部分,所述第一级第一多路复用器和所述第一级第二多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;在第二级第三多路复用器中接收来自所述第一级第一多路复用器的选择的部分;在第二级第四多路复用器中接收来自所述第一级第二多路复用器的选择的部分,所述第二级第三多路复用器和所述第二级第四多路复用器用于输出所述第一数据操作数和所述第二数据操作数的选择的部分;基于局部控制信号在数据操纵器中操纵来自所述第二级第三多路复用器和所述第二级第四多路复用器的选择的部分;在第三级多路复用器中接收所述数据操纵器的输出,其中所述第三级多路复用器用于输出所述混洗指令的结果。
9.如权利要求8所述的方法,还包括提供所述局部控制信号以控制所述数据操纵器。
10.如权利要求8所述的方法,其中所述第一数据操作数和所述第二数据操作数包括压缩数据操作数。
11.如权利要求8所述的方法,其中所述混洗指令允许实施基于字节的混洗,并针对所述结果的给定字节提供一个或多个常量的选择。
12.一种用于操纵第一数据操作数和第二数据操作数的设备,包括用于对所述第一数据操作数和所述第二数据操作数实施操作的执行单元;以及耦合到所述执行单元以提供局部控制信号来控制所述执行单元的控制器,其中所述执行单元包括第一级第一多路复用器和第一级第二多路复用器,所述第一级第一多路复用器用于接收所述第二数据操作数的第一部分和所述第一数据操作数,而所述第一级第二多路复用器用于接收所述第一数据操作数的第一部分和所述第二数据操作数的第二部分,所述设备还包括第二级第三多路复用器和第二级第四多路复用器,所述第二级第三多路复用器用于接收所述第一级第一多路复用器的输出,而所述第二级第四多路复用器用于接收所述第一级第二多路复用器的输出。
13.如权利要求12所述的设备,还包括耦合到所述第二级第三多路复用器和所述第二级第四多路复用器的数据操纵器,所述数据操纵器用于基于局部控制信号操纵来自所述第二级第三多路复用器和所述第二级第四多路复用器的输出。
14.如权利要求13所述的设备,还包括耦合到所述数据操纵器的输出的第三级多路复用器,其中所述第三级多路复用器用于输出所述操作的结果。
15.如权利要求12所述的设备,还包括用于向所述第一级第一多路复用器和所述第一级第二多路复用器提供所述第一数据操作数和所述第二数据操作数的一组选择器。
16.如权利要求12所述的设备,其中所述控制器用于接收多个不同指令并且为所述多个不同指令解码以在单个周期内于所述执行单元中执行所述多个不同指令中的每个。
17.如权利要求12所述的设备,其中所述执行单元包括用于实施混洗指令和移位指令的混洗单元,所述混洗单元具有至少两条独立数据通路,每条所述数据通路用于接收所述第一数据操作数和所述第二数据操作数。
18.如权利要求13所述的设备,其中所述局部控制信号在每字段的基础上用于所述第一数据操作数和所述第二数据操作数。
全文摘要
本发明涉及实施混洗指令的设备、方法和操纵数据操作数的设备。根据本发明的方法包括在第一级第一多路复用器中接收第二数据操作数的第一部分和第一数据操作数;在第一级第二多路复用器中接收第一数据操作数的第一部分和第二数据操作数的第二部分;在第二级第三多路复用器中接收来自第一级第一多路复用器的选择的部分;在第二级第四多路复用器中接收来自第一级第二多路复用器的选择的部分;基于局部控制信号在数据操纵器中操纵来自第二级第三多路复用器和第二级第四多路复用器的选择的部分;在第三级多路复用器中接收数据操纵器的输出,其中第三级多路复用器用于输出混洗指令的结果。
文档编号G06F9/315GK102169427SQ20111007694
公开日2011年8月31日 申请日期2007年6月30日 优先权日2006年6月30日
发明者A·蒂莫尔, H·S·劳, M·阿布达拉, S·-W·付, T·加特 申请人:英特尔公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1