-
公开(公告)号:US12238217B2
公开(公告)日:2025-02-25
申请号:US18589125
申请日:2024-02-27
Applicant: Intel Corporation
Inventor: Jason W. Brandt
Abstract: Systems, methods, and apparatuses relating to circuitry to implement an instruction to create and/or use data that is restricted in how it can be used are described. In one embodiment, a hardware processor comprises a decoder of a core to decode a single instruction into a decoded single instruction, the single instruction comprising a first input operand of a handle including a ciphertext of an encryption key (e.g., cryptographic key), an authentication tag, and additional authentication data, and a second input operand of data encrypted with the encryption key, and an execution unit of the core to execute the decoded single instruction to: perform a first check of the authentication tag against the ciphertext and the additional authentication data for any modification to the ciphertext or the additional authentication data, perform a second check of a current request of the core against one or more restrictions specified by the additional authentication data of the handle, decrypt the ciphertext to generate the encryption key only when the first check indicates no modification to the ciphertext or the additional authentication data, and the second check indicates the one or more restrictions are not violated, decrypt the data encrypted with the encryption key to generate unencrypted data, and provide the unencrypted data as a resultant of the single instruction.
-
公开(公告)号:US20240427728A1
公开(公告)日:2024-12-26
申请号:US18670721
申请日:2024-05-21
Applicant: Intel Corporation
Inventor: Vedvyas Shanbhogue , Stephen J. Robinson , Christopher D. Bryant , Jason W. Brandt
Abstract: A processor includes a widest set of data registers that corresponds to a given logical processor. Each of the data registers of the widest set have a first width in bits. A decode unit that corresponds to the given logical processor is to decode instructions that specify the data registers of the widest set, and is to decode an atomic store to memory instruction. The atomic store to memory instruction is to indicate data that is to have a second width in bits that is wider than the first width in bits. The atomic store to memory instruction is to indicate memory address information associated with a memory location. An execution unit is coupled with the decode unit. The execution unit, in response to the atomic store to memory instruction, is to atomically store the indicated data to the memory location.
-
公开(公告)号:US12135780B2
公开(公告)日:2024-11-05
申请号:US18232810
申请日:2023-08-10
Applicant: Intel Corporation
Inventor: Vedvyas Shanbhogue , Jason W. Brandt , Ravi L. Sahita , Barry E. Huntley , Baiju V. Patel , Deepak K. Gupta
Abstract: A processor implementing techniques for processor extensions to protect stacks during ring transitions is provided. In one embodiment, the processor includes a plurality of registers and a processor core, operatively coupled to the plurality of registers. The plurality of registers is used to store data used in privilege level transitions. Each register of the plurality of registers is associated with a privilege level. An indicator to change a first privilege level of a currently active application to a second privilege level is received. In view of the second privilege level, a shadow stack pointer (SSP) stored in a register of the plurality of registers is selected. The register is associated with the second privilege level. By using the SSP, a shadow stack for use by the processor at the second privilege level is identified.
-
公开(公告)号:US12020031B2
公开(公告)日:2024-06-25
申请号:US17334901
申请日:2021-05-31
Applicant: Intel Corporation
Inventor: Michael Mishaeli , Jason W. Brandt , Gilbert Neiger , Asit K. Mallick , Rajesh M. Sankaran , Raghunandan Makaram , Benjamin C. Chaffin , James B. Crossland , H. Peter Anvin
CPC classification number: G06F9/3009 , G06F9/3004 , G06F9/30076 , G06F9/3851 , G06F9/485 , G06F13/4068
Abstract: A processor of an aspect includes a decode unit to decode a user-level suspend thread instruction that is to indicate a first alternate state. The processor also includes an execution unit coupled with the decode unit. The execution unit is to perform the instruction at a user privilege level. The execution unit in response to the instruction, is to: (a) suspend execution of a user-level thread, from which the instruction is to have been received; (b) transition a logical processor, on which the user-level thread was to have been running, to the indicated first alternate state; and (c) resume the execution of the user-level thread, when the logical processor is in the indicated first alternate state, with a latency that is to be less than half a latency that execution of a thread can be resumed when the logical processor is in a halt processor power state.
-
5.
公开(公告)号:US11966742B2
公开(公告)日:2024-04-23
申请号:US18311810
申请日:2023-05-03
Applicant: Intel Corporation
Inventor: Eliezer Weissmann , Mark Charney , Michael Mishaeli , Robert Valentine , Itai Ravid , Jason W. Brandt , Gilbert Neiger , Baruch Chaikin , Efraim Rotem
CPC classification number: G06F9/3851 , G06F9/30043 , G06F9/30076 , G06F9/30101 , G06F9/3836 , G06F9/3842
Abstract: Systems, methods, and apparatuses relating to instructions to reset software thread runtime property histories in a hardware processor are described. In one embodiment, a hardware processor includes a hardware guide scheduler comprising a plurality of software thread runtime property histories; a decoder to decode a single instruction into a decoded single instruction, the single instruction having a field that identifies a model-specific register; and an execution circuit to execute the decoded single instruction to check that an enable bit of the model-specific register is set, and when the enable bit is set, to reset the plurality of software thread runtime property histories of the hardware guide scheduler.
-
公开(公告)号:US11650818B2
公开(公告)日:2023-05-16
申请号:US17404890
申请日:2021-08-17
Applicant: Intel Corporation
Inventor: Vedvyas Shanbhogue , Jason W. Brandt , Ravi L. Sahita , Xiaoning Li
CPC classification number: G06F9/3005 , G06F9/30054 , G06F9/30145 , G06F9/3857 , G06F9/3861 , G06F9/3865 , G06F9/3867 , G06F21/554
Abstract: A processor includes an execution unit and a processing logic operatively coupled to the execution unit, the processing logic to: enter a first execution state and transition to a second execution state responsive to executing a control transfer instruction. Responsive to executing a target instruction of the control transfer instruction, the processing logic further transitions to the first execution state responsive to the target instruction being a control transfer termination instruction of a mode identical to a mode of the processing logic following the execution of the control transfer instruction; and raises an execution exception responsive to the target instruction being a control transfer termination instruction of a mode different than the mode of the processing logic following the execution of the control transfer instruction.
-
公开(公告)号:US20230092268A1
公开(公告)日:2023-03-23
申请号:US17992407
申请日:2022-11-22
Applicant: Intel Corporation
Inventor: Michael W. Chynoweth , Jonathan D. Combs , Joseph K. Olivas , Beeman C. Strong , Rajshree A. Chabukswar , Ahmad Yasin , Jason W. Brandt , Ofer Levy , John M. Esper , Andreas Kleen , Christopher M. Chrulski
IPC: G06F9/30
Abstract: A processor includes a counter to store a cycle count that tracks a number of cycles between retirement of a first branch instruction and retirement of a second branch instruction during execution of a set of instructions. The processor further includes a stack of registers coupled to the counter, wherein the stack of registers is to store branch type information including: a first value of the counter when the first branch instruction is retired; a second value of the counter when the second branch instruction is retired; a first type information value indicating a type of the first branch instruction; and a second type information value indicating a type of the second branch instruction.
-
公开(公告)号:US20220413859A1
公开(公告)日:2022-12-29
申请号:US17358082
申请日:2021-06-25
Applicant: Intel Corporation
Inventor: Kameswar Subramaniam , Jason W. Brandt , H. Peter Anvin , Christopher M. Russell , Gilbert Neiger
Abstract: In one embodiment, a processor includes: a front end circuit to fetch and decode a read list instruction, the read list instruction to cause storage to a memory of a software-provided list of processor state information; and an execution circuit coupled to the front end circuit. The execution circuit, in response to the decoded read list instruction, is to read the processor state information stored in the processor and store each datum of the processor state information into an entry of a data table in the memory. Other embodiments are described and claimed.
-
公开(公告)号:US20220335126A1
公开(公告)日:2022-10-20
申请号:US17590470
申请日:2022-02-01
Applicant: Intel Corporation
Inventor: Robert S. Chappell , Jared W. Stark, IV , Joseph Nuzman , Stephen Robinson , Jason W. Brandt
IPC: G06F21/55 , G06F21/62 , G06F9/48 , G06F12/0802 , G06F9/30
Abstract: Systems, methods, and apparatuses relating to microarchitectural mechanisms for the prevention of side-channel attacks are disclosed herein. In one embodiment, a processor includes a core having a plurality of physical contexts to execute a plurality of threads, a plurality of structures shared by the plurality of threads, a context mapping structure to map context signatures to respective physical contexts of the plurality of physical contexts, each physical context to identify and differentiate state of the plurality of structures, and a context manager circuit to, when one or more of a plurality of fields that comprise a context signature is changed, search the context mapping structure for a match to another context signature, and when the match is found, a physical context associated with the match is set as an active physical context for the core.
-
10.
公开(公告)号:US11416624B2
公开(公告)日:2022-08-16
申请号:US16722707
申请日:2019-12-20
Applicant: Intel Corporation
Inventor: David M. Durham , Michael LeMay , Ramya Jayaram Masti , Gilbert Neiger , Jason W. Brandt
IPC: G06F21/60 , G06F9/30 , G06F21/72 , G06F21/79 , G06F21/12 , H04L9/08 , G06F12/14 , H04L9/14 , G06F21/62 , G06F12/0897 , G06F9/48 , H04L9/06 , G06F12/06 , G06F12/0875 , G06F12/0811 , G06F9/32 , G06F9/50 , G06F12/02 , G06F9/455
Abstract: Technologies disclosed herein provide cryptographic computing with cryptographically encoded pointers in multi-tenant environments. An example method comprises executing, by a trusted runtime, first instructions to generate a first address key for a private memory region in the memory and generate a first cryptographically encoded pointer to the private memory region in the memory. Generating the first cryptographically encoded pointer includes storing first context information associated with the private memory region in first bits of the first cryptographically encoded pointer and performing a cryptographic algorithm on a slice of a first linear address of the private memory region based, at least in part, on the first address key and a first tweak, the first tweak including the first context information. The method further includes permitting a first tenant in the multi-tenant environment to access the first address key and the first cryptographically encoded pointer to the private memory region.
-
-
-
-
-
-
-
-
-