-
公开(公告)号:US12099388B2
公开(公告)日:2024-09-24
申请号:US17130686
申请日:2020-12-22
Applicant: Intel Corporation
Inventor: Sreenivas Mandava , Anders Fogh
CPC classification number: G06F1/206 , G06F12/023 , G06F13/1668 , G06F2212/1032
Abstract: A probabilistic scheme that uses temperature to reload an LFSR at runtime introduces randomness to prevent row hammer attacks. In one example, a memory controller includes input/output (I/O) interface circuitry to receive memory access requests from a processor. A linear feedback shift register (LFSR) in the memory controller is shifted in response to receipt of a memory access request to a target address. The shift register is compared a value in the LFSR with a pre-determined value. If the value in the LFSR is equal to the predetermined value, a refresh is triggered to one or more neighboring addresses of the target address. The LFSR is reloaded with one of multiple seeds based on a temperature (for example, from an on-die thermal sensor, a DIMM sensor, and/or other temperature). Selecting one of multiple seeds based on temperature on the fly makes the scheme unpredictable and robust against row hammer.
-
公开(公告)号:US20230418934A1
公开(公告)日:2023-12-28
申请号:US17849351
申请日:2022-06-24
Applicant: Intel Corporation
Inventor: Scott D. Constable , Joao Batista Correa Gomes Moreira , Alyssa A. Milburn , Ke Sun , Michael LeMay , David M. Durham , Joseph Nuzman , Jason W. Brandt , Anders Fogh
CPC classification number: G06F21/54 , G06F21/51 , G06F2221/033
Abstract: In one embodiment, an indirect branch is detected in computer program code. The indirect branch calls one of a plurality of functions using a first register. In response, the computer program code is augmented to store an identifier of the indirect branch call in a second register, and the code for each of the plurality of functions is augmented to: determine whether an identifier for the function matches the identifier stored in the second register and render the first register unusable if the identifier for the function does not match the identifier stored in the second register.
-