Protected power management mode in a processor
US-2016342196-A1 · Nov 24, 2016 · US
US2016004533A1 · US · A1
| Field | Value |
|---|---|
| Publication number | US-2016004533-A1 |
| Application number | US-201514854082-A |
| Country | US |
| Kind code | A1 |
| Filing date | Sep 15, 2015 |
| Priority date | Sep 27, 2007 |
| Publication date | Jan 7, 2016 |
| Grant date | — |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Methods and apparatuses for reducing power consumption of processor switch operations are disclosed. One or more embodiments may comprise specifying a subset of registers or state storage elements to be involved in a register or state storage operation, performing the register or state storage operation, and performing a switch operation. The embodiments may minimize the number of registers or state storage elements involved with the standby operation by specifying only the subset of registers or state storage elements, which may involve considerably fewer than the total number of registers or state storage or elements of the processor. The switch operation may be switch from one mode to another, such as a transition to or from a sleep mode, a context switch, or the execution of various types of instructions.
Opening claim text (preview).
What is claimed is: 1 . A processor comprising: a fetch unit to fetch instructions; a decode unit to decode the fetched instructions; a plurality of execution units; a plurality of registers; and a control circuit to receive an instruction that specifies a subset of registers of the plurality of registers and a pointer to a handler function to be executed after the processor is awoken from a low-power mode to monitor for work to be performed by the processor, wherein the control circuit is to cause the subset of registers to be stored to a persistent storage prior to entry into the low-power mode, and after the processor is awoken from the low-power mode, to restore the subset of registers, jump to the handler function, and check for work to be performed. 2 . The processor of claim 1 , wherein, if no work is to be performed, the processor is to execute a second instruction that specifies the subset of registers and the pointer to store the subset of registers to the persistent storage and re-enter the low-power mode. 3 . The processor of claim 2 , wherein, if work is to be performed, the processor is to execute a third instruction to restore full processor state and return to an application. 4 . The processor of claim 1 , wherein the subset of registers corresponds to registers to be used by the handler function. 5 . The processor of claim 4 , wherein the subset of registers does not include registers of other reachable code. 6 . The processor of claim 1 , wherein the instruction comprises a bitmap to specify the subset of registers. 7 . The processor of claim 1 , wherein the subset of registers comprises a first class of registers, wherein the plurality of registers comprises a plurality of classes of registers. 8 . The processor of claim 1 , wherein the processor comprises the persistent storage. 9 . The processor of claim 8 , wherein the persistent storage comprises a cache memory. 10 . The processor of claim 1 , wherein the control circuit is to cause the subset of registers to be stored based on metadata of the subset of registers, the metadata comprising a modified indication and a not-restored indicator. 11 . The processor of claim 1 , wherein the subset of registers comprises registers to store values changed since a last low-power mode occurred. 12 . The processor of claim 1 , wherein the processor comprises a multicore processor, the control circuit to cause a first core to enter the low-power mode while a second core is to be maintained in an active state. 13 . The processor of claim 12 , further comprising a cache memory to maintain data associated with the first core when the first core is in the low-power mode. 14 . A non-transitory machine-readable medium having stored thereon instructions, which if performed by a machine cause the machine to perform a method comprising: receiving, in an instruction, an identification of a subset of registers to be saved during a transition of a processor from an active state to a low-power mode; responsive to the instruction, storing the subset of registers to a persistent storage of the processor and entering the low-power mode; and after waking from the low-power mode, restoring the subset of registers from the persistent storage, and entering an operating mode of the processor. 15 . The non-transitory machine-readable medium of claim 14 , wherein the method further comprises receiving, in the instruction, an identification of a function pointer to a handler function to be executed after exit from the low-power mode. 16 . The non-transitory machine-readable medium of claim 15 , wherein the method further comprises, if no work is to be performed after the exit from the low-power mode, executing a second instruction that identifies the subset of registers and the function pointer to store the subset of registers to the persistent storage and re-entering the low-power mode, and wherein, if work is to be performed, executing a third instruction to restore full processor state and return to an application. 17 . A system comprising: a processor having a plurality of cores, a cache memory, and a control circuit to receive an instruction that specifies a subset of registers of the plurality of registers to be stored during a transition of a first core of the plurality of cores from an active state to an inactive state, the instruction further to specify a pointer to a handler function to be executed after exit of the first core from the inactive state, wherein the control circuit is to cause the subset of registers to be stored to the cache memory prior to entry of the first core into the inactive state, and to restore the subset of registers, jump to the handler function, and monitor for work to be performed by the first core after exit of the first core from the inactive state; and a dynamic random access memory (DRAM) coupled to the processor. 18 . The system of claim 17 , wherein the control circuit is to cause the subset of registers to be stored based on metadata of the subset of registers, wherein the metadata comprises a modified indication and a not-restored indicator. 19 . The system of claim 17 , wherein, if no work is to be performed, the first core is to execute a second instruction that specifies the subset of registers and the pointer to store the subset of registers to the cache memory and re-enter the inactive state, and, if work is to be performed, the first core is to execute a third instruction to restore full processor state and return to an application. 20 . The system of claim 17 , wherein the instruction comprises a sleep-with-register-set-and-handler instruction of an instruction set architecture (ISA).
Power or thermal control instructions · CPC title
by software initiated power-off · CPC title
Register structure · CPC title
Power saving in display device · CPC title
by disabling clock generation or distribution · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.