IP Library › Granted Patent US 10,332,582
Granted Patent B2
US 10,332,582 · App. 15/667,618 · Granted Jun 25, 2019

Partial refresh technique to save memory refresh power

Inventors: Jungwon Suh (San Diego, CA); Yanru Li (San Diego, CA); Michael Hawjing Lo (San Diego, CA); Dexter Tamio Chun (San Diego, CA)
Assignee: QUALCOMM Incorporated
G11C11/40622G11C7/1006G11C7/1045G11C2211/406
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 10,332,582
App. No.
15/667,618
Granted
Jun 25, 2019
Kind
B2
Abstract

In a conventional memory subsystem, a memory controller issues explicit refresh commands to a DRAM memory device to maintain integrity of the data stored in the memory device when the memory device is in an auto-refresh mode. A significant amount of power may be consumed to carry out the refresh. To address this and other issues, it is proposed to allow a partial refresh in the auto-refresh mode in which the refreshing operation may be skipped for a subset of the memory cells. Through such selective refresh skipping, the power consumed for auto-refreshes may be reduced. Operating system kernels and memory drivers may be configured to determine areas of memory for which the refreshing operation can be skipped.

Claims (111)

1. An apparatus, comprising:

a memory device, comprising:

a plurality of memory cells; and

a partial array refresh (PAR) mask register,

wherein when a partial array auto-refresh (PAAR) is enabled, the memory device is configured to mask a portion of the plurality of memory cells from being refreshed based on the PAR mask register upon the memory device receiving a refresh (REF) command.

2. The apparatus of claim 1 , further comprising a system-on-chip (SOC) configured to provide commands to the memory device over a link.

3. The apparatus of claim 2 ,

wherein the apparatus comprises a device selected from a group consisting of a music player, a video player, an entertainment unit, a navigation device, a communications device, a mobile device, a mobile phone, a smartphone, a personal digital assistant, a fixed location terminal, a tablet computer, a computer, a wearable device, a laptop computer, a server, and a device in an automotive vehicle, and

wherein the device incorporates the memory device and the SoC configured to communicate with each other over the link.

4. The apparatus of claim 3 , wherein the REF command comprises a refresh-per-bank command or a refresh-all-banks command.

5. The apparatus of claim 3 ,

wherein the memory device further comprises an input/output (I/O) circuit configured to interface with the SOC over the link, and write data to and read data from the plurality of memory cells; and

wherein memory device is configured to refresh a subset of the memory cells selected in accordance with the PAR mask register without the I/O circuit receiving the REF commands from the SOC when the memory device is in a self-refresh mode and a partial array self-refresh (PASR) and the PARR are enabled, and

wherein the memory device is configured to refresh the subset of the memory cells selected in accordance with the PAR mask register upon the I/O circuit receiving the REF command from the SOC when the PAAR is enabled.

6. The apparatus of claim 5 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein when the PAAR is enabled and the REF command is a refresh-per-bank command, the memory device is configured to skip refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled.

7. The apparatus of claim 5 ,

wherein the plurality of memory cells is partitioned into a plurality of banks,

wherein the PAR mask register comprises a plurality of bank mask bits, each bank mask bit corresponding to a bank and indicating whether a refresh is enabled or disabled for the corresponding bank, and

wherein when the PAAR is enabled and the REF command is a refresh-per-bank command, the memory device is configured to skip the refreshing of a current bank when the corresponding bank mask bit indicates that the refresh is disabled.

8. The apparatus of claim 5 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein when the PAAR is enabled and the REF command is a refresh-all-banks command, the memory device is configured to, for each bank, skip refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled.

9. The apparatus of claim 5 ,

wherein the plurality of memory cells is partitioned into a plurality of banks,

wherein the PAR mask register comprises a plurality of bank mask bits, each bank mask bit corresponding to a bank and indicating whether a refresh is enabled or disabled for the corresponding bank, and

wherein when the PAAR is enabled and the REF command is a refresh-all-banks command, the memory device is configured to skip the refreshing of each bank whose corresponding bank mask bit indicates that the refresh is disabled.

10. The apparatus of claim 5 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register includes a plurality of bank mask bits and a plurality of segment mask bits, each bank mask bit corresponding to a bank and indicating whether a refresh is enabled or disabled for the corresponding bank, and each segment mask bit corresponding to a segment and indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein when the memory device is in the self-refresh mode and the PASR is enabled, the memory device is configured to

skip refreshing of each bank whose corresponding bank mask bit indicates that the refresh is disabled for that bank, and

for each bank whose corresponding bank mask bit indicates that the refresh is enabled for that bank, skip refreshing each segment whose corresponding segment mask bit indicates that the refresh is disabled.

11. An apparatus, comprising:

a system-on-chip (SOC) configured to communicate with a memory device over a link,

wherein the memory device comprises:

a plurality of memory cells; and

a partial array refresh (PAR) mask register,

wherein the SOC is configured to instruct the memory device to enter into a self-refresh mode to cause the memory device to refresh a subset of the memory cells selected in accordance with the PAR mask register without receiving refresh (REF) commands from the SOC when a partial array self-refresh (PASR) is enabled, and

wherein the SOC is configured to issue the REF command to the memory device to cause the memory device to refresh the subset of the memory cells selected in accordance with the PAR mask register when a partial array auto-refresh (PAAR) is enabled.

12. The apparatus of claim 11 , wherein the memory device comprises a plurality of mode registers (MR), the MR comprising the PAR mask register and a plurality of enable bits including a PASR enable bit and a PAAR enable bit, the PASR enable bit indicating whether the PASR is enabled or disabled, and the PAAR enable bit indicating whether the PAAR is enabled or disabled.

13. The apparatus of claim 12 , wherein the SOC is configured to

issue a mode register write (MRW) command with a corresponding mode value of the PAAR enable bit to the memory device, and

for each mode register used to implement the PAR mask register, issue the MRW command with the corresponding mode value to the memory device so as to cause a mask value to be written to the PAR mask register, the mask value indicating a refresh skip region comprising one or more portions of the plurality of memory cells that do not require refreshing.

14. The apparatus of claim 13 , wherein the SOC is configured to

receive the refresh skip region from a memory driver of a computing system, and

issue the MRW commands to set the PAAR enable bit and to set the mask value indicating the refresh skip region subsequent to receiving the refresh skip region from the memory driver.

15. The apparatus of claim 13 , wherein the SOC is configured to adjust a duration in between issuing successive REF commands to the memory device based on the refresh skip region.

16. The apparatus of claim 11 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein when the PAAR is enabled, the REF command issued by the SOC is a refresh-per-bank command to cause the memory device to skip refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled.

17. The apparatus of claim 11 ,

wherein the plurality of memory cells is partitioned into a plurality of banks,

wherein the PAR mask register comprises a plurality of bank mask bits, each bank mask bit corresponding to a bank and indicating whether a refresh is enabled or disabled for the corresponding bank, and

wherein when the PAAR is enabled, the REF command issued by the SOC is a refresh-per-bank command to cause the memory device to skip the refreshing of a current bank when the corresponding bank mask bit indicates that the refresh is disabled.

18. The apparatus of claim 11 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment and indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein when the PAAR is enabled, the REF command issued by the SOC is a refresh-all-banks command to cause the memory device to, for each bank, skip refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled.

19. The apparatus of claim 11 ,

wherein the plurality of memory cells is partitioned into a plurality of banks,

wherein the PAR mask register comprises a plurality of bank mask bits, each bank mask bit corresponding to a bank and indicating whether a refresh is enabled or disabled for the corresponding bank, and

wherein when the PAAR is enabled, the REF command issued by the SOC is a refresh-all-banks command to cause the memory device to skip the refreshing of each bank whose corresponding bank mask bit indicates that the refresh is disabled.

20. The apparatus of claim 11 ,

wherein the apparatus comprises a device selected from a group consisting of a music player, a video player, an entertainment unit, a navigation device, a communications device, a mobile device, a mobile phone, a smartphone, a personal digital assistant, a fixed location terminal, a tablet computer, a computer, a wearable device, a laptop computer, a server, and a device in an automotive vehicle, and

wherein the device incorporates the memory device and the SoC configured to communicate with each other over the link.

21. A method for reducing memory power consumption in an apparatus of a computing system,

wherein the apparatus comprises a system-on-chip (SOC) and a memory device configured to communicate with each other over a link,

wherein the memory device comprises:

a plurality of memory cells; and

a plurality of mode registers (MR) comprising a PAR mask register, a partial array self-refresh (PASR) enable bit, and a partial array auto-refresh (PAAR) enable bit, the PASR enable bit indicating whether PASR is enabled or disabled, and the PAAR enable bit indicating whether PAAR is enabled or disabled, and

wherein the method comprises:

issuing, by the SOC, a mode register write (MRW) command with a corresponding mode value of the PAAR enable bit to the memory device;

issuing, by the SOC, for each mode register used to implement the PAR mask register, a mode register write (MRW) command with a corresponding mode value to the memory device so as to cause a mask value to be written to the PAR mask register, the mask value corresponding to a refresh skip region;

issuing, by the SOC, a REF command to the memory device; and

skipping, by the memory device, refreshing of the refresh skip region based on the PAR mask register when the REF command is issued by the SOC and the PAAR enable bit is set.

22. The method of claim 21 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment and indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein the skipping the refreshing comprises skipping the refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled when the REF command is a refresh-per-bank command and the PAAR enable bit is set.

23. The method of claim 21 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein the skipping the refreshing comprises, for each bank, skipping the refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled when the REF command is a refresh-all-banks command and the PAAR enable bit is set.

24. An apparatus, comprising:

a system-on-chip (SOC) and a memory device configured to communicate with each other over a link,

wherein the SOC is configured to provide commands to the memory device over the link,

wherein the memory device comprises:

a plurality of memory cells;

a partial array refresh (PAR) mask register; and

means for refreshing,

wherein the means for refreshing refreshes a subset of the memory cells selected in accordance with the PAR mask register without receiving refresh (REF) commands from the SOC when the memory device is in a self-refresh mode and a partial array self-refresh (PASR) is enabled, and

wherein the means for refreshing refreshes the subset of the memory cells selected in accordance with the PAR mask register upon receiving the REF command from the SOC when a partial array auto-refresh (PAAR) is enabled.

25. The apparatus of claim 24 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein when the PAAR is enabled and the REF command is a refresh-per-bank command, the means for refreshing skips refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled.

26. The apparatus of claim 24 ,

wherein the plurality of memory cells is partitioned into a plurality of banks, each bank comprising a plurality of segments,

wherein the PAR mask register comprises a plurality of segment mask bits, each segment mask bit corresponding to a segment indicating whether a refresh is enabled or disabled for the corresponding segment, and

wherein when the PAAR is enabled and the REF command is a refresh-all-banks command, the means for refreshing, for each bank, skips the refreshing of each segment whose corresponding segment mask bit indicates that the refresh is disabled.

27. An apparatus, comprising:

a system-on-chip (SOC) configured to communicate with a memory device over a link,

wherein the memory device comprises: and

a plurality of memory cells; and

a partial array refresh (PAR) mask register,

wherein the SOC is configured to issue a refresh (REF) command to the memory device over the link to cause the memory device to refresh a subset of the memory cells selected in accordance with the PAR mask register when a partial array auto-refresh (PAAR) is enabled on the memory device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 3, 2017
From: SUH, JUNGWON; LI, YANRU; LO, MICHAEL HAWJING; CHUN, DEXTER TAMIO
To: QUALCOMM INCORPORATED
Reel/Frame 043764/0569 →
Continuity (1)
Related Publication 20190043558A1 · Feb 7, 2019
Cited By (2)
US 12,346,567 US 12,461,857