INSTRUCTION FOR FAST ZUC ALGORITHM PROCESSING
    71.
    发明申请
    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)流水线中执行第一向量指令和第二向量指令。

    APPARATUS AND METHOD FOR EFFICIENTLY EXECUTING BOOLEAN FUNCTIONS
    72.
    发明申请
    APPARATUS AND METHOD FOR EFFICIENTLY EXECUTING BOOLEAN FUNCTIONS 审中-公开
    有效执行布尔函数的装置和方法

    公开(公告)号:US20140095845A1

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

    申请号:US13631807

    申请日:2012-09-28

    IPC分类号: G06F9/30

    摘要: An apparatus and method are described for performing efficient Boolean operations in a pipelined processor which, in one embodiment, does not natively support three operand instructions. For example, a processor according to one embodiment of the invention comprises: a set of registers for storing packed operands; Boolean operation logic to execute a single instruction which uses three or more source operands packed in the set of registers, the Boolean operation logic to read at least three source operands and an immediate value to perform a Boolean operation on the three source operands, wherein the Boolean operation comprises: combining a bit read from each of the three operands to form an index to the immediate value, the index identifying a bit position within the immediate value; reading the bit from the identified bit position of the immediate value; and storing the bit from the identified bit position of the immediate value in a destination register.

    摘要翻译: 描述了一种用于在流水线处理器中执行有效的布尔运算的装置和方法,其在一个实施例中不本地支持三个操作数指令。 例如,根据本发明的一个实施例的处理器包括:一组用于存储打包操作数的寄存器; 用于执行单个指令的布尔运算逻辑,其使用打包在该组寄存器中的三个或更多个源操作数,布尔运算逻辑读取至少三个源操作数,并且立即值对三个源操作数执行布尔运算,其中, 布尔操作包括:组合从三个操作数中的每一个读取的位以形成立即值的索引,该索引标识立即值内的位位置; 从识别的位置读取该位从立即值; 并将来自所识别的立即值的比特位置的比特存储在目的地寄存器中。

    INSTRUCTION SET FOR SKEIN256 SHA3 ALGORITHM ON A 128-BIT PROCESSOR
    73.
    发明申请
    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操作的多轮 由第三操作数指示的存储位置,并将新的奇数字存储在由第一操作数指示的第一存储位置中。

    Architecture and instruction set for implementing advanced encryption standard (AES)
    74.
    发明授权
    Architecture and instruction set for implementing advanced encryption standard (AES) 有权
    实现高级加密标准(AES)的体系结构和指令集

    公开(公告)号:US08634550B2

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

    申请号:US13088088

    申请日:2011-04-15

    IPC分类号: H04L9/28 G06F15/00 G06F12/14

    摘要: A flexible aes instruction for a general purpose processor is provided that performs aes encryption or decryption using n rounds, where n includes the standard aes set of rounds {10, 12, 14}. A parameter is provided to allow the type of aes round to be selected, that is, whether it is a “last round”. In addition to standard aes, the flexible aes instruction allows an AES-like cipher with 20 rounds to be specified or a “one round” pass.

    摘要翻译: 提供了一种用于通用处理器的灵活的aes指令,其使用n次循环执行aes加密或解密,其中n包括标准的一组轮{10,12,14}。 提供了一个参数,以允许选择一轮的类型,即是否是“最后一轮”。 除了标准aes之外,灵活的aes指令允许指定具有20发的AES类密码或“一轮”通过。

    Normal-basis to canonical-basis transformation for binary galois-fields GF(2m)
    76.
    发明授权
    Normal-basis to canonical-basis transformation for binary galois-fields GF(2m) 有权
    二进制Galois-field的典型基变换法(2m)

    公开(公告)号:US08380777B2

    公开(公告)日:2013-02-19

    申请号:US11772176

    申请日:2007-06-30

    IPC分类号: G06F7/72

    CPC分类号: G06F7/724

    摘要: Basis conversion from normal form to canonical form is provided for both generic polynomials and special irreducible polynomials in the form of “all ones”, referred to as “all-ones-polynomials” (AOP). Generation and storing of large matrices is minimized by creating matrices on the fly, or by providing an alternate means of computing a result with minimal hardware extensions.

    摘要翻译: 对于通用多项式和以所有形式的所有形式的特殊不可约多项式提供了从正常形式到规范形式的基础转换,称为全要素多项式(AOP)。 通过在飞行中创建矩阵,或者通过提供以最小的硬件扩展来计算结果的替代方法来最小化大矩阵的生成和存储。

    Cryptographic system, method and multiplier
    78.
    发明授权
    Cryptographic system, method and multiplier 有权
    加密系统,方法和乘数

    公开(公告)号:US08073892B2

    公开(公告)日:2011-12-06

    申请号:US11323994

    申请日:2005-12-30

    IPC分类号: G06F7/52

    CPC分类号: G06F7/5275

    摘要: In general, in one aspect, the disclosure describes a multiplier that includes a set of multiple multipliers configured in parallel where the set of multiple multipliers have access to a first operand and a second operand to multiply, the first operand having multiple segments and the second operand having multiple segments. The multiplier also includes logic to repeatedly supply a single segment of the second operand to each multiplier of the set of multiple multipliers and to supply multiple respective segments of the first operand to the respective ones of the set of multiple multipliers until each segment of the second operand has been supplied with each segment of the first operand. The logic shifts the output of different ones of the set of multiple multipliers based, at least in part, on the position of the respective segments within the first operand. The multiplier also includes an accumulator coupled to the logic.

    摘要翻译: 通常,在一个方面,本发明描述了一种乘法器,其包括并行配置的一组多个乘法器,其中多个乘法器的组具有访问第一操作数和第二操作数以乘以具有多个段的第一操作数和第二操作数 具有多个段的操作数。 所述乘法器还包括逻辑以将所述第二操作数的单个段重复地提供给所述多个乘法器集合的每个乘法器,并且将所述第一操作数的多个相应段提供给所述多个乘法器组中的相应一个,直到所述第二 操作数已被提供给第一个操作数的每个段。 该逻辑至少部分地基于第一操作数内的相应段的位置来移动多个乘法器中的不同乘法器的输出。 乘法器还包括耦合到逻辑的累加器。

    Factoring based modular exponentiation
    80.
    发明授权
    Factoring based modular exponentiation 有权
    基于分数的模幂运算

    公开(公告)号:US07961877B2

    公开(公告)日:2011-06-14

    申请号:US11610886

    申请日:2006-12-14

    CPC分类号: G06F7/723

    摘要: The present disclosure provides a system and method for performing modular exponentiation. The method may include dividing a first polynomial into a plurality of segments and generating a first product by multiplying the plurality of segments of the first polynomial with a second polynomial. The method may also include generating a second product by shifting the contents of an accumulator with a factorization base. The method may further include adding the first product and the second product to yield a first intermediate result and reducing the first intermediate result to yield a second intermediate result. The method may also include generating a public key based on, at least in part, the second intermediate result. Of course, many alternatives, variations and modifications are possible without departing from this embodiment.

    摘要翻译: 本公开提供了一种用于执行模幂运算的系统和方法。 该方法可以包括将第一多项式划分成多个段,并通过将第一多项式的多个段乘以第二多项式来生成第一乘积。 该方法还可以包括通过用因式分解基座移位累加器的内容来产生第二乘积。 该方法还可以包括添加第一产物和第二产物以产生第一中间结果并减少第一中间结果以产生第二中间结果。 该方法还可以包括至少部分地基于第二中间结果生成公钥。 当然,在不脱离本实施例的情况下,可以进行许多替代,变化和修改。