IP Library › Granted Patent US 11,990,172
Granted Patent B2
US 11,990,172 · App. 18/213,231 · Granted May 21, 2024

Refresh command control for host assist of row hammer mitigation

Inventors: Bill Nale (Livermore, CA); Christopher E. Cox (Placerville, CA)
Assignee: Intel Corporation
G11C11/40611G06F3/0619G06F3/0659G06F3/0673G11C11/4096G11C11/40618
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,990,172
App. No.
18/213,231
Granted
May 21, 2024
Kind
B2
Abstract

A memory device with internal row hammer mitigation couples to a memory controller. The memory controller or host can assist with row hammer mitigation by sending additional refresh cycles or refresh commands. In response to an extra refresh command the memory device can perform refresh for row hammer mitigation instead of refresh for standard data integrity. The memory controller can keep track of the number of activate commands sent to the memory device, and in response to a threshold number of activate commands, the memory controller sends the additional refresh command. With the extra refresh command the memory device can refresh the potential victim rows of a potential aggressor row, instead of simply refreshing a row that has not been accessed for a period of time.

Claims (35)

1. A dynamic random access memory (DRAM) device, comprising:

rows of memory to be refreshed during normal operation; and

input/output (I/O) hardware to receive an additional refresh command in a period of high access to the rows of memory as indicated by a count of activate commands received, the additional refresh command to be in excess of a number of refresh commands necessary to refresh the rows of memory within a refresh window, the additional refresh command to provide additional refresh time during the refresh window for the DRAM device to manage refresh internally, including the DRAM device to internally indicate an address for refresh.

2. The DRAM device of claim 1 , wherein the I/O hardware is to receive the additional refresh command in response to a threshold number of activate commands per bank.

3. The DRAM device of claim 1 , wherein the I/O hardware is to receive the additional refresh command in response to a threshold number of activate commands within a sliding time window.

4. The DRAM device of claim 3 , wherein receipt of each activate command increases a count and an amount of time decreases the count.

5. The DRAM device of claim 1 , wherein the additional refresh command comprises a refresh command with a tag to indicate that it is for row hammer refresh.

6. The DRAM device of claim 5 , wherein the tag comprises an unused bit of a refresh command encoding.

7. The DRAM device of claim 1 , further comprising:

a counter in the DRAM device to track receipt of the activate commands.

8. A memory controller, comprising:

a buffer to queue commands to send to a dynamic random access memory (DRAM) device having multiple rows of memory; and

input/output (I/O) hardware to send an additional refresh command in response to sending a threshold number of activate commands to the DRAM device, the additional refresh command to be in excess of a number of refresh commands necessary to refresh the multiple rows of memory within a refresh window, the additional refresh command to provide additional refresh time during the refresh window for the DRAM device to manage refresh internally, including the DRAM device to internally indicate an address for refresh.

9. The memory controller of claim 8 , wherein the threshold number comprises a number of activate commands per bank.

10. The memory controller of claim 8 , wherein the threshold number of activate commands comprises a threshold number of activate commands within a sliding time window.

11. The memory controller of claim 8 , wherein the additional refresh command comprises a refresh command with a tag to indicate that it is for row hammer refresh.

12. The memory controller of claim 8 , further comprising:

a counter in the memory controller to track receipt of the activate commands.

13. A system, comprising:

a memory controller; and

a dynamic random access memory (DRAM) device coupled to the memory controller, the DRAM device including:

rows of memory to be refreshed during normal operation; and

input/output (I/O) hardware to receive an additional refresh command in a period of high access to the rows of memory as indicated by a count of activate commands received, the additional refresh command to be in excess of a number of refresh commands necessary to refresh the rows of memory within a refresh window, the additional refresh command to provide additional refresh time during the refresh window for the DRAM device to manage refresh internally, including the DRAM device to internally indicate an address for refresh.

14. The system of claim 13 , wherein the I/O hardware is to receive the additional refresh command in response to a threshold number of activate commands per bank.

15. The system of claim 13 , wherein the I/O hardware is to receive the additional refresh command in response to a threshold number of activate commands within a sliding time window.

16. The system of claim 15 , wherein receipt of each activate command increases a count and an amount of time decreases the count.

17. The system of claim 13 , wherein the additional refresh command comprises a refresh command with a tag to indicate that it is for row hammer refresh.

18. The system of claim 17 , wherein the tag comprises an unused bit of a refresh command encoding.

19. The system of claim 13 , further comprising:

a counter to track receipt of the activate commands.

20. The system of claim 13 , further comprising one or more of:

a host processor device coupled to the memory controller;

a display communicatively coupled to a host processor;

a network interface communicatively coupled to a host processor; or

a battery to power the system.

Continuity (4)
Continuation 17686287 · Mar 3, 2022
Continuation 17157826 · Jan 25, 2021
Division 16370578 · Mar 29, 2019
Related Publication 20230386548A1 · Nov 30, 2023