Instructions processors, methods, and systems to process BLAKE secure hashing algorithm
    23.
    发明授权
    Instructions processors, methods, and systems to process BLAKE secure hashing algorithm 有权
    指令处理器,方法和系统来处理BLAKE安全散列算法

    公开(公告)号:US09100184B2

    公开(公告)日:2015-08-04

    申请号:US13976741

    申请日:2011-12-22

    摘要: A method of an aspect includes receiving an instruction indicating a first source having at least one set of four state matrix data elements, which represent a complete set of four inputs to a G function of a cryptographic hashing algorithm. The algorithm uses a sixteen data element state matrix, and alternates between updating data elements in columns and diagonals. The instruction also indicates a second source having data elements that represent message and constant data. In response to the instruction, a result is stored in a destination indicated by the instruction. The result includes updated state matrix data elements including at least one set of four updated state matrix data elements. Each of the four updated state matrix data elements represents a corresponding one of the four state matrix data elements of the first source, which has been updated by the G function.

    摘要翻译: 一种方面的方法包括:接收指示具有至少一组四个状态矩阵数据元素的第一源的指令,其表示对密码散列算法的G函数的四个输入的完整集合。 该算法使用十六个数据元素状态矩阵,并在列和对角线之间更新数据元素。 该指令还指示具有表示消息和常数数据的数据元素的第二源。 响应该指令,结果存储在指令指示的目的地中。 结果包括更新的状态矩阵数据元素,包括至少一组四个更新的状态矩阵数据元素。 四个更新的状态矩阵数据元素中的每一个表示已由G功能更新的第一源的四个状态矩阵数据元素中的相应一个。

    METHOD AND APPARATUS FOR A NON-DETERMINISTIC RANDOM BIT GENERATOR (NRBG)
    24.
    发明申请
    METHOD AND APPARATUS FOR A NON-DETERMINISTIC RANDOM BIT GENERATOR (NRBG) 有权
    非确定性随机位发生器(NRBG)的方法和装置

    公开(公告)号:US20150055778A1

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

    申请号:US13976175

    申请日:2011-12-29

    IPC分类号: H04L9/08 G06F7/58

    摘要: A hardware-based digital random number generator is provided. In one embodiment, a processor includes a digital random number generator (DRNG) to condition entropy data provided by an entropy source, to generate a plurality of deterministic random bit (DRB) strings, and to generate a plurality of nondeterministic random bit (NRB) strings, and an execution unit coupled to the DRNG, in response to a first instruction to read a seed value, to retrieve one of the NRB strings from the DRNG and to store the NRB string in a destination register specified by the first instruction.

    摘要翻译: 提供了一种基于硬件的数字随机数发生器。 在一个实施例中,处理器包括数字随机数发生器(DRNG),用于对熵源提供的熵数据进行条件生成,以产生多个确定性随机位(DRB)串,并产生多个非确定性随机位(NRB) 响应于读取种子值的第一指令,从DRNG检索NRB字符串中的一个并将NRB字符串存储在由第一指令指定的目的地寄存器中,耦合到DRNG的执行单元。

    METHOD, APPARATUS, AND SYSTEM FOR TRANSACTIONAL SPECULATION CONTROL INSTRUCTIONS
    26.
    发明申请
    METHOD, APPARATUS, AND SYSTEM FOR TRANSACTIONAL SPECULATION CONTROL INSTRUCTIONS 审中-公开
    方法,装置和系统的交互式分析控制指令

    公开(公告)号:US20150032998A1

    公开(公告)日:2015-01-29

    申请号:US13997243

    申请日:2012-02-02

    IPC分类号: G06F9/30

    摘要: An apparatus and method is described herein for providing speculation control instructions. An xAcquire and xRelease instruction are provided to define a critical section. In one embodiment, the xAcquire instruction includes a lock instruction with an elision prefix and the xRelease instruction includes a lock release instruction with an elision prefix. As a result, a processor is able to elide locks and transactionally execute a critical section defined in software by xAcquire and xRelease. But by adding only prefix hints, legacy processor are able to execute the same code by just ignoring the hints and executing the critical section traditionally with locks to guarantee mutual exclusion. Moreover, xBegin and xEnd are similarly provided for in an Instruction Set Architecture (ISA) to define a transactional code region. In addition, other control speculation instructions, such as xAbort to enable explicit abort of a critical or transactional code section and xTest to test a state of speculative execution is also provided in the ISA.

    摘要翻译: 这里描述了一种用于提供猜测控制指令的装置和方法。 提供xAcquire和xRelease指令来定义关键部分。 在一个实施例中,xAcquire指令包括具有检验前缀的锁定指令,并且xRelease指令包括具有检验前缀的锁定释放指令。 因此,处理器能够通过xAcquire和xRelease来删除锁定和事务性地执行在软件中定义的关键部分。 但是通过仅添加前缀提示,传统处理器能够通过忽略提示并执行传统的锁定关键部分来保证互斥,从而执行相同的代码。 此外,xBegin和xEnd在指令集架构(ISA)中类似地提供以定义事务代码区域。 此外,还在ISA中提供了其他控制推测指令,例如xAbort,以实现关键或事务代码段的显示中止,以及xTest测试推测执行状态。

    INSTRUCTION EMULATION PROCESSORS, METHODS, AND SYSTEMS

    公开(公告)号:US20140281398A1

    公开(公告)日:2014-09-18

    申请号:US13844873

    申请日:2013-03-16

    IPC分类号: G06F9/455

    摘要: A processor of an aspect includes decode logic to receive a first instruction and to determine that the first instruction is to be emulated. The processor also includes emulation mode aware post-decode instruction processor logic coupled with the decode logic. The emulation mode aware post-decode instruction processor logic is to process one or more control signals decoded from an instruction. The instruction is one of a set of one or more instructions used to emulate the first instruction. The one or more control signals are to be processed differently by the emulation mode aware post-decode instruction processor logic when in an emulation mode than when not in the emulation mode. Other apparatus are also disclosed as well as methods and systems.

    Method and apparatus for generating an advanced encryption standard (AES) key schedule
    28.
    发明授权
    Method and apparatus for generating an advanced encryption standard (AES) key schedule 有权
    用于生成高级加密标准(AES)密钥调度的方法和装置

    公开(公告)号:US08787565B2

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

    申请号:US11841556

    申请日:2007-08-20

    IPC分类号: H04K1/00 H04L9/00

    摘要: An Advanced Encryption Standard (AES) key generation assist instruction is provided. The AES key generation assist instruction assists in generating round keys used to perform AES encryption and decryption operations. The AES key generation instruction operates independent of the size of the cipher key and performs key generation operations in parallel on four 32-bit words thereby increasing the speed at which the round keys are generated. This instruction is easy to use in software. Hardware implementation of this instruction removes potential threats of software (cache access based) side channel attacks on this part of the AES algorithm.

    摘要翻译: 提供了高级加密标准(AES)密钥生成辅助指令。 AES密钥生成辅助指令有助于生成用于执行AES加密和解密操作的循环密钥。 AES密钥生成指令独立于密码密钥的大小,并行执行四个32位字的密钥生成操作,从而增加生成循环密钥的速度。 该指令在软件中易于使用。 该指令的硬件实现可以消除这部分AES算法对软件(基于缓存访问的)侧面信道攻击的潜在威胁。

    Instruction and Logic to Control Transfer in a Partial Binary Translation System
    30.
    发明申请
    Instruction and Logic to Control Transfer in a Partial Binary Translation System 有权
    控制部分二进制翻译系统传输的指令和逻辑

    公开(公告)号:US20130305019A1

    公开(公告)日:2013-11-14

    申请号:US13996352

    申请日:2011-09-30

    IPC分类号: G06F9/30

    摘要: A dynamic optimization of code for a processor-specific dynamic binary translation of hot code pages (e.g., frequently executed code pages) may be provided by a run-time translation layer. A method may be provided to use an instruction look-aside buffer (iTLB) to map original code pages and translated code pages. The method may comprise fetching an instruction from an original code page, determining whether the fetched instruction is a first instruction of a new code page and whether the original code page is deprecated. If both determinations return yes, the method may further comprise fetching a next instruction from a translated code page. If either determinations returns no, the method may further comprise decoding the instruction and fetching the next instruction from the original code page.

    摘要翻译: 可以由运行时转换层提供用于热代码页(例如,经常执行的代码页)的处理器特定的动态二进制转换的代码的动态优化。 可以提供一种方法来使用指令后备缓冲器(iTLB)来映射原始代码页和转换的代码页。 该方法可以包括从原始代码页获取指令,确定所提取的指令是否是新代码页的第一指令以及原始代码页是否已被弃用。 如果两个确定返回是,该方法还可以包括从转换的代码页获取下一个指令。 如果任一确定返回否,则该方法还可以包括解码指令并从原始代码页获取下一条指令。