Method and apparatus for managing energy usage of processors while executing protocol state machines
First Claim
1. A system to manage energy usage of a processor, comprising:
- a data communication network;
a transmitter, coupled to the data communication network, to invoke a protocol state machine to send a packet and to wait for an acknowledgment of receipt;
a receiver, in communication with the transmitter coupled to the data communication network, to receive, process, and verify the packet and to send the acknowledgment of receipt of the packet;
an incoming packet buffer, coupled to the protocol state machine in the transmitter, to store an incoming packet to be transmitted by the transmitter; and
a processor, coupled to the protocol state machine in the transmitter, the processor enters a low power, low clock rate mode while waiting for the acknowledgment of receipt of the packet from the receiver,wherein the protocol state machine manages a power level of the processor based on a utilized capacity of the buffer and the transmitter awakens when the incoming packet buffer reaches a low water mark.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and apparatus of implementing protocol state machines that conserve energy on energy conscious devices is disclosed. Under this method, most of the energy consuming protocol state machine context invocations or operations are aggregated in time and are scheduled at regular intervals. Such an aggregation leads to many contexts executing concurrently in a burst prior to entering a dormant state. Thus, resource usage can reach a predictable rate pattern of idle and active cycles. With such a pattern, it is possible to take advantage of the energy saving features of processors by downshifting the processor clock speed and use of other resources such as peripherals and buses. The intervals are configured to achieve a tradeoff between timely execution and energy consumption. The aggregation operates across two dimensions, namely, multiple instances of a protocol state machine and multiple layers of protocols in a layered architecture.
23 Citations
20 Claims
-
1. A system to manage energy usage of a processor, comprising:
-
a data communication network; a transmitter, coupled to the data communication network, to invoke a protocol state machine to send a packet and to wait for an acknowledgment of receipt; a receiver, in communication with the transmitter coupled to the data communication network, to receive, process, and verify the packet and to send the acknowledgment of receipt of the packet; an incoming packet buffer, coupled to the protocol state machine in the transmitter, to store an incoming packet to be transmitted by the transmitter; and a processor, coupled to the protocol state machine in the transmitter, the processor enters a low power, low clock rate mode while waiting for the acknowledgment of receipt of the packet from the receiver, wherein the protocol state machine manages a power level of the processor based on a utilized capacity of the buffer and the transmitter awakens when the incoming packet buffer reaches a low water mark. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. An article comprising:
-
a computer-readable storage medium having stored thereon instructions that when executed by a computer result in the following; receiving a data packet at a receiver protocol state machine, the data packet being transmitted from a transmitter protocol state machine over a data communication network; depositing the data packet in an application buffer; processing and verifying the data packet; and transmitting an acknowledgment of receipt of the data packet to the transmitter protocol state machine, wherein the receiver protocol state machine manages a power level of a processor in the receiver which is coupled to the receiver protocol state machine based on a utilized capacity of the application buffer, the processor in the receiver switching to a high-power, high clock rate mode from a lower power, low clock rate mode when the application buffer reaches a threshold. - View Dependent Claims (10, 11)
-
-
12. An article comprising:
-
a computer-readable storage medium having stored thereon instructions that when executed by a computer result in the following; receiving a data packet at a receiver protocol state machine, the data packet being transmitted from a transmitter protocol state machine over a data communication network; depositing the data packet in an application buffer; processing and verifying the data packet; and transmitting an acknowledgment of receipt of the data packet to the transmitter protocol state machine, wherein the receiver protocol state machine manages a power level of a processor coupled to the receiver protocol state machine based on a utilized capacity of the application buffer, and a processor in the receiver enters a high power, high clock rate mode when the application buffer reaches a maximum capacity and the processor in the receiver enters an idle low power, low clock rate mode after the application buffer has reached the maximum capacity and the receiver protocol state machine has processed packets residing in the application buffer.
-
-
13. A receiver for managing energy usage of a processor in the receiver, comprising:
-
a protocol state machine to receive a packet from a transmitter over a data communication network and to process and verify the packet; a processor coupled to the protocol state machine; and an application buffer coupled to the protocol state machine to store the packet, wherein the protocol state machine transmits and acknowledgment of receipt of the date packet to the transmitter, the protocol state machine manages a power level of the processor in the receiver based on a utilized capacity of the application buffer, the processor in the receiver switching to a high-power, high clock rate mode from a low power, low clock rate mode when the application buffer reaches a threshold. - View Dependent Claims (14)
-
-
15. A receiver for managing energy usage of a processor, comprising:
-
a protocol state machine to receive a packet from a transmitter over a data communication network and to process and verify the packet; a processor coupled to the receiver protocol state machine; and an application buffer coupled to the protocol state machine to store the packet, wherein the protocol state machine transmits an acknowledgment of receipt of the data packet to the transmitter and the protocol state machine manages a power level of the processor based on a utilized capacity of the application buffer and wherein the processor enters an idle low power, low clock rate mode after the application buffer has reached the maximum capacity and the receiver protocol state machine has processed packets residing in the application buffer.
-
-
16. A method of managing energy usage of a processor in a receiver, comprising:
-
receiving a data packet at a receiver protocol state machine, the data packet being transmitted from a transmitter protocol state machine over a data communication network; depositing the data packet in an application buffer; processing and verifying the data packet; and transmitting an acknowledgment of receipt of the data packet to the transmitter protocol state machine, wherein the receiver protocol state machine manages the a power level of the processor in the receiver which is coupled to the receiver protocol state machine, based on a utilized capacity of the application buffer, the processor in the receiver switching to a high-power, high clock rate mode from a low power, low clock rate mode when the application buffer reaches a threshold. - View Dependent Claims (17, 18)
-
-
19. A method of managing energy usage of a processor in a receiver, comprising:
-
receiving a data packet at a receiver protocol state machine, the data packet being transmitted from a transmitter protocol state machine over a data communication network; depositing the data packet in an application buffer; processing and verifying the data packet; and transmitting an acknowledgment of receipt of the data packet to the transmitter protocol state machine, wherein the receiver protocol state machine manages the a power level of the processor based on a utilized capacity of the application buffer, the processor enters a high power, high clock rate mode when the application buffer reaches a maximum capacity, and the processor enters an idle low power, low clock rate mode after the application buffer has reached the maximum capacity and the receiver protocol state machine has processed packets residing in the application buffer.
-
-
20. A method of managing energy usage of a processor in a transmitting device, comprising:
-
invoking a protocol state machine to send a packet across a data communication network to a receiver and waiting for an acknowledgment of receipt; storing incoming packets that are to transmitted by the protocol state machine to the receiver in a buffer; managing a power level of the processor in the transmitting device based on a utilized capacity of the buffer; transmitting any of the packets in the buffer until the utilized capacity of the buffer reaches the threshold; and switching the power level of the processor to a low power, low rate clock mode after the packets in the buffer have been transmitted.
-
Specification