Instruction set for SKEIN256 SHA3 algorithm on a 128-bit processor
    3.
    发明授权
    Instruction set for SKEIN256 SHA3 algorithm on a 128-bit processor 有权
    128位处理器上的SKEIN256 SHA3算法指令集

    公开(公告)号:US08953785B2

    公开(公告)日:2015-02-10

    申请号:US13631143

    申请日:2012-09-28

    IPC分类号: H04L9/28

    摘要: According to one embodiment, a processor includes an instruction decoder to receive a first instruction to perform first SKEIN256 MIX-PERMUTE operations, the first instruction having a first operand associated with a first storage location to store a plurality of odd words, a second operand associated with a second storage location to store a plurality of even words, and a third operand. The processor further includes a first execution unit coupled to the instruction decoder, in response to the first instruction, to perform multiple rounds of the first SKEIN256 MIX-PERMUTE operations based on the odd words and even words using a first rotate value obtained from a third storage location indicated by the third operand, and to store new odd words in the first storage location indicated by the first operand.

    摘要翻译: 根据一个实施例,处理器包括指令解码器,用于接收执行第一SKEIN256 MIX-PERMUTE操作的第一指令,所述第一指令具有与第一存储位置相关联的第一操作数,以存储多个奇数字,第二操作数相关联 具有存储多个偶数字的第二存储位置和第三操作数。 处理器还包括响应于第一指令而耦合到指令解码器的第一执行单元,使用从第三指令获得的第一旋转值,基于奇数字和偶数字进行第一SKEIN256 MIX-PERMUTE操作的多轮 由第三操作数指示的存储位置,并将新的奇数字存储在由第一操作数指示的第一存储位置中。

    SIMD INTEGER MULTIPLY-ACCUMULATE INSTRUCTION FOR MULTI-PRECISION ARITHMETIC
    4.
    发明申请
    SIMD INTEGER MULTIPLY-ACCUMULATE INSTRUCTION FOR MULTI-PRECISION ARITHMETIC 有权
    用于多精度算术的SIMD整数多项式累积指令

    公开(公告)号:US20140237218A1

    公开(公告)日:2014-08-21

    申请号:US13992728

    申请日:2011-12-19

    IPC分类号: G06F9/30

    摘要: A multiply-and-accumulate (MAC) instruction allows efficient execution of unsigned integer multiplications. The MAC instruction indicates a first vector register as a first operand, a second vector register as a second operand, and a third vector register as a destination. The first vector register stores a first factor, and the second vector register stores a partial sum. The MAC instruction is executed to multiply the first factor with an implicit second factor to generate a product, and to add the partial sum to the product to generate a result. The first factor, the implicit second factor and the partial sum have a same data width and the product has twice the data width. The most significant half of the result is stored in the third vector register, and the least significant half of the result is stored in the second vector register.

    摘要翻译: 乘法和累加(MAC)指令允许有效执行无符号整数乘法。 MAC指令表示作为第一操作数的第一向量寄存器,作为第二操作数的第二向量寄存器和作为目的地的第三向量寄存器。 第一向量寄存器存储第一因子,第二向量寄存器存储部分和。 执行MAC指令以将第一因子与隐式第二因子相乘以生成乘积,并将部分和添加到乘积以生成结果。 第一个因素,隐含的第二个因子和部分和具有相同的数据宽度,产品的数据宽度是两倍。 结果的最大一半存储在第三向量寄存器中,结果的最低有效半存储在第二向量寄存器中。

    INSTRUCTION FOR FAST ZUC ALGORITHM PROCESSING
    5.
    发明申请
    INSTRUCTION FOR FAST ZUC ALGORITHM PROCESSING 有权
    用于快速ZUC算法处理的指令

    公开(公告)号:US20140189290A1

    公开(公告)日:2014-07-03

    申请号:US13730230

    申请日:2012-12-28

    IPC分类号: G06F15/76

    摘要: Vector instructions for performing ZUC stream cipher operations are received and executed by the execution circuitry of a processor. The execution circuitry receives a first vector instruction to perform an update to a liner feedback shift register (LFSR), and receives a second vector instruction to perform an update to a state of a finite state machine (FSM), where the FSM receives inputs from re-ordered bits of the LFSR. The execution circuitry executes the first vector instruction and the second vector instruction in a single-instruction multiple data (SIMD) pipeline.

    摘要翻译: 用于执行ZUC流密码操作的矢量指令由处理器的执行电路接收和执行。 执行电路接收第一向量指令以对线性反馈移位寄存器(LFSR)进行更新,并且接收第二向量指令以对有限状态机(FSM)的状态进行更新,其中FSM接收来自 重新排列了LFSR的位。 执行电路在单指令多数据(SIMD)流水线中执行第一向量指令和第二向量指令。

    INSTRUCTION SET FOR MESSAGE SCHEDULING OF SHA256 ALGORITHM
    6.
    发明申请
    INSTRUCTION SET FOR MESSAGE SCHEDULING OF SHA256 ALGORITHM 有权
    SHA256算法的消息调度指令集

    公开(公告)号:US20140093069A1

    公开(公告)日:2014-04-03

    申请号:US13631165

    申请日:2012-09-28

    IPC分类号: H04L9/28

    摘要: A processor includes a first execution unit to receive and execute a first instruction to process a first part of secure hash algorithm 256 (SHA256) message scheduling operations, the first instruction having a first operand associated with a first storage location to store a first set of message inputs and a second operand associated with a second storage location to store a second set of message inputs. The processor further includes a second execution unit to receive and execute a second instruction to process a second part of the SHA256 message scheduling operations, the second instruction having a third operand associated with a third storage location to store an intermediate result of the first part and a third set of message inputs and a fourth operand associated with a fourth storage location to store a fourth set of message inputs.

    摘要翻译: 处理器包括第一执行单元,用于接收和执行第一指令以处理安全散列算法256(SHA256)消息调度操作的第一部分,所述第一指令具有与第一存储位置相关联的第一操作数,以存储第一组 消息输入和与第二存储位置相关联的第二操作数,以存储第二组消息输入。 所述处理器还包括第二执行单元,用于接收和执行用于处理所述SHA256消息调度操作的第二部分的第二指令,所述第二指令具有与第三存储位置相关联的第三操作数,以存储所述第一部分的中间结果;以及 第三组消息输入和与第四存储位置相关联的第四操作数,以存储第四组消息输入。

    INSTRUCTION SET FOR SKEIN256 SHA3 ALGORITHM ON A 128-BIT PROCESSOR
    7.
    发明申请
    INSTRUCTION SET FOR SKEIN256 SHA3 ALGORITHM ON A 128-BIT PROCESSOR 有权
    128位处理器的SKEIN256 SHA3算法指令集

    公开(公告)号:US20140093068A1

    公开(公告)日:2014-04-03

    申请号:US13631143

    申请日:2012-09-28

    IPC分类号: H04L9/28

    摘要: According to one embodiment, a processor includes an instruction decoder to receive a first instruction to perform first SKEIN256 MIX-PERMUTE operations, the first instruction having a first operand associated with a first storage location to store a plurality of odd words, a second operand associated with a second storage location to store a plurality of even words, and a third operand. The processor further includes a first execution unit coupled to the instruction decoder, in response to the first instruction, to perform multiple rounds of the first SKEIN256 MIX-PERMUTE operations based on the odd words and even words using a first rotate value obtained from a third storage location indicated by the third operand, and to store new odd words in the first storage location indicated by the first operand.

    摘要翻译: 根据一个实施例,处理器包括指令解码器,用于接收执行第一SKEIN256 MIX-PERMUTE操作的第一指令,所述第一指令具有与第一存储位置相关联的第一操作数,以存储多个奇数字,第二操作数相关联 具有存储多个偶数字的第二存储位置和第三操作数。 处理器还包括响应于第一指令而耦合到指令解码器的第一执行单元,使用从第三指令获得的第一旋转值,基于奇数字和偶数字进行第一SKEIN256 MIX-PERMUTE操作的多轮 由第三操作数指示的存储位置,并将新的奇数字存储在由第一操作数指示的第一存储位置中。