-
公开(公告)号:US20210034544A1
公开(公告)日:2021-02-04
申请号:US16813346
申请日:2020-03-09
Applicant: INTEL CORPORATION
Inventor: Stanislav Shwartsman , Igor Yanover , Assaf Zaltsman , Ron Rais
IPC: G06F12/1027 , G06F9/30
Abstract: Systems, methods, and apparatuses relating to hardware for split data translation lookaside buffers. In one embodiment, a processor includes a decode circuit to decode instructions into decoded instructions, an execution circuit to execute the decoded instructions, and a memory circuit comprising a load data translation lookaside buffer circuit and a store data translation lookaside buffer circuit separate and distinct from the load data translation lookaside buffer circuit, wherein the memory circuit sends a memory access request of the instructions to the load data translation lookaside buffer circuit when the memory access request is a load data request and to the store data translation lookaside buffer circuit when the memory access request is a store data request to determine a physical address for a virtual address of the memory access request.
-
公开(公告)号:US11461244B2
公开(公告)日:2022-10-04
申请号:US16227386
申请日:2018-12-20
Applicant: Intel Corporation
Inventor: Ido Ouziel , Arie Aharon , Dror Caspi , Baruch Chaikin , Jacob Doweck , Gideon Gerzon , Barry E. Huntley , Francis X. McKeen , Gilbert Neiger , Carlos V. Rozas , Ravi L. Sahita , Vedvyas Shanbhogue , Assaf Zaltsman , Hormuzd M. Khosravi
IPC: G06F11/30 , G06F12/14 , G06F9/455 , G06F11/07 , G06F12/02 , G06F12/0817 , G06F21/53 , G06F21/57 , G06F21/60 , G06F21/79
Abstract: Implementations described provide hardware support for the co-existence of restricted and non-restricted encryption keys on a computing system. Such hardware support may comprise a processor having a core, a hardware register to store a bit range to identify a number of bits, of physical memory addresses, that define key identifiers (IDs) and a partition key ID identifying a boundary between non-restricted and restricted key IDs. The core may allocate at least one of the non-restricted key IDs to a software program, such as a hypervisor. The core may further allocate a restricted key ID to a trust domain whose trust computing base does not comprise the software program. A memory controller coupled to the core may allocate a physical page of a memory to the trust domain, wherein data of the physical page of the memory is to be encrypted with an encryption key associated with the restricted key ID.
-
公开(公告)号:US11139967B2
公开(公告)日:2021-10-05
申请号:US16228002
申请日:2018-12-20
Applicant: Intel Corporation
Inventor: Ido Ouziel , Arie Aharon , Dror Caspi , Baruch Chaikin , Jacob Doweck , Gideon Gerzon , Barry E. Huntley , Francis X. Mckeen , Gilbert Neiger , Carlos V. Rozas , Ravi L. Sahita , Vedvyas Shanbhogue , Assaf Zaltsman
IPC: H04L9/08 , G06F9/455 , G06F12/1009 , G06F21/60 , G06F21/62
Abstract: A processor includes a processor core. A register of the core is to store: a bit range for a number of address bits of physical memory addresses used for key identifiers (IDs), and a first key ID to identify a boundary between non-restricted key IDs and restricted key IDs of the key identifiers. A memory controller is to: determine, via access to bit range and the first key ID in the register, a key ID range of the restricted key IDs within the physical memory addresses; access a processor state that a first logical processor of the processor core executes in an untrusted domain mode; receive a memory transaction, from the first logical processor, including an address associated with a second key ID; and generate a fault in response to a determination that the second key ID is within a key ID range of the restricted key IDs.
-
公开(公告)号:US12021980B2
公开(公告)日:2024-06-25
申请号:US17465311
申请日:2021-09-02
Applicant: Intel Corporation
Inventor: Ido Ouziel , Arie Aharon , Dror Caspi , Baruch Chaikin , Jacob Doweck , Gideon Gerzon , Barry E. Huntley , Francis X. McKeen , Gilbert Neiger , Carlos V. Rozas , Ravi L. Sahita , Vedvyas Shanbhogue , Assaf Zaltsman
IPC: H04L9/08 , G06F9/455 , G06F12/1009 , G06F21/60 , G06F21/62
CPC classification number: H04L9/088 , G06F9/45558 , G06F12/1009 , G06F21/602 , G06F21/62 , G06F2009/45583 , G06F2009/45587 , G06F2212/1044 , G06F2212/657
Abstract: A processor includes a processor core. A register of the core is to store: a bit range for a number of address bits of physical memory addresses used for key identifiers (IDs), and a first key ID to identify a boundary between non-restricted key IDs and restricted key IDs of the key identifiers. A memory controller is to: determine, via access to bit range and the first key ID in the register, a key ID range of the restricted key IDs within the physical memory addresses; access a processor state that a first logical processor of the processor core executes in an untrusted domain mode; receive a memory transaction, from the first logical processor, including an address associated with a second key ID; and generate a fault in response to a determination that the second key ID is within a key ID range of the restricted key IDs.
-
公开(公告)号:US11580031B2
公开(公告)日:2023-02-14
申请号:US16813346
申请日:2020-03-09
Applicant: INTEL CORPORATION
Inventor: Stanislav Shwartsman , Igor Yanover , Assaf Zaltsman , Ron Rais
IPC: G06F12/1027 , G06F9/30
Abstract: Systems, methods, and apparatuses relating to hardware for split data translation lookaside buffers. In one embodiment, a processor includes a decode circuit to decode instructions into decoded instructions, an execution circuit to execute the decoded instructions, and a memory circuit comprising a load data translation lookaside buffer circuit and a store data translation lookaside buffer circuit separate and distinct from the load data translation lookaside buffer circuit, wherein the memory circuit sends a memory access request of the instructions to the load data translation lookaside buffer circuit when the memory access request is a load data request and to the store data translation lookaside buffer circuit when the memory access request is a store data request to determine a physical address for a virtual address of the memory access request.
-
-
-
-