Non-volatile random access memory power management using self-refresh commands
View Patent ↗For non-volatile random access memory (NVRAM) power management using self-refresh commands, a low-power module intercepts a memory self-refresh command and powers down an NVRAM in response to the memory self-refresh command. A resumption module intercepts a self-refresh exit command and powers up the NVRAM in response to the self-refresh exit command.
1. An apparatus comprising:
a low-power module that intercepts an enter self-refresh command communicated over a command bus to a Dynamic Random Access Memory (DRAM) and powers down a non-volatile random access memory (NVRAM) in response to the enter self-refresh command, wherein the NVRAM is magnetoresistive random-access memory (MRAM); and
a resumption module that intercepts an exit self-refresh command and powers up the NVRAM in response to the exit self-refresh command by energizing an NVRAM power bus, energizing an NVRAM clock, and energizing NVRAM read and sense lines.
2. The apparatus of claim 1 , wherein the enter self-refresh command is a low-power double data rate (LPDDR) enter self-refresh command.
3. The apparatus of claim 1 , wherein the exit self-refresh command is a LPDDR exit self-refresh command.
4. The apparatus of claim 1 , wherein the resumption module generates a power on command that energizes the NVRAM power bus.
5. The apparatus of claim 1 , wherein the resumption module further acknowledges the NVRAM is ready for access.
6. The apparatus of claim 1 , wherein the low-power module further generates a power off command that de-energizes an NVRAM power bus to power down the NVRAM.
7. A system comprising:
a processor;
a dynamic random access memory (DRAM) that stores code;
a memory controller that controls the DRAM;
a non-volatile random access memory (NVRAM) that stores code, wherein the NVRAM is magnetoresistive random-access memory (MRAM);
a low-power module that intercepts an enter self-refresh command communicated over a command bus from the memory controller to the DRAM and powers down the NVRAM in response to the enter self-refresh command; and
a resumption module that intercepts an exit self-refresh command from the memory controller to the DRAM and powers up the NVRAM in response to the exit self-refresh command by energizing an NVRAM power bus, energizing an NVRAM clock, and energizing NVRAM read and sense lines.
8. The system of claim 7 , wherein the enter self-refresh command is a low-power double data rate (LPDDR) enter self-refresh command.
9. The system of claim 7 , wherein the exit self-refresh command is a LPDDR exit self-refresh command.
10. The system of claim 7 , wherein the resumption module generates a power on command that energizes the NVRAM power bus.
11. The system of claim 7 , wherein the resumption module further acknowledges the NVRAM is ready for access.
12. The system of claim 7 , wherein the low-power module further generates a power off command that de-energizes an NVRAM power bus to power down the NVRAM.
13. A method comprising:
intercepting an enter self-refresh command communicated over a command bus to a Dynamic Random Access Memory (DRAM);
powering down a non-volatile random access memory (NVRAM) in response to the enter self-refresh command, wherein the NVRAM is magnetoresistive random-access memory (MRAM);
intercepting an exit self-refresh command; and
powering up the NVRAM in response to the exit self-refresh command by energizing an NVRAM power bus, energizing an NVRAM clock, and energizing NVRAM read and sense lines.
14. The method of claim 13 , wherein the enter self-refresh command is a low-power double data rate (LPDDR) enter self-refresh command.
15. The method of claim 13 , wherein the exit self-refresh command is a LPDDR exit self-refresh command.
16. The method of claim 13 , the method further acknowledging the NVRAM is ready for access.
17. The method of claim 13 , the method further generating a power off command that de-energizes an NVRAM power bus to power down the NVRAM.