← Back to Patent Explorer
US5692197A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for reducing power consumption in a computer network without sacrificing performance

Assignee: Sun Microsystems Inc
•
Filing: 1995-03-31
•
Granted: 1997-11-25
•
Expires: 2015-03-31
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method and apparatus for actively managing the overall power consumption of a computer network which includes a plurality of computer systems interconnected to each other. In turn, each computer system has one or more modules. Each computer system of the computer network is capable of independently initiating a transition into a power-conserving mode, i.e., a "sleep" state, while keeping its network interface "alive" and fully operational. Subsequently, each computer system can independently transition back into fully operational state, i.e., an "awake" state, when triggered by either a deterministic or an asynchronous event. As a result, the sleep states of the computer systems are transparent to the computer network. Deterministic events are events triggered internally by a computer system, e.g., an internal timer waking the computer system up at midnight to perform housekeeping chores such as daily tape backups. Conversely, the source of asynchronous events are external in nature and include input/output (I/O) activity. The illusion of the entire network being always fully operational is possible because the system controllers, the interconnects and network interfaces of each computer system remain fully operational while selected modules and peripheral devices are powered down. As a result, each computer system is able to rapidly awake from sleep state in response to stimuli by powering down selected modules thereby accomplishing power conservation without requiring a static shut down of the computer network, i.e., without the overall performance and response of the computer network.

Inventors

  • 👤 Charles E. Narad
  • 👤 Zahir Ebrahim
  • 👤 Satyanarayana Nishtala
  • 👤 William C. Van Loo
  • 👤 Kevin B. Normoyle
  • 👤 Louis F. Coffin, III
  • 👤 Leslie Kohn

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-28 16:50
CPC Classifications
G; G06; G06F; G06F1/00; G06F1/26; G06F1/32; G06F1/3203; G06F1/3206; G06F1/3209

Claims Analysis

Total Claims: 21
Claim 1
Independent Claim 282 words
A method for managing power in a computer network having a plurality of computer systems and a network connection means, each said computer system including a processor module, an input/output (I/O) interface module and a main memory, each said I/O interface module coupled to the network connection means, the method comprising the steps of: setting an indicator corresponding to a first said processor module of a first computer system to indicate a power down of the first processor module corresponding to a transition of the first computer system from an awake state into a sleep state; storing data including state information of the first processor module in a first said main memory of the first computer system; powering down the first processor module while a first said I/O interface module of the first computer system remains powered up, thereby reducing the power consumption of the computer network; detecting an asynchronous event initiated by a source external to the first computer system; and responding to the detection of the asynchronous event by: powering up the first processor module and performing a wake-up sequence in the processor module; generating, within the first computer system, an interrupt request corresponding to the asynchronous event and regenerating the interrupt request until a positive acknowledgement of the interrupt request is generated; and responding to each interrupt request corresponding to the asynchronous event by (A) generating a negative acknowledgment of the interrupt request if the first processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgement of the interrupt request and sending to the first processor module an interrupt packet corresponding to the asynchronous event if the first processor module has completed the wake-up sequence.
Claim 2
Independent Claim 282 words
A method for managing power in a computer network having a plurality of computer systems and a network connection means, each said computer system including a processor module, an input/output (I/O) interface module and a main memory, each said I/O interface module coupled to the network connection means, the method comprising the steps of: setting an indicator corresponding to a first said processor module of a first computer system to indicate a power down of the first processor module corresponding to a transition of the first computer system from an awake state into a sleep state; storing data including state information of the first processor module in a first said main memory of the first computer system; powering down the first processor module while a first said I/O interface module of the first computer system remains powered up, thereby reducing the power consumption of the computer network; detecting an asynchronous event initiated by a source external to the first computer system; and responding to the detection of the asynchronous event by: powering up the first processor module and performing a wake-up sequence in the processor module; generating, within the first computer system, an interrupt request corresponding to the asynchronous event and regenerating the interrupt request until a positive acknowledgement of the interrupt request is generated; and responding to each interrupt request corresponding to the asynchronous event by (A) generating a negative acknowledgment of the interrupt request if the first processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgement of the interrupt request and sending to the first processor module an interrupt packet corresponding to the asynchronous event if the first processor module has completed the wake-up sequence.
Claim 3
Dependent Claim 100 words
The method of claim 1, wherein the powering down step includes performing a powering down sequence, wherein a beginning portion of the powering down sequence includes setting a Sleep Entered status bit and an ending portion of the powering down sequence includes setting a Wakeup Enable bit; at completion of the wake-up sequence of the first processor module, clearing the Sleep Entered status bit and the Wakeup Enabled bit; wherein whenever the Sleep Entered bit is set and the Wakeup Enable bit is clear, powering up of the first processor module is inhibited until the powering down sequence is completed.
Claim 4
Dependent Claim 40 words
The method of claim 1, wherein the step of performing a wake-up sequence includes: executing a boot sequence with the first processor module; and restoring data including the state information of the first processor module from the first main memory.
Claim 5
Dependent Claim 20 words
The method of claim 3 wherein the asynchronous event is a network packet arriving at the first I/O interface module.
Claim 6
Dependent Claim 33 words
The method of claim 1 further comprising the step of sending an arbitration reset signal to the first I/O interface module which selectively resets an arbitration state of the first I/O interface module.
Claim 7
Dependent Claim 246 words
A computer system comprising: a processor module, including means for executing a power down sequence and for executing a wake-up sequence; an input/output (I/O) interface module coupled to a network connection means for receiving network packets and detecting asynchronous events initiated by sources external to the computer system; a main memory for storing data including state information of the processor module; and a system controller coupled to the I/O interface module and the processor module; the power down sequence including storing data including state information of the processor module in the main memory and powering down the processor module while the I/O interface module remains powered up; the I/O interface module including means for responding to detection of the asynchronous event by sending an interrupt request to the system controller, and for regenerating the interrupt request until a positive acknowledgment of the interrupt request is received; the system controller including means for responding to a first interrupt request corresponding to the asynchronous event by causing the processor module to power up and start executing the wake-up sequence, and for responding to each interrupt request corresponding to the asynchronous event by (A) sending the I/O interface module a negative acknowledgment of the interrupt request if the processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgement of the interrupt request and sending to the processor module an interrupt packet corresponding to the asynchronous event if the processor module has completed the wake-up sequence.
Claim 8
Dependent Claim 246 words
A computer system comprising: a processor module, including means for executing a power down sequence and for executing a wake-up sequence; an input/output (I/O) interface module coupled to a network connection means for receiving network packets and detecting asynchronous events initiated by sources external to the computer system; a main memory for storing data including state information of the processor module; and a system controller coupled to the I/O interface module and the processor module; the power down sequence including storing data including state information of the processor module in the main memory and powering down the processor module while the I/O interface module remains powered up; the I/O interface module including means for responding to detection of the asynchronous event by sending an interrupt request to the system controller, and for regenerating the interrupt request until a positive acknowledgment of the interrupt request is received; the system controller including means for responding to a first interrupt request corresponding to the asynchronous event by causing the processor module to power up and start executing the wake-up sequence, and for responding to each interrupt request corresponding to the asynchronous event by (A) sending the I/O interface module a negative acknowledgment of the interrupt request if the processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgement of the interrupt request and sending to the processor module an interrupt packet corresponding to the asynchronous event if the processor module has completed the wake-up sequence.
Claim 9
Dependent Claim 118 words
The computer system of claim 6 wherein the system controller's means for responding to the first interrupt request includes means for setting a Sleep Entered status bit, and the system controller's means for responding to each interrupt request when the processor module has completed the wake-up sequence includes clearing the Sleep Entered status bit; the power down sequence including setting a Wakeup Enabled bit at an ending portion of the powering down sequence; the wake-up sequence includes clearing the Wakeup Enabled bit at completion of the wake-up sequence; wherein whenever the Sleep Entered bit is set and the Wakeup Enabled bit is clear, powering up of the processor module is inhibited until the powering down sequence is completed.
Claim 10
Dependent Claim 34 words
The computer system of claim 7 wherein the wake-up sequence includes: executing a boot sequence with the processor module; and restoring data including the state information of the processor module from the main memory.
Claim 11
Dependent Claim 20 words
The computer system of claim 8 wherein the asynchronous event is a network packet arriving at the I/O interface module.
Claim 12
Independent Claim 270 words
A method for managing power in a computer network having a plurality of computer systems and a network connection means, each said computer system including a processor module, an input/output (I/O) interface module and a main memory, each I/O interface module coupled to the network connection means, the method comprising the steps of: performing a powering down sequence in a first one of the computer systems to transition the first computer system from an awake state into a sleep state, including: storing data including state information of the first processor module in a first said main memory of the first computer system; and powering down the first processor module while a first said I/O interface module of the first computer system remains powered up, thereby reducing the power consumption of the computer network; detecting an asynchronous event initiated by a source external to the first computer system; and responding to the detection of the asynchronous event by: powering up the first processor module and performing a wake-up sequence in the first processor module; generating, within the first computer system, an internal interrupt request corresponding to the asynchronous event and regenerating the interrupt request whenever a negative acknowledgment of the interrupt request is generated; and responding to each interrupt request corresponding to the asynchronous event by (A) generating a negative acknowledgment of the interrupt request if the first processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgment of the interrupt request and sending to the first processor module an interrupt packet corresponding to the asynchronous event if the first processor module has completed the wake-up sequence.
Claim 13
Independent Claim 270 words
A method for managing power in a computer network having a plurality of computer systems and a network connection means, each said computer system including a processor module, an input/output (I/O) interface module and a main memory, each I/O interface module coupled to the network connection means, the method comprising the steps of: performing a powering down sequence in a first one of the computer systems to transition the first computer system from an awake state into a sleep state, including: storing data including state information of the first processor module in a first said main memory of the first computer system; and powering down the first processor module while a first said I/O interface module of the first computer system remains powered up, thereby reducing the power consumption of the computer network; detecting an asynchronous event initiated by a source external to the first computer system; and responding to the detection of the asynchronous event by: powering up the first processor module and performing a wake-up sequence in the first processor module; generating, within the first computer system, an internal interrupt request corresponding to the asynchronous event and regenerating the interrupt request whenever a negative acknowledgment of the interrupt request is generated; and responding to each interrupt request corresponding to the asynchronous event by (A) generating a negative acknowledgment of the interrupt request if the first processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgment of the interrupt request and sending to the first processor module an interrupt packet corresponding to the asynchronous event if the first processor module has completed the wake-up sequence.
Claim 14
Dependent Claim 100 words
The method of claim 10, wherein the powering down step includes performing a powering down sequence, wherein a beginning portion of the powering down sequence includes setting a Sleep Entered status bit and an ending portion of the powering down sequence includes setting a Wakeup Enabled bit; at completion of the wake-up sequence of the first processor module, clearing the Sleep Entered status bit and the Wakeup Enabled bit; wherein whenever the Sleep Entered bit is set and the Wakeup Enabled bit is clear, powering up of the first processor module is inhibited until the powering down sequence is completed.
Claim 15
Dependent Claim 39 words
The method of claim 10, the step of performing a wake-up sequence including: executing a boot sequence with the first processor module; and restoring data including the state information of the first processor module from the first main memory.
Claim 16
Dependent Claim 20 words
The method of claim 10, wherein the asynchronous event is a network packet arriving at the first I/O interface module.
Claim 17
Dependent Claim 246 words
A computer system comprising: a processor module, including means for executing a power down sequence and for executing a wake-up sequence; an input/output (I/O) interface module coupled to a network connection means for receiving network packets and detecting asynchronous events initiated by sources external to the computer system; a main memory for storing data including state information of the processor module; and a system controller coupled to the I/O interface module and the processor module; the power down sequence including storing data including state information of the processor module in the main memory and powering down the processor module while the I/O interface module remains powered up; the I/O interface module including means for responding to detection of an asynchronous event by sending an interrupt request to the system controller, and for regenerating the interrupt request whenever a negative acknowledgment of the interrupt request is received; the system controller including means for responding to a first interrupt request corresponding to the asynchronous event by causing the processor module to power up and start executing the wake-up sequence, and for responding to each interrupt request corresponding to the asynchronous event by (A) sending the I/O interface module a negative acknowledgment of the interrupt request if the processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgment of the interrupt request and sending to the processor module an interrupt packet corresponding to the asynchronous event if the processor module has completed the wake-up sequence.
Claim 18
Dependent Claim 246 words
A computer system comprising: a processor module, including means for executing a power down sequence and for executing a wake-up sequence; an input/output (I/O) interface module coupled to a network connection means for receiving network packets and detecting asynchronous events initiated by sources external to the computer system; a main memory for storing data including state information of the processor module; and a system controller coupled to the I/O interface module and the processor module; the power down sequence including storing data including state information of the processor module in the main memory and powering down the processor module while the I/O interface module remains powered up; the I/O interface module including means for responding to detection of an asynchronous event by sending an interrupt request to the system controller, and for regenerating the interrupt request whenever a negative acknowledgment of the interrupt request is received; the system controller including means for responding to a first interrupt request corresponding to the asynchronous event by causing the processor module to power up and start executing the wake-up sequence, and for responding to each interrupt request corresponding to the asynchronous event by (A) sending the I/O interface module a negative acknowledgment of the interrupt request if the processor module has not completed the wake-up sequence, and (B) generating a positive acknowledgment of the interrupt request and sending to the processor module an interrupt packet corresponding to the asynchronous event if the processor module has completed the wake-up sequence.
Claim 19
Dependent Claim 118 words
The computer system of claim 14, wherein: the system controller's means for responding to the first interrupt request includes means for setting a Sleep Entered status bit, and the system controller's means for responding to each interrupt request when the processor module has completed the wake-up sequence includes clearing the Sleep Entered status bit; the power down sequence includes setting a Wakeup Enabled bit at an ending portion of the powering down sequence; the wake-up sequence includes clearing the Wakeup Enabled bit at completion of the wake-up sequence; wherein whenever the Sleep Entered bit is set and the Wakeup Enabled bit is clear, powering up of the processor module is inhibited until the powering down sequence is completed.
Claim 20
Dependent Claim 34 words
The computer system of claim 14, wherein the wake-up sequence includes: executing a boot sequence with the processor module; and restoring data including the state information of the processor module from the main memory.
Claim 21
Dependent Claim 20 words
The computer system of claim 14 wherein the asynchronous event is a network packet arriving at the I/O interface module.

References Cited (Backward Citations)

US5287537A Cited
US4980836A Cited
US5467469A Cited
US5148380A Cited
US5432946A Cited
US5283905A Cited
US5303171A Cited
US5497494A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2000-11-24 2001-05-26 2001-11-25 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2004-11-24 2005-05-26 2005-11-25 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2008-11-24 2009-05-26 2009-11-25 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag