IP Library Granted Patent US 8,140,872
Granted Patent B1
US 8,140,872 · App. 12/136,679 · Granted Mar 20, 2012

Restoring processor context in response to processor power-up

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,140,872
App. No.
12/136,679
Granted
Mar 20, 2012
Kind
B1
Abstract

A CPU ( 1 ) automatically preserves the CPU context in a computer memory ( 5 ) that remains powered-up when the CPU is powered down in sleep mode. By means of the preserved CPU context, the CPU is able to instantly and transparently resume program execution at the instruction of the program that was asserted for execution when the CPU was powered down. The CPU is permitted to power down frequently, even during execution of a program, and results in reduced average overall power consumption.

Claims (41)

1. A method comprising:

executing, with a processor, a first instruction in an instruction set;

subsequent to said executing and before executing a next instruction in said instruction set following said first instruction, and in response to detecting a command to remove a clock input from said processor, saving context information from said processor's internal memory to a second memory and then removing power from said processor;

in response to returning power to said processor, restoring said saved context information from said second memory to said internal memory before executing said next instruction; and

subsequent to said restoring, executing said next instruction.

2. The method of claim 1 wherein said second memory and said processor are in different power domains.

3. The method of claim 1 wherein said internal memory and said processor are in different power domains.

4. The method of claim 1 further comprising:

setting a flag in response to said removing power; and

checking said flag in response to said returning power.

5. The method of claim 1 further comprising:

measuring an amount of time after said first instruction is executed before said next instruction is executed; and

subsequent to said executing and before executing said next instruction, and if said amount of time equals or exceeds a threshold, saving said context information from said processor's internal memory to said second memory and then removing said power from said processor.

6. The method of claim 1 further comprising, after said removing power, monitoring a user input device for a sign of activity, wherein said returning power is performed in response to detecting said sign.

7. A computer-readable storage device having stored thereon, computer-executable instructions that, responsive to execution by a computing device, cause the computing device to perform operations comprising:

subsequent to a processor executing a first instruction in an instruction set and before said processor executes a next instruction in said instruction set following said first instruction, and in response to detecting a command to remove a clock input from said processor, saving context information from said processor's internal memory to a second memory and then removing power from said processor;

in response to a triggering event, returning power to said processor and restoring said saved context information from said second memory to said internal memory before said next instruction is executed; and

subsequent to said restoring, executing said next instruction.

8. The computer-readable storage device of claim 7 wherein said operations further comprise powering said second memory and said processor independently from one another.

9. The computer-readable storage device of claim 7 wherein said operations further comprise powering said internal memory and said processor independently from one another.

10. The computer-readable storage device of claim 7 wherein said operations further comprise:

setting a flag in response to said removing power; and

checking said flag in response to said returning power.

11. The computer-readable storage device of claim 7 wherein said operations further comprise:

measuring an amount of time after execution of said first instruction and before execution of said next instruction; and

subsequent to said executing and before executing said next instruction, and if said amount of time equals or exceeds a threshold, saving said context information from said processor's internal memory to said second memory and then removing said power from said processor.

12. The computer-readable storage device of claim 7 wherein said operations further comprise, after said removing power, monitoring a user input device for a signal, wherein said returning power is performed in response to detecting said signal.

13. A computer system comprising:

a processor operable for executing a first instruction and a second instruction in an instruction set, wherein said first instruction and said second instruction are consecutive; and

a memory coupled to said processor, wherein said memory is configured to remain powered if said processor is powered down;

wherein after executing said first instruction and before executing said second instruction, and in response to detecting a command to remove a clock input from said processor, said processor is operable for saving context information from said processor's internal memory to said memory;

wherein if said processor is powered down after said context information is saved to said memory, then said saved context information is restored from said memory to said internal memory in response to powering up said processor and before said second instruction is executed, wherein said processor is then operable for executing said second instruction.

14. The computer system of claim 13 wherein said internal memory is configured to remain powered if said processor is powered down.

15. The computer system of claim 13 wherein a flag is set in response to powering down said processor.

16. The computer system of claim 13 wherein said processor is further configured to be powered down in response to determining that an amount of time between execution of said first instruction and execution of said second instruction equals or exceeds a threshold.

17. The computer system of claim 13 further comprising a user input device coupled to said processor, wherein said processor is configured to be powered up in response to detecting a signal from said user input device.

18. An apparatus comprising:

means for executing a first instruction in an instruction set;

means for detecting a command to remove a clock input from said means for executing;

means for saving context information associated with said means for executing, said context information saved after said first instruction is executed and before a next instruction in said instruction set is executed, in response to detecting said command; and

means for restoring said context information to said means for executing if power is removed from said means for executing after said first instruction is executed and if power is then returned to said means for executing before said next instruction is executed, wherein said next instruction is executable after said context information is restored.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 1, 2017
From: INTELLECTUAL VENTURES ASSETS 40 LLC
To: COMPLEX MEMORY LLC
Reel/Frame 044008/0892 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2017
From: INTELLECTUAL VENTURES HOLDING 81 LLC
To: INTELLECTUAL VENTURES ASSETS 40 LLC
Reel/Frame 042170/0445 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 14, 2017
From: FLEISCHMANN, MARC; ANVIN, H. PETER
To: TRANSMETA CORPORATION
Reel/Frame 042017/0363 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNOR'S NAME PREVIOUSLY RECORDED AT REEL: 036711 FRAME: 0160. ASSIGNOR(S) HEREBY CONFIRMS THE MERGER. Recorded Oct 6, 2015
From: INTELLECTUAL VENTURES FUNDING LLC
To: INTELLECTUAL VENTURES HOLDING 81 LLC
Reel/Frame 036797/0356 →
MERGER Recorded Sep 29, 2015
From: INTELLECTUAL VENTURE FUNDING LLC
To: INTELLECTUAL VENTURES HOLDING 81 LLC
Reel/Frame 036711/0160 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 22, 2009
From: TRANSMETA LLC
To: INTELLECTUAL VENTURE FUNDING LLC
Reel/Frame 023268/0771 →
MERGER Recorded Mar 26, 2009
From: TRANSMETA CORPORATION
To: TRANSMETA LLC
Reel/Frame 022454/0522 →