IP Library Granted Patent US 8,645,738
Granted Patent B2
US 8,645,738 · App. 12/606,842 · Granted Feb 4, 2014

Nonvolatile device

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 8,645,738
App. No.
12/606,842
Granted
Feb 4, 2014
Kind
B2
Abstract

Apparatuses and methods may include receiving a power-down command at a first subsystem comprising a first processor, a first volatile memory, a first nonvolatile memory, a first compressor/decompressor, and a first power control circuit, the first volatile memory being configured to store state data relating to operating conditions of the first subsystem. In response to receipt of the power-down command, the apparatuses and methods may cause the first compressor/decompressor to compress the state data to generate compressed state data and to cause the compressed state data to be stored in the first nonvolatile memory. In response to storage of the compressed state data in the first nonvolatile memory, the apparatuses and methods may cause the first power control circuit to power down the first subsystem.

Claims (53)

1. An apparatus comprising:

a first subsystem comprising a first processor, a first volatile memory, a first nonvolatile memory, a first compressor/decompressor, and a first power control circuit; and

a second processor coupled to the first subsystem, wherein the second processor is configured to determine that the first subsystem is not needed, generate a first power-down command and communicate the first power-down command to the first subsystem;

wherein the first processor is configured to:

upon receipt of the first power-down command, cause:

the first compressor/decompressor to compress state data retrieved from the first volatile memory to generate compressed state data, wherein the state data relates to operating conditions of the first subsystem,

the first nonvolatile memory to store the compressed state data, and

the first power control circuit to power down the first subsystem,

wherein the first subsystem is configured to communicate a second power-down command to a second subsystem.

2. The apparatus of claim 1 , wherein the first processor is further configured to:

upon receiving a power-up command from the second processor:

cause the first compressor/decompressor to decompress the compressed state data stored in the first nonvolatile memory, and

cause the decompressed state data to be stored in the first volatile memory.

3. The apparatus of claim 2 , wherein the first subsystem is configured to perform a computation task using the decompressed state data after storage in the first volatile memory.

4. The apparatus of claim 1 , wherein the first subsystem is configured to:

perform a task that changes the state data; and

communicate, to the second subsystem, a change message identifying the change in the state data, wherein the second subsystem comprises a third processor, a second volatile memory, a second nonvolatile memory, a second compressor/decompressor, and a second power control circuit.

5. The apparatus of claim 1 , wherein the first nonvolatile memory is a spintronic memory.

6. The apparatus of claim 1 , wherein the second processor is configured to monitor an activity level of the first subsystem, and wherein the second processor is configured to generate the first power-down command in response to the activity level falling below a threshold activity level.

7. A method comprising:

storing, in a first volatile memory, state data relating to operating conditions of a first subsystem, wherein the first subsystem comprises a first processor, a first nonvolatile memory, a first compressor/decompressor, a first power control circuit, and the first volatile memory;

receiving a first power-down command at the first subsystem;

in response to receipt of the first power-down command:

compressing the state data using the first compressor/decompressor, resulting in compressed state data, and

storing the compressed state data in the first nonvolatile memory;

in response to storage of the compressed state data in the first nonvolatile memory, powering down the first subsystem using the first power control circuit; and

communicating, by the first subsystem, a second power-down command to a second subsystem.

8. The method of claim 7 , further comprising:

receiving a power-up command; and

in response to the power-up command, decompressing, using the first compressor/decompressor, the compressed state data stored in the first nonvolatile memory and storing, in the first volatile memory, the decompressed state data.

9. The method of claim 8 , further comprising performing, by the first subsystem, a computation task using the decompressed state data after storage in the first volatile memory.

10. The method of claim 7 , further comprising:

performing, by the first subsystem, a task that changes the state data; and

communicating, to the second subsystem, a change message identifying the change in the state data.

11. The method of claim 7 , further comprising monitoring an activity level of the first subsystem and generating the first power-down command in response to the activity level falling below a threshold activity level.

12. A non-transitory computer-readable medium storing computer-executable instructions that, when executed, cause an apparatus at least to:

store, in a first volatile memory, state data relating to operating conditions of a first subsystem, wherein the first subsystem comprises a first processor, a first compressor/decompressor, a first power control circuit, the first volatile memory, and a first nonvolatile memory;

receive a first power-down command at the first subsystem;

in response to receipt of the first power-down command:

compress state data using the first compressor/decompressor, resulting in compressed state data, and

store the compressed state data in the first nonvolatile memory;

in response to storage of the compressed state data in the first nonvolatile memory, power down the first subsystem using the first power control circuit; and

communicate by the first subsystem a second power-down command to a second subsystem.

13. The non-transitory computer-readable medium of claim 12 , wherein the computer-executable instructions, when executed, cause the apparatus to:

receive, at the first processor, a power-up command; and

in response to the power-up command, decompress, using the first compressor/decompressor, the compressed state data stored in the first nonvolatile memory and store the decompressed state data in the first volatile memory.

14. The non-transitory computer-readable medium of claim 13 , wherein the computer-executable instructions, when executed, cause the apparatus to perform a computation task using the decompressed state data after storage in the first volatile memory.

15. The non-transitory computer-readable medium of claim 12 , wherein the computer-executable instructions, when executed, cause the apparatus to:

cause the first subsystem to perform a task that changes the state data; and

cause the second subsystem to communicate a change message identifying the change in the state data.

16. The non-transitory computer-readable medium of claim 12 , wherein the computer-executable instructions, when executed, cause the apparatus to monitor an activity level of the first subsystem and generate the first power-down command in response to the activity level falling below a threshold activity level.

17. The method of claim 7 , wherein the first nonvolatile memory is operable to retain stored data when the first nonvolatile memory is not being supplied with power.

18. The apparatus of claim 1 , wherein the first nonvolatile memory is a Spin Torque Transfer Random Access Memory (STT-RAM), a Phase-Change memory (PCM), a Ferroelectric Random Access Memory (FeRAM), a magnetic flip flop (MFF), or a grapheme field effect device.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 28, 2015
From: NOKIA CORPORATION
To: NOKIA TECHNOLOGIES OY
Reel/Frame 035512/0576 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 13, 2010
From: VOUTILAINEN, MARTTI KALEVI
To: NOKIA CORPORATION
Reel/Frame 023776/0989 →