US20120178491A1 - Techniques for communications power management based on system states - Google Patents
Techniques for communications power management based on system states Download PDFInfo
- Publication number
- US20120178491A1 US20120178491A1 US13/424,709 US201213424709A US2012178491A1 US 20120178491 A1 US20120178491 A1 US 20120178491A1 US 201213424709 A US201213424709 A US 201213424709A US 2012178491 A1 US2012178491 A1 US 2012178491A1
- Authority
- US
- United States
- Prior art keywords
- communications
- parameter
- computing
- state information
- power state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3206—Monitoring of events, devices or parameters that trigger a change in power modality
- G06F1/3209—Monitoring remote activity, e.g. over telephone lines or network connections
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/12—Arrangements for remote connection or disconnection of substations or of equipment thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/50—Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate
Definitions
- Power management for electronic devices such as computer systems play an important part in conserving energy, managing heat dissipation, and improving overall system performance.
- Modern computers systems are increasingly designed to be used in settings where a reliable external power supply is not available making power management to conserve energy important.
- Power management techniques allow certain components of a computer system to be powered down or put in a sleep mode that requires less power than while in active operation, thereby reducing the total amount of energy consumed by a device over some period of time. Energy conservation is especially important for mobile devices to conserve battery power. Even when reliable external power supplies are available careful power management within the computing system can reduce heat produced by the system enabling improved performance of the system.
- Computing systems generally have better performance at lower ambient temperatures because key components can run at higher speeds without damaging their circuitry. Consequently, there are many advantages to enhancing power management for electronic devices.
- FIG. 1 illustrates one embodiment of a communications system.
- FIG. 2 illustrates one embodiment of an apparatus.
- FIG. 3 illustrates one embodiment of a first logic diagram.
- FIG. 4 illustrates one embodiment of a second logic diagram.
- Various embodiments may comprise one or more elements.
- An element may comprise any structure arranged to perform certain operations.
- Each element may be implemented as hardware, software, or any combination thereof, as desired for a given set of design parameters or performance constraints.
- an embodiment may be described with a limited number of elements in a certain topology by way of example, the embodiment may include more or less elements in alternate topologies as desired for a given implementation.
- any reference to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment.
- the appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
- Various embodiments may be generally directed to techniques for communications power management based on system or platform power states. Some embodiments may be particularly directed to enhanced power management techniques to manage power states for a communications portion of a node using computing power state information for a computing portion of the node. In one embodiment, for example, the computing power state information may be communicated over a communications bus and uniform interfaces between the various portions of a node using various power management messages. Examples for a node may include various types of heterogeneous network endpoint and infrastructure devices or resources, such as computers, servers, switches, routers, bridges, gateways, and so forth.
- the computing power state information may indicate, for example, whether a computing portion of a given node is operating in a power-managed state or a full-computation state, the duration for a power-managed state, a resume latency to exit from a power-managed state, and other power related characteristics for the computing portion of the node.
- the computing power state information may be used to perform power management operations for the communications portion of the node.
- the computing power state information may be used by a control policy to select a communications rate or link rate for the communications portion of the node, thereby directly or indirectly selecting a power state for the communications portion of the node.
- the computing power state information may be used to directly switch the communications portion of the node to another power state.
- the power management techniques may be implemented, for example, by power gating and/or clock gating various hardware elements of a node, thereby conserving battery power.
- an apparatus such as a network device may include a managed power system and a power management module to manage power states for the managed power system.
- the managed power system may comprise, for example, any devices, components, modules, circuits, or other portions of the node drawing power from a power source, such as a battery.
- the managed power system may comprise a computing sub-system.
- the computing sub-system may include a computing state module operative to determine computing power state information.
- the computing power state information may include, for example, power states for the computing sub-system, as well as one or more parameters representing certain characteristics of the power states, such as idle durations, resume latencies, and so forth.
- the computing state module may send a power management message with the computing power state information to the power management module.
- the power management module may be operative to communicate power state information with the computing sub-system and the communications sub-system utilizing various power management messages communicated over a communications bus and appropriate interfaces for the node.
- the power management module may include a power management controller operative to receive the power management message, retrieve the computing power state information from the power management message, and determine a computing power state parameter for the computing sub-system.
- the power management controller may send the computing power state information, including the computing power state parameter, to a communications sub-system of the managed power system.
- the managed power system may further comprise a communications sub-system.
- the communications sub-system may include a control policy module and one or more transceivers capable of operating at different communications rates.
- the control policy module may be operative to receive computing power state information from the power management module, and communications state information from a network state module of the communications sub-system, and determine a communications rate parameter for the one or more transceivers based on the computing power state information and the communications state information.
- the control policy module may direct a controller to modify a communications rate for the one or more transceivers based on the communications rate parameter.
- a lower communications rate typically lowers power consumption for the communications sub-system.
- different portions of a node such as a network device may exchange, negotiate and synchronize power state information to improve or enhance power state management for the communications sub-system of the network device in order to facilitate energy conservation across the entire network device.
- FIG. 1 illustrates a block diagram of a communications system 100 .
- the communications system 100 may comprise multiple nodes 110 - 1 - m .
- a node generally may comprise any physical or logical entity for communicating information in the communications system 100 and may be implemented as hardware, software, or any combination thereof, as desired for a given set of design parameters or performance constraints.
- FIG. 1 may show a limited number of nodes in a certain topology by way of example, it can be appreciated that more or less nodes may be employed in different topologies for a given implementation.
- the communications system 100 may comprise, or form part of, a wired communications system, a wireless communications system, or a combination of both.
- the communications system 100 may include one or more nodes 110 - 1 - m arranged to communicate information over one or more types of wired communications links, such as a wired communications link 140 - 1 .
- Examples of the wired communications link 140 - 1 may include without limitation a wire, cable, bus, printed circuit board (PCB), Ethernet connection, peer-to-peer (P2P) connection, backplane, switch fabric, semiconductor material, twisted-pair wire, co-axial cable, fiber optic connection, and so forth.
- the communications system 100 also may include one or more nodes 110 - 1 - m arranged to communicate information over one or more types of wireless communications links, such as wireless shared media 140 - 2 .
- wireless shared media 140 - 2 may include without limitation a radio channel, infrared channel, radio-frequency (RF) channel, Wireless Fidelity (WiFi) channel, a portion of the RF spectrum, and/or one or more licensed or license-free frequency bands.
- the wireless nodes may include one more wireless interfaces and/or components for wireless communications, such as one or more radios, transmitters, receivers, transceivers, chipsets, amplifiers, filters, control logic, network interface cards (NICs), antennas, antenna arrays, and so forth.
- an antenna may include, without limitation, an internal antenna, an omni-directional antenna, a monopole antenna, a dipole antenna, an end fed antenna, a circularly polarized antenna, a micro-strip antenna, a diversity antenna, a dual antenna, an antenna array, and so forth.
- certain devices may include antenna arrays of multiple antennas to implement various adaptive antenna techniques and spatial diversity techniques.
- the communications system 100 comprises multiple nodes 110 - 1 - m .
- the nodes 110 - 1 - m may comprise or be implemented as any type of fixed or mobile electronic device or resource, including a network device, network endpoint equipment, network infrastructure equipment, cellular radiotelephone network equipment, a processing system, a computer system, a computer sub-system, a computer, a workstation, a terminal, a server, a personal computer (PC), a laptop computer, an ultra-laptop computer, a portable computer, a handheld computer, a personal digital assistant (PDA), a cellular telephone, a smart phone, a router, a switch, a bridge, a gateway, a network appliance, a microprocessor, an integrated circuit, a programmable logic device (PLD), a digital signal processor (DSP), a processor, a circuit, a logic gate, a register, a microprocessor, an integrated circuit, a semiconductor device, a chip, a transistor,
- PDA personal digital assistant
- some of the nodes 110 - 1 - m may represent heterogeneous network devices.
- the nodes 110 - 1 - m may comprise various mobile computer systems (e.g., laptop computers, handheld computers, smart phones, cellular telephones, and so forth) utilizing a mobile power source, such as one or more batteries.
- the nodes 110 - 1 - m may be arranged to communicate various types of information in multiple communications frames as represented by the power management packet data units (PMPDU) 150 - 1 - s via the network or communications links 140 - 1 , 140 - 2 .
- the nodes 110 - 1 - m may be arranged to communicate control information related to power management operations.
- control information may include without limitation power information, state information, power state information, power management commands, command information, control information, routing information, processing information, system file information, system library information, software (e.g., operating system software, file system software, application software, game software), firmware, an application programming interface (API), a program, an applet, a subroutine, an instruction set, an instruction, computing code, logic, words, values, symbols, and so forth.
- the nodes 110 - 1 - m may also be arranged to communicate media information, to include without limitation various types of image information, audio information, video information, AV information, and/or other data provided from various media sources.
- each of the nodes 110 - 1 - m may include a common number of elements as shown by the node 110 - 1 .
- the nodes 110 - 1 - m may each include various power management elements to implement a power management scheme operative to perform power management operations for the nodes 110 - 1 - m .
- a first node 110 - 1 may include a managed power system 120 - 1 coupled to a power management module 130 - 1 .
- the power management module 130 - 1 of the first node may be operative to communicate power state information with a second node (e.g., one of the nodes 110 - 2 - m ) over a communications connection established via the communications links 140 - 1 , 140 - 2 .
- a second node e.g., one of the nodes 110 - 2 - m
- the power management module 130 - 1 may manage various power states for the managed power system 120 - 1 of the node 110 - 1 .
- the power state information may include past, present or future power states for one or more portions of a managed power system 120 - 1 of the node 110 - 1 .
- different portions of a managed power system 120 - 1 may exchange power state information to improve or enhance power state management for the node 110 - 1 .
- the power management module 130 - 1 may synchronize power management operations between the sub-systems 210 - 1 , 230 - 1 of the managed power system 120 - 1 , such as placing communications components of the communications sub-system 210 - 1 in a lower power state based on operations or anticipated operations for the computing components of the computing sub-system 230 - 1 for a given communications rate duration period.
- the lower power state for the communications sub-system 210 - 1 may be achieved, for example, by switching to a power state for the communications sub-system 210 - 1 (e.g., Active to Idle), or a lower link rate for the communications sub-system 210 - 1 (e.g., 10 Gb/s to 100 Mb/s).
- each of the nodes 110 - 1 - m may include an identical or similar managed power system 120 - 1 - n and power management module 130 - 1 - p .
- the node 110 - 2 may include a managed power system 120 - 2 coupled to a power management module 130 - 2
- the node 110 - 3 may include the elements 120 - 3 , 130 - 3 , and so forth.
- the descriptions and examples of the structures and operations provided with reference to the managed power system 120 - 1 and the power management module 130 - 1 may also apply to the corresponding elements in the other nodes 110 - 2 - m .
- Exemplary embodiments for the managed power system 120 - 1 - n and the power management module 130 - 1 - p may be described in more detail with reference to FIG. 2 .
- the managed power system 120 - 1 and the power management module 130 - 1 may be suitable for various use scenarios or applications.
- the managed power system 120 - 1 and the power management module 130 - 1 may utilize enhanced power management techniques implemented in the form of one or more control policies for link rate management of a communications device in accordance with the Energy Efficient Ethernet (EEE) project.
- EEE Energy Efficient Ethernet
- the goal of the EEE project is to reduce power consumption of network endpoint devices and infrastructure equipment. Many Ethernet communications links are idle most of the time, particularly for nodes implemented as desktop units (e.g., a personal computer or server).
- An EEE control policy attempts to match link rates with link utilization for power efficiency. Typically lower link rates consume less power.
- savings potential may be 2 to 4 Watts (W) per link for a 1 Gigabit Per Second (Gb/s) link versus a 100 Megabits Per Second (Mb/s) link, and 10 to 20 W per link for a 10 Gb/s link versus a 1 Gb/s link.
- an existing network interface card NIC
- a communications portion of the nodes 110 - 1 - m may implement a rapid physical layer (PHY) selection (RPS) technique.
- PHY physical layer
- RPS is a technique or mechanism for fast switching of link rates, and is typically supported at both ends of a link.
- RPS techniques may be implemented in a number of different ways, such as through a media access control (MAC) frame handshake operation, for example.
- MAC media access control
- RPS is typically limited, however, to rapid switching of link rates only.
- RPS needs a control policy to determine when to switch link rates.
- Designing a control policy for RPS involves balancing multiple design parameters and performance constraints.
- One fundamental performance trade-off, for example, is time in a given link rate versus packet delay. If design priority is given to lowest possible packet delay, then the network endpoint should only use the highest link rate at all times. If design priority is given to lowest possible energy use, then the network endpoint should only use the lowest link rate at all times.
- a given design solution attempts to have low and bounded packet delay with maximum energy savings.
- One way to provide this design solution is by triggering a switch in link rates based on threshold in output buffers. If a queue is above a certain threshold (or watermark) then the nodes 110 - 1 - m switches to a higher link rate.
- a queue is below a certain threshold (or watermark) then the network endpoint switches to a lower link rate.
- This type of control policy alone, however, may cause frequent oscillation between link rates, particularly when traffic is bursty, which is fairly typical for average users.
- this type of control policy may force the nodes 110 - 1 - m to enter a higher link rate even when priority is given to energy conservation, such as when operating from a mobile power supply such as a battery.
- a user may desire a node 110 - 1 - m to stay in a lower power state and maintain minimally tolerable network performance.
- Some embodiments attempt to solve these and other problems. Some embodiments attempt to improve power management for a node 110 - 1 - m by implementing a control policy that supports RPS techniques while allowing a computer system to aggressively and proactively power gate and/or clock gate portions of the computer system. For example, the computer system can manage power levels and link rates for various communications elements based on the power levels and parameters of the computing elements, among other factors. To accomplish this, some embodiments utilize a parameterized communications device power management technique that interfaces with the platform power management architecture and conveys the idle duration, resume latency, and other computing power state information for the computing elements, components, modules, sub-systems or devices. By managing one or more power-related aspects of the communications portions of a node 110 - 1 - m based on computing power state information, the node 110 - 1 - m may realize enhanced energy conservation and utilize limited power resources such as batteries more efficiently.
- FIG. 2 illustrates a more detailed block diagram for a managed power system 120 and a power management module 130 .
- the managed power system 120 may include a computing sub-system 230 and a communications sub-system 210 .
- the computing sub-system 230 may further include a computing state module 232 and a power management interface 214 - 2 .
- the communications sub-system 210 may further include one or more transceivers 204 - 1 - r , one or more queues or buffers 26 - 1 - t , a controller 208 , a network state module 212 , a power management interface 214 - 1 , and a control policy module 216 .
- the power management module 130 may further include a power source 212 , a power management controller 234 , and one or more power control timers 236 .
- the power management module 130 may also include a power management interface 214 - 3 .
- the interfaces 214 - 1 , 214 - 2 and 214 - 3 may be coupled to a communications bus 220 .
- FIG. 2 may show a limited number of elements in a certain arrangement by way of example, it can be appreciated that more or less elements may be employed in different arrangements for a given implementation.
- the managed power system 120 may include any electrical or electronic elements of the nodes 110 - 1 - m consuming power from the power source 212 and suitable for power management operations.
- Power management techniques allow certain components of an electronic device or system (e.g., a computer system) to be powered down or put in an idle mode or sleep mode that requires less power than while in active operation, thereby reducing the total amount of energy consumed by a device over some period of time.
- the power management techniques may be implemented by power gating and/or clock gating various hardware elements of the managed power system 120 , thereby conserving battery power.
- the managed power system 120 may include various electrical or electronic elements of the nodes 110 - 1 - m that can operate in various power states drawing multiple levels of power from the power source 212 as controlled by the power management controller 234 of the power management module 130 .
- the various power states may be defined by any number of power management schemes. In some cases, for example, the power states may be defined in accordance with the Advanced Configuration and Power Interface (ACPI) series of specifications, including their progeny, revisions and variants. In one embodiment, for example, the power states may be defined by the ACPI Revision 3.0a, Dec. 30, 2005 (the “ACPI Revision 3.0a Specification”).
- ACPI Advanced Configuration and Power Interface
- the ACPI series of specifications define multiple power states for electronic devices, such as global system states (Gx states), device power states (Dx states), sleeping states (Sx states), processor power states (Cx states), device and processor performance states (Px states), and so forth. It may be appreciated that other power states of varying power levels may be implemented as desired for a given set of design parameters and performance constraints. The embodiments are not limited in this context.
- the various electrical or electronic elements of the nodes 110 - 1 - m suitable for power management operations may be generally grouped or organized into the communications sub-system 210 and the computing sub-system 230 . It may be appreciated, however, that the sub-systems 210 , 230 are provided by way of example for purposes of clarity and not limitation, and the managed power system 120 may include other electrical or electronic elements of the nodes 110 - 1 - m suitable for power management operations by the power management module 130 .
- the nodes 110 - 1 - m may typically include a computer monitor or display, such as a digital electronic display or an analog electronic display.
- Examples of digital electronic displays may include electronic paper, nixie tube displays, vacuum fluorescent displays, light-emitting diode displays, electroluminescent displays, plasma display panels, liquid crystal displays, thin-film transistor displays, organic light-emitting diode displays, surface-conduction electron-emitter displays, laser television displays, carbon nanotubes, nanocrystal displays, and so forth.
- An example for analog electronic displays may include cathode ray tube displays.
- Computer monitors are often placed in a sleep mode when an operating system detects that the computer system has not received any input from a user for a defined period of time.
- Other system components may include digital cameras, touch screens, video recorders, audio recorders, storage devices, vibrating elements, oscillators, system clocks, controllers, and other platform or system architecture equipment. These other system components can also be placed in a sleep or powered down state in order to conserve energy when the components are not in use.
- the computer system monitor monitors input devices and wakes devices as needed. The embodiments are not limited in this context.
- the managed power system 120 may include the communications sub-system 210 .
- the communications sub-system 210 may comprise various communications elements arranged to communicate information and perform communications operations between the nodes 110 - 1 - m .
- suitable communications elements may include any electrical or electronic element designed to communicate information over the communications links 140 - 1 , 140 - 2 , including without limitation radios, transmitters, receivers, transceivers, chipsets, amplifiers, filters, control logic, interfaces, network interfaces, network interface cards (NICs), antennas, antenna arrays, digital signal processors, baseband processors, communications processors, media access controllers, memory units, oscillators, clocks, and so forth.
- the managed power system 120 may include the computing sub-system 230 .
- the computing sub-system 230 may comprise various computing elements arranged to process information and perform computing operations for the nodes 110 - 1 - m .
- suitable computing elements may include any electrical or electronic element designed to perform logical operations or process information, including without limitation processors, microprocessors, chipsets, controllers, microcontrollers, embedded controllers, clocks, oscillators, audio cards, video cards, multimedia cards, peripherals, memory units, memory controllers, video controllers, audio controllers, multimedia controllers, bus controllers, hubs, and so forth.
- the power management module 130 may comprise a power source 212 .
- the power source 212 may be arranged to provide power to the elements of a node 110 - 1 - m in general, and the managed power system 120 in particular. In one embodiment, for example, the power source 212 may be operative to provide varying levels of power to the sub-systems 210 , 230 .
- the power source 212 may be implemented by a rechargeable battery, such as a removable and rechargeable lithium ion battery to provide direct current (DC) power, and/or an alternating current (AC) adapter to draw power from a standard AC main power supply.
- DC direct current
- AC alternating current
- the power management module 130 may include a power management controller 234 .
- the power management controller 234 may generally control power consumption for the managed power system 120 .
- the power management controller 234 may be operative to control varying levels of power provided to the sub-systems 210 , 230 in accordance with certain defined power states.
- the power management controller 234 may modify, switch, change or transition the power levels provided by the power source 212 to the sub-systems 210 , 230 to a higher or lower power level, thereby effectively modifying a power state for the sub-systems 210 , 230 .
- the power management module 130 may include one or more power control timers 236 .
- the power control timer 236 may be used by the power management controller 234 to maintain a certain power state for a given power state duration period or communications rate duration period.
- the power state duration period may represent a defined time interval one or more portions of the managed power system 120 is in a given power state.
- the communications rate duration period may represent a defined time interval the communications sub-system 210 communicates at a given communications rate.
- the power management controller 234 may switch the communications sub-system 210 from a higher power state to a lower power state for a defined time interval set by the power state duration period, and when the time interval has expired, switch the communications sub-system 210 to the higher power state.
- the power management controller 234 may switch the communications sub-system 210 from a faster communications rate to a slower communications rate for a defined time interval set by the communications rate duration period, and when the time interval has expired, switch the communications sub-system 210 to the faster communications rate.
- the sub-systems 210 , 230 and the power management module 130 may communicate various power management messages 240 - 1 - q via a communications bus 220 and the respective power management interfaces 214 - 1 , 214 - 2 , and 214 - 3 .
- an operating system typically utilizes standard techniques for communicating control information over a particular Input/Output (I/O) interconnect.
- I/O interconnects suitable for implementation as the communications bus 220 and associated interfaces 214 may include without limitation Peripheral Component Interconnect (PCI), PCI Express (PCIe), CardBus, Universal Serial Bus (USB), IEEE 1394 FireWire, and so forth.
- PCI Peripheral Component Interconnect
- PCIe PCI Express
- USB Universal Serial Bus
- IEEE 1394 FireWire and so forth.
- the communications sub-system 210 may include a network state module 212 .
- the network state module 212 may be arranged to monitor certain states or characteristics of the communications sub-system 210 , such as the network traffic activity of the communications connections 250 - 1 - v , capabilities information, communications operational states for communications state machines, and other operations for the various communications elements of the communications sub-system 210 .
- the network state module 212 may send communications power management messages 240 - 1 - q to the power management module 130 with the measured characteristics.
- the power management module 130 may generate power state information 260 for the managed power system 120 based in part on the communications power management messages 240 - 1 - q.
- the computing sub-system 230 may include a computing state module 232 .
- the computing state module 232 may be arranged to monitor certain states or characteristics of the computing sub-system 230 , such as the level of system activity, capabilities information, computing operations states for computing state machines, and other operations for the various computing elements of the computing sub-system 230 .
- the computing state module 232 may send computing power management messages 240 - 1 - q to the power management module 130 with the measured characteristics.
- the power management module 130 may generate power state information 260 for the managed power system 120 based in part on the computing power management messages 240 - 1 - q.
- the power management module 130 - 1 may perform power management operations for portions of the managed power system 120 - 1 of the node 110 - 1 based on power state information received from other portions of the node 110 - 1 .
- the power management module 130 - 1 for the node 110 - 1 may be operative to receive computing power state information from the computing state module 232 of the computing sub-system 230 - 1 for the managed power system 120 - 1 over the communications bus 220 .
- the power management module 130 - 1 may manage various communications power states and/or communications rates for the communications sub-system 210 - 1 of the managed power system 120 - 1 for the node 110 - 1 based on the computing power state information for the computing sub-system 230 - 1 .
- the power management module 130 - 1 and the sub-systems 210 - 1 , 230 - 1 may communicate the computing power state information over the communications bus 220 in accordance with various communications bus protocols.
- the computing power state information may represent information explicitly or implicitly related to power states for the computing sub-system 230 .
- the computing power state information may also represent various characteristics or attributes for the power states of the computing sub-system 230 , such as such as computing power states, idle durations, resume latencies, and so forth.
- the computing power state information may include without limitation a computing power state parameter, a computing idle duration parameter, a computing resume latency parameter, and so forth.
- the power management module 130 - 1 may control various power states for the managed power system 120 - 1 in accordance with one or more power management standards, such as the ACPI standard.
- the ACPI standard may be suitable for defining the various power states for a portion of the managed power system 120 - 1 , such as the computing sub-system 230 - 1 and/or the communications sub-system 210 - 1 .
- the power management module 130 - 1 may control power consumption for a processor and chipset of the communications sub-system 210 - 1 using different processor power consumption states (e.g., C0, C1, C2, and C3) as defined by the ACPI Revision 3.0a Specification.
- the power management module 130 - 1 may send power control commands to the computing sub-system 230 - 1 over the communications bus 220 and interfaces 214 - 2 , 214 - 3 .
- the power management module 130 may control power consumption for the computing sub-system 230 using an abbreviated set of power states from the ACPI Revision 3.0a Specification referred to as system power states.
- the system power states define various power states specifically designed for the computing elements processing information for the nodes 110 - 1 - m . Examples for the various system power states may be shown in Table 1 as follows:
- S0 (On) This power state indicates that the system is active and in full power mode.
- S0i1 (Idle 1): This power state indicates that the system Duration, Latency is active and in lower power mode than S0.
- S0i2 (Idle 2): This power state indicates that the system Duration, Latency is active and in lower power mode than S0i1.
- S0i3 (Idle 3): This power state indicates that the system Duration, Latency is active and in lower power mode than S0i2.
- S2 (Off) This power state indicates that the system is inactive and in off mode.
- the system power states range from S0 to S2, where the S0 power state represents the highest power state with the maximum power draw, the S0i1-S0i3 power states represents incrementally lower power states relative to the S0 power state with correspondingly lower power draws, and the S2 power state represents the lowest power state with the minimum power draw (or none).
- the S0i1-S0i3 power states each have a pair of parameters referred to as a computing idle duration parameter and a computing resume latency parameter.
- the computing idle duration parameter represents an amount of time, or defined time interval, the computing sub-system 230 will remain in a given power state (e.g., S0i).
- the computing resume latency parameter represents an amount of time, or defined time interval, the computing sub-system 230 needs to exit a given power state (e.g., S0i) and enter a higher power state (e.g., S0).
- the computing idle duration parameter and the computing resume latency parameter for the system power states may be communicated by the power management messages 240 - 1 - q over the communications bus 220 .
- the computing state module 232 may be arranged to generate the computing idle duration parameter and the computing resume latency parameter based on the capabilities of the computing sub-system 230 - 1 .
- the computing sub-system 230 - 1 may include various processors operating at different speeds, such as a host, application or system processor.
- the computing sub-system 230 - 1 may include various memory units operating at different read/write speeds.
- the computing sub-system 230 - 1 may include various I/O devices, such as a keyboard, mouse, display, memory controllers, video controllers, audio controllers, storage devices (e.g., hard drives), expansion cards, co-processors, and so forth.
- the computing state module 232 may evaluate these and other computing capabilities of the computing sub-system 230 - 1 , and generate the appropriate computing idle duration parameter and the computing resume latency parameter based on the evaluated capabilities of the computing sub-system 230 - 1 .
- the power states for the sub-systems 210 - 1 , 230 - 1 may be similarly defined and in synchronization, in some embodiments the power states may also be differently defined and not synchronized for the sub-systems 210 - 1 , 230 - 1 .
- the power management module 130 - 1 may control power consumption for a radio or network interface of the communications sub-system 210 - 1 using different power states than defined for the computing sub-system 230 - 1 , as described further below.
- the communications sub-system 210 - 1 may include one or more transceivers 204 - 1 - r capable of operating at different communications rates.
- the transceivers 204 - 1 - r may comprise any communications elements capable of transmitting and receiving information over the various wired media types (e.g., copper, single-mode fiber, multi-mode fiber, etc.) and wireless media types (e.g., RF spectrum) for communications link 140 - 1 , 140 - 2 .
- wired media types e.g., copper, single-mode fiber, multi-mode fiber, etc.
- wireless media types e.g., RF spectrum
- Examples of the transceivers 204 - 1 - r may include various Ethernet-based PHY devices, such as a Fast Ethernet PHY device (e.g., 100Base-T, 100Base-TX, 100Base-T4, 100Base-T2, 100Base-FX, 100Base-SX, 100BaseBX, and so forth), a Gigabit Ethernet (GbE) PHY device (e.g., 1000Base-T, 1000Base-SX, 1000Base-LX, 1000Base-BX10, 1000Base-CX, 1000Base-ZX, and so forth), a 10 GbE PHY device (e.g., 10 GBase-SR, 10 GBase-LRM, 10 GBase-LR, 10 GBase-ER, 10 GBase-ZR, 10 GBase-LX4, 10 GBase-CX4, 10 GBase-Kx, 10 GBase-T, and so forth), a 100 GbE PHY device,
- the transceivers 204 - 1 - r may also comprise various radios or wireless PHY devices, such as for mobile broadband communications systems.
- mobile broadband communications systems include without limitation systems compliant with various Institute of Electrical and Electronics Engineers (IEEE) standards, such as the IEEE 802.11 standards for Wireless Local Area Networks (WLANs) and variants, the IEEE 802.16 standards for Wireless Metropolitan Area Networks (WMANs) and variants, and the IEEE 802.20 or Mobile Broadband Wireless Access (MBWA) standards and variants, among others.
- IEEE Institute of Electrical and Electronics Engineers
- MBWA Mobile Broadband Wireless Access
- the transceivers 204 - 1 - r may also be implemented as various other types of mobile broadband communications systems and standards, such as a Universal Mobile Telecommunications System (UMTS) system series of standards and variants, a Code Division Multiple Access (CDMA) 2000 system series of standards and variants (e.g., CDMA2000 1xRTT, CDMA2000 EV-DO, CDMA EV-DV, and so forth), a High Performance Radio Metropolitan Area Network (HIPERMAN) system series of standards as created by the European Telecommunications Standards Institute (ETSI) Broadband Radio Access Networks (BRAN) and variants, a Wireless Broadband (WiBro) system series of standards and variants, a Global System for Mobile communications (GSM) with General Packet Radio Service (GPRS) system (GSM/GPRS) series of standards and variants, an Enhanced Data Rates for Global Evolution (EDGE) system series of standards and variants, a High Speed Downlink Packet Access (HSDPA) system series of standards and variants, a High Speed Orthogon
- the transceivers 204 - 1 - r may individually or collectively operate at different communications rates or link rates.
- a single transceiver 204 - 1 may be capable of operating at various communications rates.
- the control policy module 216 may instruct the controller 208 to switch the single transceiver 204 - 1 to the desired communications rate.
- a first transceiver 204 - 1 may be capable of operating at a first communications rate
- a second transceiver 204 - 2 may be capable of operating at a second communications rate, and so forth.
- control policy module 216 may instruct the controller 208 to switch operations from the first transceiver 204 - 1 to one of the transceivers 204 - 2 - t arranged to provide the desired communications rate.
- the communications sub-system 210 - 1 may include one or more buffers 206 - 1 - t .
- the buffers 206 - 1 - t may be operative to store network packets received by the transceivers 204 - 1 - r , or ready for transmission by the transceivers 204 - 1 - r .
- the buffers 206 - 1 - t may be used to buffer packets until the communications rate for the transceiver has been completely switched or modified since switching communications rates for the transceivers 204 - 1 - r is typically not instantaneous.
- the buffers 206 - 1 - t may be implemented, for example, as standard First-In-First-Out (FIFO) queues.
- FIFO First-In-First-Out
- the communications sub-system 210 - 1 may include a controller 208 .
- the controller 208 may be arranged to control switching between communications rates by the transceivers 204 - 1 - r .
- the controller 208 may be arranged to implement fast switching of communications rates utilizing RPS techniques in accordance with the EEE project.
- RPS is a technique or mechanism for fast switching of communications rates, and is typically supported at both ends of a link.
- the communications sub-system 210 - 1 of the first node 110 - 1 may implement RPS operations
- the communications sub-system 210 - 2 of the second node 110 - 2 may also implement corresponding RPS operations.
- the RPS operations may be implemented in a number of different ways, such as through a MAC frame handshake operation, for example.
- the controller 208 may be implemented as any computing elements or logic device capable of executing logical operations, such as processors, microprocessors, chipsets, controllers, microcontrollers, embedded controllers, and so forth.
- the communications sub-system 210 - 1 may include a control policy module 216 .
- the control policy module 216 may be arranged to implement one or more control policies to determine when the controller 208 should have the transceivers 204 - 1 - r switch communications rates.
- the control policy module 216 may implement control policies to enhance energy conservation for the nodes 110 - 1 - m .
- the control policy module 216 may implement control policies compatible with the EEE project.
- control policy module 216 may be operative to receive computing power state information and communications state information.
- the control policy module 216 may receive the computing power state information indirectly from the power management module 130 via the communications bus 220 and the interfaces 214 - 1 , 214 - 3 .
- the control policy module 216 may receive the computing power state information directly from the computing sub-system 230 via the communications bus 220 and the interfaces 214 - 1 , 214 - 2 .
- the control policy module 216 may receive the communications state information from the network state module 212 .
- the control policy module 216 may receive the computing power state information and/or the communications state information, and evaluate or compare the computing power state information and the communications state information against the control policies programmed for the control policy module 216 . The control policy module 216 may then determine a communications rate parameter for a transceiver 204 - 1 - r based on the analysis of the computing power state information and the communications state information.
- the communications rate parameter may represent a given communications rate output providing a given level of power consumption programmed for the given computing power state information and communications state information inputs.
- the control policy module 216 may instruct the controller 208 to switch, change, transition or otherwise modify a communications rate for a transceiver 204 - 1 - r based on the communications rate parameter.
- the control policy module 216 may implement various types of control policies or rules to control when the controller 208 should switch communications rates.
- the control policy module 216 may receive a computing power state parameter, a computing idle duration parameter and/or a computing resume latency parameter as the computing power state information.
- the computing power state parameter may represent a computing power state for the computing sub-system 230 .
- the computing power state parameter may be generated, for example, by the power management controller 234 based on the computing power state information received from the computing sub-system 230 .
- control policy module 216 may determine the communications rate parameter for the transceivers 204 - 1 - r based on the computing power state parameter. For example, the control policy module 216 may have access to various control policies, rules or a lookup table (LUT) having certain communications rate parameters corresponding to certain computing power state parameters, examples of which may be shown in Table 2 as follows:
- CR0 Full rate (e.g., 100 Gb/s)
- S0i1 (Idle 1): CR1—Next fastest rate (e.g., 10 Gb/s) Duration, Latency S0i2 (Idle 2): CR2—Next fastest rate (e.g., 100 Mb/s) Duration, Latency S0i3 (Idle 3): CR3—Next fastest rate (e.g., 10 Mb/s) Duration, Latency S2 (Off)
- CR4 Lowest rate (e.g., 0 Mb/s)
- the computing power state parameter representing the highest power state S0 for the computing sub-system 230 - 1 may have a corresponding communications rate parameter representing the fastest communications rate CR0 for the communications sub-system 210 - 1 .
- control policy module 216 When the control policy module 216 receives the computing power state information with a computing power state parameter representing S0, for example, the control policy module 216 may access the information of Table 2 to determine the communications rate parameter of CR0, and pass the communications rate parameter to the controller 208 . The controller 208 may then switch the transceivers 204 - 1 - r to the communications rate CR0 identified by the communications rate parameter.
- control policy module 216 may determine the communications rate parameter for the transceivers 204 - 1 - r based on the computing power state parameter and other information, such as various types of computing power state information, various types of communications state information, and so forth.
- the control policy module 216 may implement various control policies or rules to implement the various other types of information used to select a communications rate for the communications sub-system 210 - 1 at any given moment, thereby improving power management of the nodes 110 - 1 - m.
- control policy module 216 may determine the communications rate parameter for the transceivers 204 - 1 - r based on the computing power state parameter and various types of the communications state information, such as a network utilization parameter.
- the network state module 212 may be operative to monitor various communications connections 250 - 1 - v for one or both of the communications links 140 - 1 , 140 - 2 for a defined time period.
- the network state module 212 may calculate an average transmit period and an average receive period for the communications connections 250 - 1 - v , and determine a network link utilization parameter based on the average transmit period and the average receive period.
- the control policy module 212 may receive the network link utilization parameter as the communications state information, and determine the communications rate parameter for the transceiver 204 - 1 - r based on the computing power state information and the network link utilization parameter.
- the computing power state parameter is set at S0i2
- the corresponding communications rate parameter for S0i2 is CR2.
- the network link utilization parameter indicates a high level of utilization of the communications connections 250 - 1 - v , thereby implying a higher traffic load for the communications links 140 - 1 , 140 - 2 .
- the control policy module 216 may evaluate the network link utilization parameter, and select a communications rate parameter of CR1 rather than CR2 to account for the higher network link utilization parameter.
- control policy module 216 may determine the communications rate parameter for the transceivers 204 - 1 - r based on the computing power state parameter and various types of the communications state information, such as a buffer utilization parameter.
- the control policy module 216 may be arranged to switch link rates based on thresholds in input and/or output buffers 206 - 1 - t . If a queue or buffer 206 - 1 - t is above a certain threshold (or watermark), for example, then the control policy module 216 may instruct the controller 208 to switch the transceivers 204 - 1 - r to a higher link rate.
- the control policy module 216 may instruct the controller 208 to switch the transceivers 204 - 1 - r to a lower link rate.
- the network state module 212 may be arranged to compare a number of packets in a buffer 206 - 1 - t with a threshold value to form the buffer utilization parameter.
- the threshold value may represent a high watermark value or a low watermark value for the buffer 206 - 1 - t .
- the network state module 212 may determine a buffer utilization parameter based on the comparison results.
- the computing power state parameter is set at S0i2, and the corresponding communications rate parameter for S0i2 is CR2.
- the buffer utilization parameter indicates the number of packets stored by the buffers 206 - 1 - t is below a low watermark value, thereby implying a lower traffic load for the communications links 140 - 1 , 140 - 2 .
- the control policy module 216 may evaluate the buffer utilization parameter, and select a communications rate parameter of CR3 rather than CR2 to account for the lower buffer utilization parameter.
- control policy module 216 may determine the communications rate parameter for the transceivers 204 - 1 - r based on the computing power state parameter and various other types of computing power state information, such as a computing idle duration parameter and a computing resume latency parameter.
- the computing idle duration parameter represents a time interval the computing sub-system 230 will be in an idle state
- the computing resume latency parameter represents a time interval the computing sub-system 230 needs to switch power states.
- the computing power state parameter is set at S0i2
- the corresponding communications rate parameter for S0i2 is CR2.
- the control policy module 216 may evaluate the computing idle duration parameter and the computing resume latency parameter, and select a communications rate parameter of CR1 rather than CR2 to account for an anticipated switch to a higher power state by the computing sub-system 230 - 1 .
- control policy module 216 may determine the communications rate parameter for the transceivers 204 - 1 - r based on the computing power state parameter, the computing idle duration parameter, the computing resume latency parameter, and the communications state information.
- the control policy module 216 may have multiple control policies or rules for each parameter similar to the previous examples, and select a communications rate for the transceivers 204 - 1 - r accordingly.
- the power management controller 234 may perform power management directly by receiving communications state information from the communications sub-system 210 - 1 , communications power state information from the communications sub-system 210 - 1 , and/or the computing power state information from the computing sub-system 230 - 1 , and determine a communications power state parameter appropriate for the communications sub-system 210 - 1 .
- the power states for the communications sub-system 210 - 1 and the computing sub-system 230 - 1 may be similarly defined and in synchronization.
- the power management controller 234 may match the communications power state with the computing power state.
- the communications power state information may also be differently defined and not synchronized for the sub-systems 210 , 230 .
- the power management module 130 - 1 may control power consumption for a radio or network interface of the communications sub-system 210 - 1 using different power states than defined for the computing sub-system 230 - 1 .
- the power management module 130 - 1 may control power consumption for the communications sub-system 210 - 1 using a set of power states referred to as network link power management (NLPM) power states.
- NLPM network link power management
- the NLPM power states define various network link power states specifically designed for the communications elements of the communications sub-system 210 - 1 communicating information over the given communications links 140 - 1 , 140 - 2 . Examples for the various NLPM power states may be shown in Table 3 as follows:
- NLPM Power State Description NL0 (On) This power state indicates that the network link is active and in full power mode.
- NL1 (Idle) This power state indicates that the network Duration, Latency link is active and in low power mode.
- NL2 Sheep
- NL3 This power state indicates that the network link is inactive and in off mode.
- the NLPM power states range from NL0 to NL3, where the NL0 power state represents the highest power state with the maximum power draw, the NL1 and NL2 power states represent incrementally lower power states relative to the NL0 power state with correspondingly lower power draws, and the NL3 power state represents the lowest power state with the minimum power draw (or none).
- the power management controller 234 may switch the communications sub-system 210 - 1 to a communications power state (e.g., NL0-NL3) based on the computing power state parameter for the computing sub-system 230 - 1 .
- the power management controller 234 may utilize various parameters associated with the NLPM power states, such as a communications idle duration parameter and a communications resume latency parameter.
- the communications idle duration parameter represents an amount of time, or defined time interval, the network link or communications sub-system 210 - 1 will remain in a given power state (e.g., NL1, NL2).
- the communications idle duration parameter allows the sub-systems 210 - 1 , 230 - 1 to enter and exit the lower power states with a deterministic manner.
- the communications resume latency parameter represents an amount of time, or defined time interval, the network link or communications sub-system 210 - 1 needs to exit a given power state (e.g., NL1, NL2) and enter a higher power state (e.g., NL0).
- the communications resume latency parameter allows the sub-systems 210 - 1 , 230 - 1 to determine how soon it can expect the communications sub-system 210 - 1 to wake up and be ready for providing services such as out-going transmission.
- the communications idle duration parameter and the communications resume latency parameter for the NLPM power states may be generated by the network state module 212 , and communicated by the power management messages 240 - 1 - q over the communications bus 220 .
- the network state module 212 may be arranged to generate the communications idle duration parameter and the communications resume latency parameter based on the capabilities of the communications sub-system 210 - 1 .
- the communications sub-system 210 - 1 may implement various buffers to store information received from the communications connections 250 - 1 - v , such as network packets, and forward the information for servicing and processing by the computing sub-system 230 - 1 .
- the communications sub-system 210 - 1 may also implement various buffers to store information received from the communications bus 220 , such as network packets, and forward the information for communications by the communications sub-system 210 - 1 to other nodes 110 - 2 - m over the communications connections 250 - 1 - v via the communications links 140 - 1 , 140 - 2 .
- the communications sub-system 210 - 1 may include various wired or wireless transceiver operating at different communications speeds, such as the IEEE 802.3-2005 standard 10 Gigabit Ethernet (10 GbE or 10 GigE), the IEEE 802.3ba proposed standard 100 Gigabit Ethernet (100 GbE or 100 GigE), and so forth.
- the communications sub-system 210 - 1 may include various processors operating at different speeds, such as baseband or communications processor.
- the network state module 212 may monitor the rate of information being received over the communications connections 250 - 1 - v via the communications links 140 - 1 , 140 - 2 .
- the network state module 212 of the communications sub-system 210 - 1 may monitor the communications links 140 - 1 , 140 - 2 to measure packet inter-arrival times.
- communications capabilities may include other network traffic load measurements on the communications links 140 - 1 , 140 - 2 (e.g., synchronous traffic, asynchronous traffic, burst traffic, and so forth), a signal-to-noise ratio (SNR), a received signal strength indicator (RSSI), throughput of the communications bus 220 , physical layer (PHY) speed, power state information 260 for other nodes 110 - 2 - m received via one or more PMPDU 150 - 1 - s , and so forth.
- SNR signal-to-noise ratio
- RSSI received signal strength indicator
- PHY physical layer
- the network state module 212 may evaluate these and other network or communications capabilities of the communications sub-system 210 - 1 , and generate the appropriate communications idle duration parameter and the communications resume latency parameter based on the evaluated capabilities of the communications sub-system 210 - 1 .
- the power management controller 234 may use any of these parameters in various combinations to determine an appropriate communications power state for the communications sub-system 210 - 1 , and send a power management message 240 - 1 - q to the communications sub-system 210 - 1 with a communications power state parameter to place the communications sub-system 210 - 1 in a communications power state (e.g., an NLPM power state NL0-NL3) corresponding to the communications power state parameter.
- a communications power state e.g., an NLPM power state NL0-NL3
- FIG. 3 illustrates a logic flow 300 in accordance with one or more embodiments.
- the logic flow 300 may be performed by various systems and/or devices and may be implemented as hardware, software, and/or any combination thereof, as desired for a given set of design parameters or performance constraints.
- the logic flow 300 may be implemented by a logic device (e.g., processor) and/or logic (e.g., instructions, data, and/or code) to be executed by a logic device.
- a logic device e.g., processor
- logic e.g., instructions, data, and/or code
- the logic flow 300 may illustrate various operations for the nodes 110 - 1 - m in general, and the managed power system 120 and the power management module 130 in particular. As shown in FIG. 3 , the logic flow 300 may receive computing power state information by a control policy module at block 302 . The logic flow 300 may receive communications state information by the control policy module at block 304 . The logic flow 300 may determine a communications rate parameter for a transceiver based on the computing power state information and the communications state information at block 306 . The logic flow 300 may modify a communications rate for the transceiver based on the communications rate parameter at block 308 . The embodiments are not limited in this context.
- the logic flow 300 may receive computing power state information by a control policy module at block 302 .
- the control policy module 216 may receive computing power state information indirectly from the power management controller 234 via the communications bus 220 and interfaces 214 - 1 , 214 - 3 , or directly from the computing sub-system 230 via the communications bus 220 and interfaces 214 - 1 , 214 - 2 .
- the computing power state information may include without limitation a computing power state parameter, a computing idle duration parameter, a computing resume latency parameter, and so forth.
- the logic flow 300 may receive communications state information by the control policy module at block 304 .
- the control policy module 216 may receive communications state information from the network state module 212 .
- the communications state information may include without limitation a network utilization parameter, a buffer utilization parameter, and so forth.
- the logic flow 300 may determine a communications rate parameter for a transceiver based on the computing power state information and the communications state information at block 306 .
- the control policy module 216 may determine a communications rate parameter (e.g., CR0-CR4) for a transceiver 204 - 1 - r based on the computing power state information and the communications state information.
- a communications rate parameter e.g., CR0-CR4
- the logic flow 300 may modify a communications rate for the transceiver based on the communications rate parameter at block 308 .
- the control policy module 216 may modify a communications rate for the transceiver 204 - 1 - r based on the communications rate parameter.
- FIG. 4 illustrates a logic flow 400 in accordance with one or more embodiments.
- the logic flow 400 may be performed by various systems and/or devices and may be implemented as hardware, software, and/or any combination thereof, as desired for a given set of design parameters or performance constraints.
- the logic flow 300 may be implemented by a logic device (e.g., processor) and/or logic (e.g., instructions, data, and/or code) to be executed by a logic device.
- a logic device e.g., processor
- logic e.g., instructions, data, and/or code
- the logic flow 400 may illustrate various operations for the nodes 110 - 1 - m in general, and the managed power system 120 and the power management module 130 in particular.
- the illustrated embodiment shown in FIG. 4 described a more detailed logic flow for implementing a control policy for the control policy module 216 of the communications sub-system 210 - 1 .
- the power management controller 234 may receive at block 402 power management information from various sources of a node 110 - 1 - m , including an operating system (OS), various device drivers, various devices and so forth.
- the power management controller 234 may determine a computing power state parameter for the computing sub-system 230 - 1 using the power management information at block 404 .
- OS operating system
- the power management controller 234 may send the computing power state parameter to the control policy module 216 , which is received as one input for the control policy module 216 .
- the control policy module 216 may also receive a second input from the network state module 212 .
- the network state module 212 may start a network link utilization timer at block 420 , and calculate one or more network link utilization parameters at block 422 .
- the network state module 212 may determine whether the network utilization parameter is above a certain threshold value at diamond 424 . If not, the network state module 212 may continue to re-calculate the network link utilization parameters at blocks 420 , 422 until the network link utilization parameters are above the threshold value at diamond 424 .
- the network state module 212 may pass the network link utilization parameters to the control policy module 216 as the second input.
- the control policy module 216 may take the first and second inputs, and determine a communications rate parameter for the communications sub-system 210 - 1 using the inputs.
- the controller 208 may receive the communications rate parameter from the control policy module 216 , and initiate a modification in a communications rate for one or more transceivers 204 - 1 - r at block 408 .
- the controller 208 may perform flow control operations to modify the transceivers 204 - 1 - r of the communications sub-system 210 - 1 of the first node 110 - 1 , as well as one or more transceivers of a network endpoint communicating with the first node 110 - 1 , such as the transceivers 204 - 1 - r of the communications sub-system 210 - 2 of the second node 110 - 2 .
- the communications sub-system 210 - 1 may continue to receive transmit and receive packets for the transceivers 204 - 1 - r of the communications sub-system 210 - 1 at block 412 .
- the controller 208 may store the transmit and receive packets in one or more of the buffers 206 - 1 - t during switching operations at block 414 .
- the controller 208 may determine whether the switching operations are complete at diamond 416 . If not, the controller 208 may continue buffering the packets at block 412 , 414 until the switching operations are completed. Once the switching operations are completed at diamond 416 , the communications sub-system 210 - 1 may continue transmit and receive operations at block 418 .
- various embodiments may be implemented as an article of manufacture.
- the article of manufacture may include a computer-readable medium or a storage medium arranged to store logic and/or data for performing various operations of one or more embodiments. Examples of computer-readable media or storage media may include, without limitation, those examples as previously described.
- the article of manufacture may comprise a magnetic disk, optical disk, flash memory or firmware containing computer program instructions suitable for execution by a general purpose processor or application specific processor. The embodiments, however, are not limited in this context.
- Various embodiments may be implemented using hardware elements, software elements, or a combination of both.
- hardware elements may include any of the examples as previously provided for a logic device, and further including microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, and so forth), integrated circuits, logic gates, registers, semiconductor device, chips, microchips, chip sets, and so forth.
- Examples of software elements may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application program interfaces (API), instruction sets, computing code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. Determining whether an embodiment is implemented using hardware elements and/or software elements may vary in accordance with any number of factors, such as desired computational rate, power levels, heat tolerances, processing cycle budget, input data rates, output data rates, memory resources, data bus speeds and other design or performance constraints, as desired for a given implementation.
- Coupled and “connected” along with their derivatives. These terms are not necessarily intended as synonyms for each other. For example, some embodiments may be described using the terms “connected” and/or “coupled” to indicate that two or more elements are in direct physical or electrical contact with each other. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Power Sources (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Transfer Systems (AREA)
- Communication Control (AREA)
Abstract
Techniques for communications based power management based on system states are described. An apparatus may comprise a communications sub-system having a control policy module, a controller and a first transceiver capable of operating at different communications rates. The control policy module may be operative to receive computing power state information and communications state information, determine a communications rate parameter for the first transceiver based on the computing power state information and the communications state information, and instruct the controller to modify a communications rate for the first transceiver based on the communications rate parameter. Other embodiments are described and claimed.
Description
- This application is a non-provisional of, and claims priority to U.S. patent application Ser. No. 12/208,824 titled “TECHNIQUES FOR COMMUNICATIONS POWER MANAGEMENT BASED ON SYSTEM STATES” filed on Sep. 11, 2008 (Docket No. P26508), which is a non-provisional application of, and claims priority to U.S. Patent Provisional Application Ser. No. 60/973,038 titled “TECHNIQUES FOR COMMUNICATIONS POWER MANAGEMENT BASED ON SYSTEM STATES” filed on Sep. 17, 2007 (Docket No. P26508Z), and is related to U.S. Patent Provisional Application Ser. No. 60/973,031 titled “BUFFERING TECHNIQUES FOR POWER MANAGEMENT” filed on Sep. 17, 2007 (Docket No. P26506Z), U.S. Patent Provisional Application Ser. No. 60/973,035 titled “TECHNIQUES FOR COMMUNICATIONS BASED POWER MANAGEMENT” filed on Sep. 17, 2007 (Docket No. P26507Z), and U.S. Patent Provisional Application Ser. No. 60/973,044 titled “TECHNIQUES FOR COLLABORATIVE POWER MANAGEMENT FOR HETEROGENEOUS NETWORKS” filed on Sep. 17, 2007 (Docket No. P26509Z), all three of which are hereby incorporated by reference in their entirety.
- Power management for electronic devices such as computer systems play an important part in conserving energy, managing heat dissipation, and improving overall system performance. Modern computers systems are increasingly designed to be used in settings where a reliable external power supply is not available making power management to conserve energy important. Power management techniques allow certain components of a computer system to be powered down or put in a sleep mode that requires less power than while in active operation, thereby reducing the total amount of energy consumed by a device over some period of time. Energy conservation is especially important for mobile devices to conserve battery power. Even when reliable external power supplies are available careful power management within the computing system can reduce heat produced by the system enabling improved performance of the system. Computing systems generally have better performance at lower ambient temperatures because key components can run at higher speeds without damaging their circuitry. Consequently, there are many advantages to enhancing power management for electronic devices.
-
FIG. 1 illustrates one embodiment of a communications system. -
FIG. 2 illustrates one embodiment of an apparatus. -
FIG. 3 illustrates one embodiment of a first logic diagram. -
FIG. 4 illustrates one embodiment of a second logic diagram. - Various embodiments may comprise one or more elements. An element may comprise any structure arranged to perform certain operations. Each element may be implemented as hardware, software, or any combination thereof, as desired for a given set of design parameters or performance constraints. Although an embodiment may be described with a limited number of elements in a certain topology by way of example, the embodiment may include more or less elements in alternate topologies as desired for a given implementation. It is worthy to note that any reference to “one embodiment” or “an embodiment” means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. The appearances of the phrase “in one embodiment” in various places in the specification are not necessarily all referring to the same embodiment.
- Various embodiments may be generally directed to techniques for communications power management based on system or platform power states. Some embodiments may be particularly directed to enhanced power management techniques to manage power states for a communications portion of a node using computing power state information for a computing portion of the node. In one embodiment, for example, the computing power state information may be communicated over a communications bus and uniform interfaces between the various portions of a node using various power management messages. Examples for a node may include various types of heterogeneous network endpoint and infrastructure devices or resources, such as computers, servers, switches, routers, bridges, gateways, and so forth. The computing power state information may indicate, for example, whether a computing portion of a given node is operating in a power-managed state or a full-computation state, the duration for a power-managed state, a resume latency to exit from a power-managed state, and other power related characteristics for the computing portion of the node. The computing power state information may be used to perform power management operations for the communications portion of the node. For example, the computing power state information may be used by a control policy to select a communications rate or link rate for the communications portion of the node, thereby directly or indirectly selecting a power state for the communications portion of the node. In another example, the computing power state information may be used to directly switch the communications portion of the node to another power state. The power management techniques may be implemented, for example, by power gating and/or clock gating various hardware elements of a node, thereby conserving battery power.
- In one embodiment, an apparatus such as a network device may include a managed power system and a power management module to manage power states for the managed power system. The managed power system may comprise, for example, any devices, components, modules, circuits, or other portions of the node drawing power from a power source, such as a battery. In one embodiment, for example, the managed power system may comprise a computing sub-system. The computing sub-system may include a computing state module operative to determine computing power state information. The computing power state information may include, for example, power states for the computing sub-system, as well as one or more parameters representing certain characteristics of the power states, such as idle durations, resume latencies, and so forth. The computing state module may send a power management message with the computing power state information to the power management module.
- The power management module may be operative to communicate power state information with the computing sub-system and the communications sub-system utilizing various power management messages communicated over a communications bus and appropriate interfaces for the node. The power management module may include a power management controller operative to receive the power management message, retrieve the computing power state information from the power management message, and determine a computing power state parameter for the computing sub-system. The power management controller may send the computing power state information, including the computing power state parameter, to a communications sub-system of the managed power system.
- The managed power system may further comprise a communications sub-system. The communications sub-system may include a control policy module and one or more transceivers capable of operating at different communications rates. The control policy module may be operative to receive computing power state information from the power management module, and communications state information from a network state module of the communications sub-system, and determine a communications rate parameter for the one or more transceivers based on the computing power state information and the communications state information. The control policy module may direct a controller to modify a communications rate for the one or more transceivers based on the communications rate parameter. A lower communications rate typically lowers power consumption for the communications sub-system. In this manner, different portions of a node such as a network device may exchange, negotiate and synchronize power state information to improve or enhance power state management for the communications sub-system of the network device in order to facilitate energy conservation across the entire network device.
-
FIG. 1 illustrates a block diagram of acommunications system 100. In various embodiments, thecommunications system 100 may comprise multiple nodes 110-1-m. A node generally may comprise any physical or logical entity for communicating information in thecommunications system 100 and may be implemented as hardware, software, or any combination thereof, as desired for a given set of design parameters or performance constraints. AlthoughFIG. 1 may show a limited number of nodes in a certain topology by way of example, it can be appreciated that more or less nodes may be employed in different topologies for a given implementation. - In various embodiments, the
communications system 100 may comprise, or form part of, a wired communications system, a wireless communications system, or a combination of both. For example, thecommunications system 100 may include one or more nodes 110-1-m arranged to communicate information over one or more types of wired communications links, such as a wired communications link 140-1. Examples of the wired communications link 140-1 may include without limitation a wire, cable, bus, printed circuit board (PCB), Ethernet connection, peer-to-peer (P2P) connection, backplane, switch fabric, semiconductor material, twisted-pair wire, co-axial cable, fiber optic connection, and so forth. Thecommunications system 100 also may include one or more nodes 110-1-m arranged to communicate information over one or more types of wireless communications links, such as wireless shared media 140-2. Examples of the wireless shared media 140-2 may include without limitation a radio channel, infrared channel, radio-frequency (RF) channel, Wireless Fidelity (WiFi) channel, a portion of the RF spectrum, and/or one or more licensed or license-free frequency bands. In the latter case, the wireless nodes may include one more wireless interfaces and/or components for wireless communications, such as one or more radios, transmitters, receivers, transceivers, chipsets, amplifiers, filters, control logic, network interface cards (NICs), antennas, antenna arrays, and so forth. Examples of an antenna may include, without limitation, an internal antenna, an omni-directional antenna, a monopole antenna, a dipole antenna, an end fed antenna, a circularly polarized antenna, a micro-strip antenna, a diversity antenna, a dual antenna, an antenna array, and so forth. In one embodiment, certain devices may include antenna arrays of multiple antennas to implement various adaptive antenna techniques and spatial diversity techniques. - As shown in the illustrated embodiment of
FIG. 1 , thecommunications system 100 comprises multiple nodes 110-1-m. The nodes 110-1-m may comprise or be implemented as any type of fixed or mobile electronic device or resource, including a network device, network endpoint equipment, network infrastructure equipment, cellular radiotelephone network equipment, a processing system, a computer system, a computer sub-system, a computer, a workstation, a terminal, a server, a personal computer (PC), a laptop computer, an ultra-laptop computer, a portable computer, a handheld computer, a personal digital assistant (PDA), a cellular telephone, a smart phone, a router, a switch, a bridge, a gateway, a network appliance, a microprocessor, an integrated circuit, a programmable logic device (PLD), a digital signal processor (DSP), a processor, a circuit, a logic gate, a register, a microprocessor, an integrated circuit, a semiconductor device, a chip, a transistor, and so forth. In some embodiments, some of the nodes 110-1-m may represent heterogeneous network devices. In one embodiment, for example, the nodes 110-1-m may comprise various mobile computer systems (e.g., laptop computers, handheld computers, smart phones, cellular telephones, and so forth) utilizing a mobile power source, such as one or more batteries. - In various embodiments, the nodes 110-1-m may be arranged to communicate various types of information in multiple communications frames as represented by the power management packet data units (PMPDU) 150-1-s via the network or communications links 140-1, 140-2. In various embodiments, the nodes 110-1-m may be arranged to communicate control information related to power management operations. Examples of control information may include without limitation power information, state information, power state information, power management commands, command information, control information, routing information, processing information, system file information, system library information, software (e.g., operating system software, file system software, application software, game software), firmware, an application programming interface (API), a program, an applet, a subroutine, an instruction set, an instruction, computing code, logic, words, values, symbols, and so forth. The nodes 110-1-m may also be arranged to communicate media information, to include without limitation various types of image information, audio information, video information, AV information, and/or other data provided from various media sources.
- Although some of the nodes 110-1-m may comprise different network devices, each of the nodes 110-1-m may include a common number of elements as shown by the node 110-1. For example, the nodes 110-1-m may each include various power management elements to implement a power management scheme operative to perform power management operations for the nodes 110-1-m. In the illustrated embodiment shown in
FIG. 1 , for example, a first node 110-1 may include a managed power system 120-1 coupled to a power management module 130-1. The power management module 130-1 of the first node may be operative to communicate power state information with a second node (e.g., one of the nodes 110-2-m) over a communications connection established via the communications links 140-1, 140-2. - In general operation, the power management module 130-1 may manage various power states for the managed power system 120-1 of the node 110-1. The power state information may include past, present or future power states for one or more portions of a managed power system 120-1 of the node 110-1. In this manner, different portions of a managed power system 120-1 may exchange power state information to improve or enhance power state management for the node 110-1. For example, the power management module 130-1 may synchronize power management operations between the sub-systems 210-1, 230-1 of the managed power system 120-1, such as placing communications components of the communications sub-system 210-1 in a lower power state based on operations or anticipated operations for the computing components of the computing sub-system 230-1 for a given communications rate duration period. The lower power state for the communications sub-system 210-1 may be achieved, for example, by switching to a power state for the communications sub-system 210-1 (e.g., Active to Idle), or a lower link rate for the communications sub-system 210-1 (e.g., 10 Gb/s to 100 Mb/s).
- Although the node 110-1 is the only node shown in
FIG. 1 to include the managed power system 120-1 and the power management module 130-1, it may be appreciated that each of the nodes 110-1-m may include an identical or similar managed power system 120-1-n and power management module 130-1-p. For example, the node 110-2 may include a managed power system 120-2 coupled to a power management module 130-2, the node 110-3 may include the elements 120-3, 130-3, and so forth. Furthermore, the descriptions and examples of the structures and operations provided with reference to the managed power system 120-1 and the power management module 130-1 may also apply to the corresponding elements in the other nodes 110-2-m. Exemplary embodiments for the managed power system 120-1-n and the power management module 130-1-p may be described in more detail with reference toFIG. 2 . - The managed power system 120-1 and the power management module 130-1 may be suitable for various use scenarios or applications. In some embodiments, for example, the managed power system 120-1 and the power management module 130-1 may utilize enhanced power management techniques implemented in the form of one or more control policies for link rate management of a communications device in accordance with the Energy Efficient Ethernet (EEE) project. The goal of the EEE project is to reduce power consumption of network endpoint devices and infrastructure equipment. Many Ethernet communications links are idle most of the time, particularly for nodes implemented as desktop units (e.g., a personal computer or server). An EEE control policy attempts to match link rates with link utilization for power efficiency. Typically lower link rates consume less power. For example, savings potential may be 2 to 4 Watts (W) per link for a 1 Gigabit Per Second (Gb/s) link versus a 100 Megabits Per Second (Mb/s) link, and 10 to 20 W per link for a 10 Gb/s link versus a 1 Gb/s link. As a result, an existing network interface card (NIC) may lower the link rate to save power when entering lower power states for the NIC, such as a sleep power state, idle power state, off power state, and so forth. Switching between link rates, however, needs to be relatively fast to prevent dropping a connection with another endpoint, typically on the order of 1-10 milliseconds (ms) or less.
- To support fast switching between link rates, a communications portion of the nodes 110-1-m, such as a media access controller, may implement a rapid physical layer (PHY) selection (RPS) technique. RPS is a technique or mechanism for fast switching of link rates, and is typically supported at both ends of a link. RPS techniques may be implemented in a number of different ways, such as through a media access control (MAC) frame handshake operation, for example. RPS is typically limited, however, to rapid switching of link rates only.
- RPS needs a control policy to determine when to switch link rates. Designing a control policy for RPS involves balancing multiple design parameters and performance constraints. One fundamental performance trade-off, for example, is time in a given link rate versus packet delay. If design priority is given to lowest possible packet delay, then the network endpoint should only use the highest link rate at all times. If design priority is given to lowest possible energy use, then the network endpoint should only use the lowest link rate at all times. A given design solution attempts to have low and bounded packet delay with maximum energy savings. One way to provide this design solution is by triggering a switch in link rates based on threshold in output buffers. If a queue is above a certain threshold (or watermark) then the nodes 110-1-m switches to a higher link rate. If a queue is below a certain threshold (or watermark) then the network endpoint switches to a lower link rate. This type of control policy alone, however, may cause frequent oscillation between link rates, particularly when traffic is bursty, which is fairly typical for average users. Furthermore, this type of control policy may force the nodes 110-1-m to enter a higher link rate even when priority is given to energy conservation, such as when operating from a mobile power supply such as a battery. In some cases, for example, a user may desire a node 110-1-m to stay in a lower power state and maintain minimally tolerable network performance.
- Various embodiments attempt to solve these and other problems. Some embodiments attempt to improve power management for a node 110-1-m by implementing a control policy that supports RPS techniques while allowing a computer system to aggressively and proactively power gate and/or clock gate portions of the computer system. For example, the computer system can manage power levels and link rates for various communications elements based on the power levels and parameters of the computing elements, among other factors. To accomplish this, some embodiments utilize a parameterized communications device power management technique that interfaces with the platform power management architecture and conveys the idle duration, resume latency, and other computing power state information for the computing elements, components, modules, sub-systems or devices. By managing one or more power-related aspects of the communications portions of a node 110-1-m based on computing power state information, the node 110-1-m may realize enhanced energy conservation and utilize limited power resources such as batteries more efficiently.
-
FIG. 2 illustrates a more detailed block diagram for a managedpower system 120 and apower management module 130. In the illustrated embodiment shown inFIG. 2 , the managedpower system 120 may include acomputing sub-system 230 and acommunications sub-system 210. Thecomputing sub-system 230 may further include acomputing state module 232 and a power management interface 214-2. Thecommunications sub-system 210 may further include one or more transceivers 204-1-r, one or more queues or buffers 26-1-t, acontroller 208, anetwork state module 212, a power management interface 214-1, and acontrol policy module 216. Thepower management module 130 may further include apower source 212, apower management controller 234, and one or morepower control timers 236. Thepower management module 130 may also include a power management interface 214-3. The interfaces 214-1, 214-2 and 214-3 may be coupled to a communications bus 220. AlthoughFIG. 2 may show a limited number of elements in a certain arrangement by way of example, it can be appreciated that more or less elements may be employed in different arrangements for a given implementation. - In various embodiments, the managed
power system 120 may include any electrical or electronic elements of the nodes 110-1-m consuming power from thepower source 212 and suitable for power management operations. Power management techniques allow certain components of an electronic device or system (e.g., a computer system) to be powered down or put in an idle mode or sleep mode that requires less power than while in active operation, thereby reducing the total amount of energy consumed by a device over some period of time. The power management techniques may be implemented by power gating and/or clock gating various hardware elements of the managedpower system 120, thereby conserving battery power. - More particularly, the managed
power system 120 may include various electrical or electronic elements of the nodes 110-1-m that can operate in various power states drawing multiple levels of power from thepower source 212 as controlled by thepower management controller 234 of thepower management module 130. The various power states may be defined by any number of power management schemes. In some cases, for example, the power states may be defined in accordance with the Advanced Configuration and Power Interface (ACPI) series of specifications, including their progeny, revisions and variants. In one embodiment, for example, the power states may be defined by the ACPI Revision 3.0a, Dec. 30, 2005 (the “ACPI Revision 3.0a Specification”). The ACPI series of specifications define multiple power states for electronic devices, such as global system states (Gx states), device power states (Dx states), sleeping states (Sx states), processor power states (Cx states), device and processor performance states (Px states), and so forth. It may be appreciated that other power states of varying power levels may be implemented as desired for a given set of design parameters and performance constraints. The embodiments are not limited in this context. - In some embodiments, the various electrical or electronic elements of the nodes 110-1-m suitable for power management operations may be generally grouped or organized into the
communications sub-system 210 and thecomputing sub-system 230. It may be appreciated, however, that thesub-systems power system 120 may include other electrical or electronic elements of the nodes 110-1-m suitable for power management operations by thepower management module 130. For example, the nodes 110-1-m may typically include a computer monitor or display, such as a digital electronic display or an analog electronic display. Examples of digital electronic displays may include electronic paper, nixie tube displays, vacuum fluorescent displays, light-emitting diode displays, electroluminescent displays, plasma display panels, liquid crystal displays, thin-film transistor displays, organic light-emitting diode displays, surface-conduction electron-emitter displays, laser television displays, carbon nanotubes, nanocrystal displays, and so forth. An example for analog electronic displays may include cathode ray tube displays. Computer monitors are often placed in a sleep mode when an operating system detects that the computer system has not received any input from a user for a defined period of time. Other system components may include digital cameras, touch screens, video recorders, audio recorders, storage devices, vibrating elements, oscillators, system clocks, controllers, and other platform or system architecture equipment. These other system components can also be placed in a sleep or powered down state in order to conserve energy when the components are not in use. The computer system monitors input devices and wakes devices as needed. The embodiments are not limited in this context. - In various embodiments, the managed
power system 120 may include thecommunications sub-system 210. Thecommunications sub-system 210 may comprise various communications elements arranged to communicate information and perform communications operations between the nodes 110-1-m. Examples of suitable communications elements may include any electrical or electronic element designed to communicate information over the communications links 140-1, 140-2, including without limitation radios, transmitters, receivers, transceivers, chipsets, amplifiers, filters, control logic, interfaces, network interfaces, network interface cards (NICs), antennas, antenna arrays, digital signal processors, baseband processors, communications processors, media access controllers, memory units, oscillators, clocks, and so forth. - In various embodiments, the managed
power system 120 may include thecomputing sub-system 230. Thecomputing sub-system 230 may comprise various computing elements arranged to process information and perform computing operations for the nodes 110-1-m. Examples of suitable computing elements may include any electrical or electronic element designed to perform logical operations or process information, including without limitation processors, microprocessors, chipsets, controllers, microcontrollers, embedded controllers, clocks, oscillators, audio cards, video cards, multimedia cards, peripherals, memory units, memory controllers, video controllers, audio controllers, multimedia controllers, bus controllers, hubs, and so forth. - In various embodiments, the
power management module 130 may comprise apower source 212. Thepower source 212 may be arranged to provide power to the elements of a node 110-1-m in general, and the managedpower system 120 in particular. In one embodiment, for example, thepower source 212 may be operative to provide varying levels of power to thesub-systems power source 212 may be implemented by a rechargeable battery, such as a removable and rechargeable lithium ion battery to provide direct current (DC) power, and/or an alternating current (AC) adapter to draw power from a standard AC main power supply. - In various embodiments, the
power management module 130 may include apower management controller 234. Thepower management controller 234 may generally control power consumption for the managedpower system 120. In one embodiment, thepower management controller 234 may be operative to control varying levels of power provided to thesub-systems power management controller 234 may modify, switch, change or transition the power levels provided by thepower source 212 to thesub-systems sub-systems - In various embodiments, the
power management module 130 may include one or morepower control timers 236. Thepower control timer 236 may be used by thepower management controller 234 to maintain a certain power state for a given power state duration period or communications rate duration period. The power state duration period may represent a defined time interval one or more portions of the managedpower system 120 is in a given power state. The communications rate duration period may represent a defined time interval thecommunications sub-system 210 communicates at a given communications rate. For example, thepower management controller 234 may switch thecommunications sub-system 210 from a higher power state to a lower power state for a defined time interval set by the power state duration period, and when the time interval has expired, switch thecommunications sub-system 210 to the higher power state. Similarly, thepower management controller 234 may switch thecommunications sub-system 210 from a faster communications rate to a slower communications rate for a defined time interval set by the communications rate duration period, and when the time interval has expired, switch thecommunications sub-system 210 to the faster communications rate. - In order to coordinate power management operations for a node 110-1-m, the
sub-systems power management module 130 may communicate various power management messages 240-1-q via a communications bus 220 and the respective power management interfaces 214-1, 214-2, and 214-3. To manage power for all the devices in a system, an operating system typically utilizes standard techniques for communicating control information over a particular Input/Output (I/O) interconnect. Examples of various I/O interconnects suitable for implementation as the communications bus 220 and associated interfaces 214 may include without limitation Peripheral Component Interconnect (PCI), PCI Express (PCIe), CardBus, Universal Serial Bus (USB), IEEE 1394 FireWire, and so forth. - Referring again to
FIG. 2 , thecommunications sub-system 210 may include anetwork state module 212. Thenetwork state module 212 may be arranged to monitor certain states or characteristics of thecommunications sub-system 210, such as the network traffic activity of the communications connections 250-1-v, capabilities information, communications operational states for communications state machines, and other operations for the various communications elements of thecommunications sub-system 210. Thenetwork state module 212 may send communications power management messages 240-1-q to thepower management module 130 with the measured characteristics. Thepower management module 130 may generatepower state information 260 for the managedpower system 120 based in part on the communications power management messages 240-1-q. - Similarly, the
computing sub-system 230 may include acomputing state module 232. Thecomputing state module 232 may be arranged to monitor certain states or characteristics of thecomputing sub-system 230, such as the level of system activity, capabilities information, computing operations states for computing state machines, and other operations for the various computing elements of thecomputing sub-system 230. Thecomputing state module 232 may send computing power management messages 240-1-q to thepower management module 130 with the measured characteristics. Thepower management module 130 may generatepower state information 260 for the managedpower system 120 based in part on the computing power management messages 240-1-q. - In general operation, the power management module 130-1 may perform power management operations for portions of the managed power system 120-1 of the node 110-1 based on power state information received from other portions of the node 110-1. In some cases, for example, the power management module 130-1 for the node 110-1 may be operative to receive computing power state information from the
computing state module 232 of the computing sub-system 230-1 for the managed power system 120-1 over the communications bus 220. The power management module 130-1 may manage various communications power states and/or communications rates for the communications sub-system 210-1 of the managed power system 120-1 for the node 110-1 based on the computing power state information for the computing sub-system 230-1. The power management module 130-1 and the sub-systems 210-1, 230-1 may communicate the computing power state information over the communications bus 220 in accordance with various communications bus protocols. - The computing power state information may represent information explicitly or implicitly related to power states for the
computing sub-system 230. The computing power state information may also represent various characteristics or attributes for the power states of thecomputing sub-system 230, such as such as computing power states, idle durations, resume latencies, and so forth. In one embodiment, for example, the computing power state information may include without limitation a computing power state parameter, a computing idle duration parameter, a computing resume latency parameter, and so forth. - As previously described, the power management module 130-1 may control various power states for the managed power system 120-1 in accordance with one or more power management standards, such as the ACPI standard. The ACPI standard may be suitable for defining the various power states for a portion of the managed power system 120-1, such as the computing sub-system 230-1 and/or the communications sub-system 210-1. For example, the power management module 130-1 may control power consumption for a processor and chipset of the communications sub-system 210-1 using different processor power consumption states (e.g., C0, C1, C2, and C3) as defined by the ACPI Revision 3.0a Specification. The power management module 130-1 may send power control commands to the computing sub-system 230-1 over the communications bus 220 and interfaces 214-2, 214-3.
- In one embodiment, for example, the
power management module 130 may control power consumption for thecomputing sub-system 230 using an abbreviated set of power states from the ACPI Revision 3.0a Specification referred to as system power states. The system power states define various power states specifically designed for the computing elements processing information for the nodes 110-1-m. Examples for the various system power states may be shown in Table 1 as follows: -
TABLE 1 System Power State Description S0 (On) This power state indicates that the system is active and in full power mode. S0i1 (Idle 1): This power state indicates that the system Duration, Latency is active and in lower power mode than S0. S0i2 (Idle 2): This power state indicates that the system Duration, Latency is active and in lower power mode than S0i1. S0i3 (Idle 3): This power state indicates that the system Duration, Latency is active and in lower power mode than S0i2. S2 (Off) This power state indicates that the system is inactive and in off mode.
As shown in Table 1, the system power states range from S0 to S2, where the S0 power state represents the highest power state with the maximum power draw, the S0i1-S0i3 power states represents incrementally lower power states relative to the S0 power state with correspondingly lower power draws, and the S2 power state represents the lowest power state with the minimum power draw (or none). - Some of the system power states have associated parameters. For example, the S0i1-S0i3 power states each have a pair of parameters referred to as a computing idle duration parameter and a computing resume latency parameter. The computing idle duration parameter represents an amount of time, or defined time interval, the
computing sub-system 230 will remain in a given power state (e.g., S0i). The computing resume latency parameter represents an amount of time, or defined time interval, thecomputing sub-system 230 needs to exit a given power state (e.g., S0i) and enter a higher power state (e.g., S0). The computing idle duration parameter and the computing resume latency parameter for the system power states may be communicated by the power management messages 240-1-q over the communications bus 220. - In various embodiments, the
computing state module 232 may be arranged to generate the computing idle duration parameter and the computing resume latency parameter based on the capabilities of the computing sub-system 230-1. For example, the computing sub-system 230-1 may include various processors operating at different speeds, such as a host, application or system processor. In another example, the computing sub-system 230-1 may include various memory units operating at different read/write speeds. In still another example, the computing sub-system 230-1 may include various I/O devices, such as a keyboard, mouse, display, memory controllers, video controllers, audio controllers, storage devices (e.g., hard drives), expansion cards, co-processors, and so forth. Thecomputing state module 232 may evaluate these and other computing capabilities of the computing sub-system 230-1, and generate the appropriate computing idle duration parameter and the computing resume latency parameter based on the evaluated capabilities of the computing sub-system 230-1. - Although in some embodiments the power states for the sub-systems 210-1, 230-1 may be similarly defined and in synchronization, in some embodiments the power states may also be differently defined and not synchronized for the sub-systems 210-1, 230-1. For example, the power management module 130-1 may control power consumption for a radio or network interface of the communications sub-system 210-1 using different power states than defined for the computing sub-system 230-1, as described further below.
- In various embodiments, the communications sub-system 210-1 may include one or more transceivers 204-1-r capable of operating at different communications rates. The transceivers 204-1-r may comprise any communications elements capable of transmitting and receiving information over the various wired media types (e.g., copper, single-mode fiber, multi-mode fiber, etc.) and wireless media types (e.g., RF spectrum) for communications link 140-1, 140-2. Examples of the transceivers 204-1-r may include various Ethernet-based PHY devices, such as a Fast Ethernet PHY device (e.g., 100Base-T, 100Base-TX, 100Base-T4, 100Base-T2, 100Base-FX, 100Base-SX, 100BaseBX, and so forth), a Gigabit Ethernet (GbE) PHY device (e.g., 1000Base-T, 1000Base-SX, 1000Base-LX, 1000Base-BX10, 1000Base-CX, 1000Base-ZX, and so forth), a 10 GbE PHY device (e.g., 10 GBase-SR, 10 GBase-LRM, 10 GBase-LR, 10 GBase-ER, 10 GBase-ZR, 10 GBase-LX4, 10 GBase-CX4, 10 GBase-Kx, 10 GBase-T, and so forth), a 100 GbE PHY device, and so forth. The transceivers 204-1-r may also comprise various radios or wireless PHY devices, such as for mobile broadband communications systems. Examples of mobile broadband communications systems include without limitation systems compliant with various Institute of Electrical and Electronics Engineers (IEEE) standards, such as the IEEE 802.11 standards for Wireless Local Area Networks (WLANs) and variants, the IEEE 802.16 standards for Wireless Metropolitan Area Networks (WMANs) and variants, and the IEEE 802.20 or Mobile Broadband Wireless Access (MBWA) standards and variants, among others. The transceivers 204-1-r may also be implemented as various other types of mobile broadband communications systems and standards, such as a Universal Mobile Telecommunications System (UMTS) system series of standards and variants, a Code Division Multiple Access (CDMA) 2000 system series of standards and variants (e.g., CDMA2000 1xRTT, CDMA2000 EV-DO, CDMA EV-DV, and so forth), a High Performance Radio Metropolitan Area Network (HIPERMAN) system series of standards as created by the European Telecommunications Standards Institute (ETSI) Broadband Radio Access Networks (BRAN) and variants, a Wireless Broadband (WiBro) system series of standards and variants, a Global System for Mobile communications (GSM) with General Packet Radio Service (GPRS) system (GSM/GPRS) series of standards and variants, an Enhanced Data Rates for Global Evolution (EDGE) system series of standards and variants, a High Speed Downlink Packet Access (HSDPA) system series of standards and variants, a High Speed Orthogonal Frequency-Division Multiplexing (OFDM) Packet Access (HSOPA) system series of standards and variants, a High-Speed Uplink Packet Access (HSUPA) system series of standards and variants, and so forth. The embodiments are not limited in this context.
- The transceivers 204-1-r may individually or collectively operate at different communications rates or link rates. In one embodiment, for example, a single transceiver 204-1 may be capable of operating at various communications rates. In this case, when the
control policy module 216 determines the communications sub-system 210-1 should operate at a different communications rate, thecontrol policy module 216 may instruct thecontroller 208 to switch the single transceiver 204-1 to the desired communications rate. In another embodiment, for example, a first transceiver 204-1 may be capable of operating at a first communications rate, a second transceiver 204-2 may be capable of operating at a second communications rate, and so forth. When thecontrol policy module 216 determines the communications sub-system 210-1 should operate at a different communications rate, thecontrol policy module 216 may instruct thecontroller 208 to switch operations from the first transceiver 204-1 to one of the transceivers 204-2-t arranged to provide the desired communications rate. - In various embodiments, the communications sub-system 210-1 may include one or more buffers 206-1-t. The buffers 206-1-t may be operative to store network packets received by the transceivers 204-1-r, or ready for transmission by the transceivers 204-1-r. For example, the buffers 206-1-t may be used to buffer packets until the communications rate for the transceiver has been completely switched or modified since switching communications rates for the transceivers 204-1-r is typically not instantaneous. The buffers 206-1-t may be implemented, for example, as standard First-In-First-Out (FIFO) queues.
- In various embodiments, the communications sub-system 210-1 may include a
controller 208. Thecontroller 208 may be arranged to control switching between communications rates by the transceivers 204-1-r. In one embodiment, for example, thecontroller 208 may be arranged to implement fast switching of communications rates utilizing RPS techniques in accordance with the EEE project. RPS is a technique or mechanism for fast switching of communications rates, and is typically supported at both ends of a link. For example, the communications sub-system 210-1 of the first node 110-1 may implement RPS operations, and the communications sub-system 210-2 of the second node 110-2 may also implement corresponding RPS operations. The RPS operations may be implemented in a number of different ways, such as through a MAC frame handshake operation, for example. Thecontroller 208 may be implemented as any computing elements or logic device capable of executing logical operations, such as processors, microprocessors, chipsets, controllers, microcontrollers, embedded controllers, and so forth. - In various embodiments, the communications sub-system 210-1 may include a
control policy module 216. Thecontrol policy module 216 may be arranged to implement one or more control policies to determine when thecontroller 208 should have the transceivers 204-1-r switch communications rates. Thecontrol policy module 216 may implement control policies to enhance energy conservation for the nodes 110-1-m. For example, thecontrol policy module 216 may implement control policies compatible with the EEE project. - In one embodiment, the
control policy module 216 may be operative to receive computing power state information and communications state information. Thecontrol policy module 216 may receive the computing power state information indirectly from thepower management module 130 via the communications bus 220 and the interfaces 214-1, 214-3. Alternatively, thecontrol policy module 216 may receive the computing power state information directly from thecomputing sub-system 230 via the communications bus 220 and the interfaces 214-1, 214-2. Thecontrol policy module 216 may receive the communications state information from thenetwork state module 212. - The
control policy module 216 may receive the computing power state information and/or the communications state information, and evaluate or compare the computing power state information and the communications state information against the control policies programmed for thecontrol policy module 216. Thecontrol policy module 216 may then determine a communications rate parameter for a transceiver 204-1-r based on the analysis of the computing power state information and the communications state information. The communications rate parameter may represent a given communications rate output providing a given level of power consumption programmed for the given computing power state information and communications state information inputs. Thecontrol policy module 216 may instruct thecontroller 208 to switch, change, transition or otherwise modify a communications rate for a transceiver 204-1-r based on the communications rate parameter. - The
control policy module 216 may implement various types of control policies or rules to control when thecontroller 208 should switch communications rates. In one embodiment, for example, thecontrol policy module 216 may receive a computing power state parameter, a computing idle duration parameter and/or a computing resume latency parameter as the computing power state information. The computing power state parameter may represent a computing power state for thecomputing sub-system 230. The computing power state parameter may be generated, for example, by thepower management controller 234 based on the computing power state information received from thecomputing sub-system 230. - In one embodiment, the
control policy module 216 may determine the communications rate parameter for the transceivers 204-1-r based on the computing power state parameter. For example, thecontrol policy module 216 may have access to various control policies, rules or a lookup table (LUT) having certain communications rate parameters corresponding to certain computing power state parameters, examples of which may be shown in Table 2 as follows: -
TABLE 2 Computing Power State Parameter Communications Rate Parameter S0 (On) CR0—Fastest rate (e.g., 100 Gb/s) S0i1 (Idle 1): CR1—Next fastest rate (e.g., 10 Gb/s) Duration, Latency S0i2 (Idle 2): CR2—Next fastest rate (e.g., 100 Mb/s) Duration, Latency S0i3 (Idle 3): CR3—Next fastest rate (e.g., 10 Mb/s) Duration, Latency S2 (Off) CR4—Lowest rate (e.g., 0 Mb/s)
As shown in Table 2, for example, the computing power state parameter representing the highest power state S0 for the computing sub-system 230-1 may have a corresponding communications rate parameter representing the fastest communications rate CR0 for the communications sub-system 210-1. When thecontrol policy module 216 receives the computing power state information with a computing power state parameter representing S0, for example, thecontrol policy module 216 may access the information of Table 2 to determine the communications rate parameter of CR0, and pass the communications rate parameter to thecontroller 208. Thecontroller 208 may then switch the transceivers 204-1-r to the communications rate CR0 identified by the communications rate parameter. - In one embodiment, the
control policy module 216 may determine the communications rate parameter for the transceivers 204-1-r based on the computing power state parameter and other information, such as various types of computing power state information, various types of communications state information, and so forth. Thecontrol policy module 216 may implement various control policies or rules to implement the various other types of information used to select a communications rate for the communications sub-system 210-1 at any given moment, thereby improving power management of the nodes 110-1-m. - In one embodiment, the
control policy module 216 may determine the communications rate parameter for the transceivers 204-1-r based on the computing power state parameter and various types of the communications state information, such as a network utilization parameter. For example, thenetwork state module 212 may be operative to monitor various communications connections 250-1-v for one or both of the communications links 140-1, 140-2 for a defined time period. Thenetwork state module 212 may calculate an average transmit period and an average receive period for the communications connections 250-1-v, and determine a network link utilization parameter based on the average transmit period and the average receive period. Thecontrol policy module 212 may receive the network link utilization parameter as the communications state information, and determine the communications rate parameter for the transceiver 204-1-r based on the computing power state information and the network link utilization parameter. By way of example, assume the computing power state parameter is set at S0i2, and the corresponding communications rate parameter for S0i2 is CR2. Further assume the network link utilization parameter indicates a high level of utilization of the communications connections 250-1-v, thereby implying a higher traffic load for the communications links 140-1, 140-2. Thecontrol policy module 216 may evaluate the network link utilization parameter, and select a communications rate parameter of CR1 rather than CR2 to account for the higher network link utilization parameter. - In one embodiment, the
control policy module 216 may determine the communications rate parameter for the transceivers 204-1-r based on the computing power state parameter and various types of the communications state information, such as a buffer utilization parameter. Thecontrol policy module 216 may be arranged to switch link rates based on thresholds in input and/or output buffers 206-1-t. If a queue or buffer 206-1-t is above a certain threshold (or watermark), for example, then thecontrol policy module 216 may instruct thecontroller 208 to switch the transceivers 204-1-r to a higher link rate. If a queue or buffer 206-1-t is below a certain threshold (or watermark), for example, then thecontrol policy module 216 may instruct thecontroller 208 to switch the transceivers 204-1-r to a lower link rate. For example, thenetwork state module 212 may be arranged to compare a number of packets in a buffer 206-1-t with a threshold value to form the buffer utilization parameter. The threshold value may represent a high watermark value or a low watermark value for the buffer 206-1-t. Thenetwork state module 212 may determine a buffer utilization parameter based on the comparison results. By way of example, assume the computing power state parameter is set at S0i2, and the corresponding communications rate parameter for S0i2 is CR2. Further assume the buffer utilization parameter indicates the number of packets stored by the buffers 206-1-t is below a low watermark value, thereby implying a lower traffic load for the communications links 140-1, 140-2. Thecontrol policy module 216 may evaluate the buffer utilization parameter, and select a communications rate parameter of CR3 rather than CR2 to account for the lower buffer utilization parameter. - In one embodiment, the
control policy module 216 may determine the communications rate parameter for the transceivers 204-1-r based on the computing power state parameter and various other types of computing power state information, such as a computing idle duration parameter and a computing resume latency parameter. As previously described, the computing idle duration parameter represents a time interval thecomputing sub-system 230 will be in an idle state, and the computing resume latency parameter represents a time interval thecomputing sub-system 230 needs to switch power states. By way of example, assume the computing power state parameter is set at S0i2, and the corresponding communications rate parameter for S0i2 is CR2. Further assume the computing idle duration parameter is 100 millisecond (ms), and the computing resume latency parameter is 1 ms, thereby implying that the computing sub-system 230-1 will switch power states relatively soon with some time interval for the resume period. Thecontrol policy module 216 may evaluate the computing idle duration parameter and the computing resume latency parameter, and select a communications rate parameter of CR1 rather than CR2 to account for an anticipated switch to a higher power state by the computing sub-system 230-1. - In one embodiment, the
control policy module 216 may determine the communications rate parameter for the transceivers 204-1-r based on the computing power state parameter, the computing idle duration parameter, the computing resume latency parameter, and the communications state information. Thecontrol policy module 216 may have multiple control policies or rules for each parameter similar to the previous examples, and select a communications rate for the transceivers 204-1-r accordingly. - In addition to, or in lieu of, performing power management operations by using the
control policy module 216 to select a communications rate for the transceivers 204-1-r that saves energy, thepower management controller 234 may perform power management directly by receiving communications state information from the communications sub-system 210-1, communications power state information from the communications sub-system 210-1, and/or the computing power state information from the computing sub-system 230-1, and determine a communications power state parameter appropriate for the communications sub-system 210-1. For example, in some embodiments the power states for the communications sub-system 210-1 and the computing sub-system 230-1 may be similarly defined and in synchronization. In this case, thepower management controller 234 may match the communications power state with the computing power state. In some embodiments, however, the communications power state information may also be differently defined and not synchronized for thesub-systems -
TABLE 3 NLPM Power State Description NL0 (On) This power state indicates that the network link is active and in full power mode. NL1 (Idle): This power state indicates that the network Duration, Latency link is active and in low power mode. NL2 (Sleep): This power state indicates that the network Duration, Latency link is inactive and in sleep mode. NL3 (Off) This power state indicates that the network link is inactive and in off mode. - As shown in Table 3, the NLPM power states range from NL0 to NL3, where the NL0 power state represents the highest power state with the maximum power draw, the NL1 and NL2 power states represent incrementally lower power states relative to the NL0 power state with correspondingly lower power draws, and the NL3 power state represents the lowest power state with the minimum power draw (or none). In this case, the
power management controller 234 may switch the communications sub-system 210-1 to a communications power state (e.g., NL0-NL3) based on the computing power state parameter for the computing sub-system 230-1. In addition, thepower management controller 234 may utilize various parameters associated with the NLPM power states, such as a communications idle duration parameter and a communications resume latency parameter. The communications idle duration parameter represents an amount of time, or defined time interval, the network link or communications sub-system 210-1 will remain in a given power state (e.g., NL1, NL2). The communications idle duration parameter allows the sub-systems 210-1, 230-1 to enter and exit the lower power states with a deterministic manner. The communications resume latency parameter represents an amount of time, or defined time interval, the network link or communications sub-system 210-1 needs to exit a given power state (e.g., NL1, NL2) and enter a higher power state (e.g., NL0). The communications resume latency parameter allows the sub-systems 210-1, 230-1 to determine how soon it can expect the communications sub-system 210-1 to wake up and be ready for providing services such as out-going transmission. The communications idle duration parameter and the communications resume latency parameter for the NLPM power states may be generated by thenetwork state module 212, and communicated by the power management messages 240-1-q over the communications bus 220. - In various embodiments, the
network state module 212 may be arranged to generate the communications idle duration parameter and the communications resume latency parameter based on the capabilities of the communications sub-system 210-1. For example, the communications sub-system 210-1 may implement various buffers to store information received from the communications connections 250-1-v, such as network packets, and forward the information for servicing and processing by the computing sub-system 230-1. In another example, the communications sub-system 210-1 may also implement various buffers to store information received from the communications bus 220, such as network packets, and forward the information for communications by the communications sub-system 210-1 to other nodes 110-2-m over the communications connections 250-1-v via the communications links 140-1, 140-2. In yet another example, the communications sub-system 210-1 may include various wired or wireless transceiver operating at different communications speeds, such as the IEEE 802.3-2005 standard 10 Gigabit Ethernet (10 GbE or 10 GigE), the IEEE 802.3ba proposed standard 100 Gigabit Ethernet (100 GbE or 100 GigE), and so forth. In still another example, the communications sub-system 210-1 may include various processors operating at different speeds, such as baseband or communications processor. In still another example, thenetwork state module 212 may monitor the rate of information being received over the communications connections 250-1-v via the communications links 140-1, 140-2. In this example, thenetwork state module 212 of the communications sub-system 210-1 may monitor the communications links 140-1, 140-2 to measure packet inter-arrival times. Other examples of communications capabilities may include other network traffic load measurements on the communications links 140-1, 140-2 (e.g., synchronous traffic, asynchronous traffic, burst traffic, and so forth), a signal-to-noise ratio (SNR), a received signal strength indicator (RSSI), throughput of the communications bus 220, physical layer (PHY) speed,power state information 260 for other nodes 110-2-m received via one or more PMPDU 150-1-s, and so forth. Thenetwork state module 212 may evaluate these and other network or communications capabilities of the communications sub-system 210-1, and generate the appropriate communications idle duration parameter and the communications resume latency parameter based on the evaluated capabilities of the communications sub-system 210-1. Thepower management controller 234 may use any of these parameters in various combinations to determine an appropriate communications power state for the communications sub-system 210-1, and send a power management message 240-1-q to the communications sub-system 210-1 with a communications power state parameter to place the communications sub-system 210-1 in a communications power state (e.g., an NLPM power state NL0-NL3) corresponding to the communications power state parameter. -
FIG. 3 illustrates alogic flow 300 in accordance with one or more embodiments. Thelogic flow 300 may be performed by various systems and/or devices and may be implemented as hardware, software, and/or any combination thereof, as desired for a given set of design parameters or performance constraints. For example, thelogic flow 300 may be implemented by a logic device (e.g., processor) and/or logic (e.g., instructions, data, and/or code) to be executed by a logic device. For purposes of illustration, and not limitation, thelogic flow 300 is described with reference toFIGS. 1 and 2 . - The
logic flow 300 may illustrate various operations for the nodes 110-1-m in general, and the managedpower system 120 and thepower management module 130 in particular. As shown inFIG. 3 , thelogic flow 300 may receive computing power state information by a control policy module atblock 302. Thelogic flow 300 may receive communications state information by the control policy module atblock 304. Thelogic flow 300 may determine a communications rate parameter for a transceiver based on the computing power state information and the communications state information atblock 306. Thelogic flow 300 may modify a communications rate for the transceiver based on the communications rate parameter atblock 308. The embodiments are not limited in this context. - In one embodiment, the
logic flow 300 may receive computing power state information by a control policy module atblock 302. For example, thecontrol policy module 216 may receive computing power state information indirectly from thepower management controller 234 via the communications bus 220 and interfaces 214-1, 214-3, or directly from thecomputing sub-system 230 via the communications bus 220 and interfaces 214-1, 214-2. The computing power state information may include without limitation a computing power state parameter, a computing idle duration parameter, a computing resume latency parameter, and so forth. - In one embodiment, the
logic flow 300 may receive communications state information by the control policy module atblock 304. For example, thecontrol policy module 216 may receive communications state information from thenetwork state module 212. The communications state information may include without limitation a network utilization parameter, a buffer utilization parameter, and so forth. - In one embodiment, the
logic flow 300 may determine a communications rate parameter for a transceiver based on the computing power state information and the communications state information atblock 306. For example, thecontrol policy module 216 may determine a communications rate parameter (e.g., CR0-CR4) for a transceiver 204-1-r based on the computing power state information and the communications state information. - In one embodiment, the
logic flow 300 may modify a communications rate for the transceiver based on the communications rate parameter atblock 308. For example, thecontrol policy module 216 may modify a communications rate for the transceiver 204-1-r based on the communications rate parameter. -
FIG. 4 illustrates alogic flow 400 in accordance with one or more embodiments. Thelogic flow 400 may be performed by various systems and/or devices and may be implemented as hardware, software, and/or any combination thereof, as desired for a given set of design parameters or performance constraints. For example, thelogic flow 300 may be implemented by a logic device (e.g., processor) and/or logic (e.g., instructions, data, and/or code) to be executed by a logic device. For purposes of illustration, and not limitation, thelogic flow 400 is described with reference toFIGS. 1 and 2 . - The
logic flow 400 may illustrate various operations for the nodes 110-1-m in general, and the managedpower system 120 and thepower management module 130 in particular. The illustrated embodiment shown inFIG. 4 described a more detailed logic flow for implementing a control policy for thecontrol policy module 216 of the communications sub-system 210-1. As shown inFIG. 4 , thepower management controller 234 may receive atblock 402 power management information from various sources of a node 110-1-m, including an operating system (OS), various device drivers, various devices and so forth. Thepower management controller 234 may determine a computing power state parameter for the computing sub-system 230-1 using the power management information atblock 404. Thepower management controller 234 may send the computing power state parameter to thecontrol policy module 216, which is received as one input for thecontrol policy module 216. Thecontrol policy module 216 may also receive a second input from thenetwork state module 212. For example, thenetwork state module 212 may start a network link utilization timer atblock 420, and calculate one or more network link utilization parameters at block 422. Thenetwork state module 212 may determine whether the network utilization parameter is above a certain threshold value atdiamond 424. If not, thenetwork state module 212 may continue to re-calculate the network link utilization parameters atblocks 420, 422 until the network link utilization parameters are above the threshold value atdiamond 424. When this occurs, thenetwork state module 212 may pass the network link utilization parameters to thecontrol policy module 216 as the second input. Thecontrol policy module 216 may take the first and second inputs, and determine a communications rate parameter for the communications sub-system 210-1 using the inputs. Thecontroller 208 may receive the communications rate parameter from thecontrol policy module 216, and initiate a modification in a communications rate for one or more transceivers 204-1-r at block 408. Atblock 410, thecontroller 208 may perform flow control operations to modify the transceivers 204-1-r of the communications sub-system 210-1 of the first node 110-1, as well as one or more transceivers of a network endpoint communicating with the first node 110-1, such as the transceivers 204-1-r of the communications sub-system 210-2 of the second node 110-2. As thecontroller 208 performs the needed operations to switch the communications rates for the two sets of transceivers of nodes 110-1, 110-2, the communications sub-system 210-1 may continue to receive transmit and receive packets for the transceivers 204-1-r of the communications sub-system 210-1 atblock 412. Thecontroller 208 may store the transmit and receive packets in one or more of the buffers 206-1-t during switching operations at block 414. Thecontroller 208 may determine whether the switching operations are complete atdiamond 416. If not, thecontroller 208 may continue buffering the packets atblock 412, 414 until the switching operations are completed. Once the switching operations are completed atdiamond 416, the communications sub-system 210-1 may continue transmit and receive operations atblock 418. - In some cases, various embodiments may be implemented as an article of manufacture. The article of manufacture may include a computer-readable medium or a storage medium arranged to store logic and/or data for performing various operations of one or more embodiments. Examples of computer-readable media or storage media may include, without limitation, those examples as previously described. In various embodiments, for example, the article of manufacture may comprise a magnetic disk, optical disk, flash memory or firmware containing computer program instructions suitable for execution by a general purpose processor or application specific processor. The embodiments, however, are not limited in this context.
- Various embodiments may be implemented using hardware elements, software elements, or a combination of both. Examples of hardware elements may include any of the examples as previously provided for a logic device, and further including microprocessors, circuits, circuit elements (e.g., transistors, resistors, capacitors, inductors, and so forth), integrated circuits, logic gates, registers, semiconductor device, chips, microchips, chip sets, and so forth. Examples of software elements may include software components, programs, applications, computer programs, application programs, system programs, machine programs, operating system software, middleware, firmware, software modules, routines, subroutines, functions, methods, procedures, software interfaces, application program interfaces (API), instruction sets, computing code, computer code, code segments, computer code segments, words, values, symbols, or any combination thereof. Determining whether an embodiment is implemented using hardware elements and/or software elements may vary in accordance with any number of factors, such as desired computational rate, power levels, heat tolerances, processing cycle budget, input data rates, output data rates, memory resources, data bus speeds and other design or performance constraints, as desired for a given implementation.
- Some embodiments may be described using the expression “coupled” and “connected” along with their derivatives. These terms are not necessarily intended as synonyms for each other. For example, some embodiments may be described using the terms “connected” and/or “coupled” to indicate that two or more elements are in direct physical or electrical contact with each other. The term “coupled,” however, may also mean that two or more elements are not in direct contact with each other, but yet still co-operate or interact with each other.
- It is emphasized that the Abstract of the Disclosure is provided to comply with 37 C.F.R. Section 1.72(b), requiring an abstract that will allow the reader to quickly ascertain the nature of the technical disclosure. It is submitted with the understanding that it will not be used to interpret or limit the scope or meaning of the claims. In addition, in the foregoing Detailed Description, it can be seen that various features are grouped together in a single embodiment for the purpose of streamlining the disclosure. This method of disclosure is not to be interpreted as reflecting an intention that the claimed embodiments require more features than are expressly recited in each claim. Rather, as the following claims reflect, inventive subject matter lies in less than all features of a single disclosed embodiment. Thus the following claims are hereby incorporated into the Detailed Description, with each claim standing on its own as a separate embodiment. In the appended claims, the terms “including” and “in which” are used as the plain-English equivalents of the respective terms “comprising” and “wherein,” respectively. Moreover, the terms “first,” “second,” “third,” and so forth, are used merely as labels, and are not intended to impose numerical requirements on their objects.
- Although the subject matter has been described in language specific to structural features and/or methodological acts, it is to be understood that the subject matter defined in the appended claims is not necessarily limited to the specific features or acts described above. Rather, the specific features and acts described above are disclosed as example forms of implementing the claims. Examples of what could be claimed include the following:
Claims (25)
1. An apparatus, comprising:
a communications sub-system having a control policy module, a controller and a first transceiver capable of operating at different communications rates, the control policy module operative to receive computing power state information and communications state information, determine a communications rate parameter for the first transceiver based on the computing power state information and the communications state information, and instruct the controller to modify a communications rate for the first transceiver based on the communications rate parameter.
2. The apparatus of claim 1 , the control policy module operative to receive a computing power state parameter with the computing power state information, and determine the communications rate parameter for the first transceiver based on the computing power state parameter.
3. The apparatus of claim 1 , the control policy module operative to receive a computing power state parameter with the computing power state information, and determine the communications rate parameter for the first transceiver based on the computing power state parameter and the communications state information.
4. The apparatus of claim 1 , the control policy module to receive a computing power state parameter, a computing idle duration parameter, and a computing resume latency parameter, and determine the communications rate parameter for the first transceiver based on the computing power state parameter, the computing idle duration parameter, the computing resume latency parameter, and the communications state information.
5. The apparatus of claim 1 , comprising a network state module operative to monitor a communications link for a defined time period, calculate an average transmit period and an average receive period, and determine a network link utilization parameter based on the average transmit period and the average receive period.
6. The apparatus of claim 1 , the control policy module operative to receive a network link utilization parameter as the communications state information, and determine the communications rate parameter for the first transceiver based on the computing power state information and the network link utilization parameter.
7. The apparatus of claim 1 , comprising a buffer to couple to the transceiver, the buffer operative to buffer packets for the first transceiver, the network state module to compare a number of packets in the buffer with a threshold value, and determine a buffer utilization parameter based on the comparison.
8. The apparatus of claim 1 , the control policy module operative to receive a buffer utilization parameter as the communications state information, and determine the communications rate parameter for the first transceiver based on the computing power state information and the buffer utilization parameter.
9. The apparatus of claim 1 , comprising a buffer to couple to the transceiver, the buffer operative to buffer packets until the communications rate for the transceiver has been modified.
10. The apparatus of claim 1 , the controller to perform flow control operations to modify a communications rate for a second transceiver based on the communications rate parameter.
11. A system, comprising:
a node having a managed power system with a digital electronic display and a communications sub-system, the communications sub-system having a first transceiver, a controller, and a control policy module, the first transceiver capable of operating at different communications rates, the control policy module operative to receive computing power state information and communications state information, determine a communications rate parameter for the first transceiver based on the computing power state information and the communications state information, and instruct the controller to modify a communications rate for the first transceiver based on the communications rate parameter.
12. The system of claim 11 , the control policy module operative to receive a computing power state parameter with the computing power state information, and determine the communications rate parameter for the first transceiver based on the computing power state parameter and the communications state information.
13. The system of claim 11 , comprising a power management module having a power management controller operative to receive computing power state information from a computing sub-system, the computing power state information to include a computing idle duration parameter and a computing resume latency parameter, the power management controller to determine a computing power state parameter for the computing sub-system, and send a power management message to the control policy module with the computing power state information including the computing power state parameter, the computing idle duration parameter and the computing resume latency parameter.
14. The system of claim 11 , comprising a computing sub-system having a computing state module operative to generate the computing power state information for the computing sub-system, and send a power management message with the computing power state information to a power management module.
15. The system of claim 11 , the communications sub-system having a second transceiver, the control policy module to switch operations from the first transceiver to a second transceiver to modify communications rates.
16. A method, comprising:
receiving computing power state information by a control policy module;
receiving communications state information by the control policy module;
determining a communications rate parameter for a transceiver based on the computing power state information and the communications state information; and
modifying a communications rate for the transceiver based on the communications rate parameter.
17. The method of claim 16 , comprising:
receiving a computing power state parameter, a computing idle duration parameter and a computing resume latency parameter as the computing power state information; and
determining the communications rate parameter for the transceiver based on the computing power state parameter, the computing idle duration parameter, the computing resume latency parameter, and the communications state information.
18. The method of claim 16 , comprising:
monitoring a communications link for a defined time period;
calculating an average transmit period and an average receive period; and
determining a network link utilization parameter based on the average transmit period and the average receive period.
19. The method of claim 16 , comprising:
receiving a network link utilization parameter as the communications state information; and determining the communications rate parameter for the transceiver based on the computing power state information and the network link utilization parameter.
20. The method of claim 16 , comprising:
storing packets for the first transceiver in a buffer;
comparing a number of packets in the buffer with a threshold value; and
determining a buffer utilization parameter based on the comparison.
21. The method of claim 16 , comprising:
receiving a buffer utilization parameter as the communications state information; and
determining the communications rate parameter for the transceiver based on the computing power state information and the buffer utilization parameter.
22. An article comprising a computer-readable medium containing instructions that if executed enable a system to:
receive computing power state information by a control policy module;
receive communications state information by the control policy module;
determine a communications rate parameter for a transceiver based on the computing power state information and the communications state information; and
modify a communications rate for the transceiver based on the communications rate parameter.
23. The article of claim 22 , further comprising instructions that if executed enable the system to:
receive a computing power state parameter, a computing idle duration parameter and a computing resume latency parameter as the computing power state information; and
determine the communications rate parameter for the transceiver based on the computing power state parameter, the computing idle duration parameter, the computing resume latency parameter, and the communications state information.
24. The article of claim 22 , further comprising instructions that if executed enable the system to:
receive a network link utilization parameter as the communications state information; and
determine the communications rate parameter for the transceiver based on the computing power state information and the network link utilization parameter
25. The article of claim 22 , further comprising instructions that if executed enable the system to:
receive a buffer utilization parameter as the communications state information; and
determine the communications rate parameter for the transceiver based on the computing power state information and the buffer utilization parameter.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/424,709 US20120178491A1 (en) | 2007-09-17 | 2012-03-20 | Techniques for communications power management based on system states |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US97303507P | 2007-09-17 | 2007-09-17 | |
US97303807P | 2007-09-17 | 2007-09-17 | |
US97304407P | 2007-09-17 | 2007-09-17 | |
US97303107P | 2007-09-17 | 2007-09-17 | |
US12/208,824 US8156353B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for communications power management based on system states |
US13/424,709 US20120178491A1 (en) | 2007-09-17 | 2012-03-20 | Techniques for communications power management based on system states |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/208,824 Continuation US8156353B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for communications power management based on system states |
Publications (1)
Publication Number | Publication Date |
---|---|
US20120178491A1 true US20120178491A1 (en) | 2012-07-12 |
Family
ID=40455853
Family Applications (6)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/208,824 Active 2030-08-14 US8156353B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for communications power management based on system states |
US12/208,654 Active 2030-08-21 US8112646B2 (en) | 2007-09-17 | 2008-09-11 | Buffering techniques for power management |
US12/208,763 Active 2031-12-08 US8479028B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for communications based power management |
US12/208,905 Ceased US8145920B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for collaborative power management for heterogeneous networks |
US13/424,709 Abandoned US20120178491A1 (en) | 2007-09-17 | 2012-03-20 | Techniques for communications power management based on system states |
US13/889,472 Active 2030-08-25 USRE45600E1 (en) | 2007-09-17 | 2013-05-08 | Techniques for collaborative power management for heterogeneous networks |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/208,824 Active 2030-08-14 US8156353B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for communications power management based on system states |
US12/208,654 Active 2030-08-21 US8112646B2 (en) | 2007-09-17 | 2008-09-11 | Buffering techniques for power management |
US12/208,763 Active 2031-12-08 US8479028B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for communications based power management |
US12/208,905 Ceased US8145920B2 (en) | 2007-09-17 | 2008-09-11 | Techniques for collaborative power management for heterogeneous networks |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/889,472 Active 2030-08-25 USRE45600E1 (en) | 2007-09-17 | 2013-05-08 | Techniques for collaborative power management for heterogeneous networks |
Country Status (6)
Country | Link |
---|---|
US (6) | US8156353B2 (en) |
EP (1) | EP2191345A4 (en) |
JP (1) | JP5047360B2 (en) |
KR (1) | KR101140980B1 (en) |
CN (1) | CN101802753B (en) |
WO (1) | WO2009039034A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090144587A1 (en) * | 2007-11-30 | 2009-06-04 | Infineon Technologies Ag | Device and method for electronic controlling |
US20130040590A1 (en) * | 2008-11-04 | 2013-02-14 | Tatsuo Nakagawa | Electronic circuit and radio communications system |
US20140208138A1 (en) * | 2013-01-24 | 2014-07-24 | Qualcomm Incorporated | System and method for reducing power consumption |
EP2985675A1 (en) * | 2014-08-13 | 2016-02-17 | Samsung Electronics Co., Ltd. | Method of controlling an electronic device according to a communication state of the electronic device |
US10698205B2 (en) | 2018-02-01 | 2020-06-30 | Beijing Forever Technology Co., Ltd. | Device adapted to eyeglasses |
Families Citing this family (177)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9323311B2 (en) * | 2006-06-22 | 2016-04-26 | Broadcom Corporation | Method and system for packet based signaling between A Mac and A PHY to manage energy efficient network devices and/or protocols |
US8130705B2 (en) | 2006-09-15 | 2012-03-06 | Qualcomm Incorporated | Method and apparatus for service capability modification |
US8854986B1 (en) | 2007-03-12 | 2014-10-07 | Aquantia Corporation | Energy efficiency ethernet (EEE) with 10GBASE-T structures |
US8213704B2 (en) * | 2007-05-09 | 2012-07-03 | Kla-Tencor Corp. | Methods and systems for detecting defects in a reticle design pattern |
US8661167B2 (en) * | 2007-09-17 | 2014-02-25 | Intel Corporation | DMA (direct memory access) coalescing |
US8156353B2 (en) * | 2007-09-17 | 2012-04-10 | Intel Corporation | Techniques for communications power management based on system states |
US9146892B2 (en) * | 2007-10-11 | 2015-09-29 | Broadcom Corporation | Method and system for improving PCI-E L1 ASPM exit latency |
US20090110051A1 (en) * | 2007-10-29 | 2009-04-30 | Lindsay Steven B | Method and system for reducing the impact of latency on video processing |
US8312307B2 (en) | 2007-11-07 | 2012-11-13 | Intel Corporation | Systems and methods for reducing power consumption during communication between link partners |
TWI360045B (en) * | 2007-11-23 | 2012-03-11 | Asustek Comp Inc | Method for switching automatically power state |
US8891458B2 (en) * | 2007-12-05 | 2014-11-18 | Qualcomm Incorporated | User equipment capability update in wireless communications |
US8619603B2 (en) * | 2009-06-04 | 2013-12-31 | Broadcom Corporation | Method and system for end-to-end management of energy efficient networking protocols |
US8625471B2 (en) * | 2008-02-13 | 2014-01-07 | Broadcom Corporation | System and method for carrier deferral for full duplex energy efficient ethernet PHYs |
US9520743B2 (en) * | 2008-03-27 | 2016-12-13 | Echostar Technologies L.L.C. | Reduction of power consumption in remote control electronics |
US7907060B2 (en) * | 2008-05-08 | 2011-03-15 | Echostar Technologies L.L.C. | Systems, methods and apparatus for detecting replacement of a battery in a remote control |
US8850355B2 (en) * | 2008-07-14 | 2014-09-30 | Hewlett-Packard Development Company, L.P. | Systems and methods for communicating with media modules |
US8305249B2 (en) * | 2008-07-18 | 2012-11-06 | EchoStar Technologies, L.L.C. | Systems and methods for controlling power consumption in electronic devices |
US8588151B2 (en) * | 2008-08-08 | 2013-11-19 | Qualcomm Incorporated | Access terminal capability update |
US8700821B2 (en) | 2008-08-22 | 2014-04-15 | Intel Corporation | Unified multi-transport medium connector architecture |
US8213303B2 (en) | 2008-09-12 | 2012-07-03 | Intel Corporation | Generating, at least in part, and/or receiving, at least in part, at least one request |
US8412866B2 (en) * | 2008-11-24 | 2013-04-02 | Via Technologies, Inc. | System and method of dynamically switching queue threshold |
KR101152954B1 (en) * | 2008-12-12 | 2012-06-08 | 한국전자통신연구원 | Ethernet switching apparatus and method for saving energy therefor |
US8607075B2 (en) | 2008-12-31 | 2013-12-10 | Intel Corporation | Idle duration reporting for power management |
US8495403B2 (en) * | 2008-12-31 | 2013-07-23 | Intel Corporation | Platform and processor power management |
US8156356B2 (en) * | 2009-01-15 | 2012-04-10 | Dell Products L.P. | Dynamic power management for internal information handling system links |
US8448001B1 (en) * | 2009-03-02 | 2013-05-21 | Marvell International Ltd. | System having a first device and second device in which the main power management module is configured to selectively supply a power and clock signal to change the power state of each device independently of the other device |
US8995289B2 (en) * | 2009-03-04 | 2015-03-31 | Broadcom Corporation | Method and system for implementing energy efficient ethernet techniques in a MACSec enabled PHY |
US8201005B2 (en) | 2009-03-17 | 2012-06-12 | Intel Corporation | Negotiating a transmit wake time |
US8023522B2 (en) * | 2009-03-30 | 2011-09-20 | Intel Corporation | Enabling long-term communication idleness for energy efficiency |
US8261114B2 (en) * | 2009-05-18 | 2012-09-04 | Broadcom Corporation | System and method for dynamic energy efficient ethernet control policy based on user or device profiles and usage parameters |
US8667311B2 (en) * | 2009-06-23 | 2014-03-04 | Broadcom Corporation | Method and system for optimized power management for a network device supporting PCI-E and energy efficient ethernet |
CN101931508B (en) * | 2009-06-23 | 2013-06-26 | 华为技术有限公司 | PCI (Pre-Coding Indicator) coding method and device of DC-HSDPA (Double Carrier-High Speed Downlink Packet Access) and TxAA (Transit Adaptive Antennas Array) coexisted scene |
US8483093B2 (en) * | 2009-06-30 | 2013-07-09 | Intel Corporation | Energy efficient network forwarding based on performance and energy |
FR2947924A1 (en) * | 2009-07-07 | 2011-01-14 | Thales Sa | METHOD AND DEVICE FOR THE DYNAMIC MANAGEMENT OF CONSUMPTION IN A PROCESSOR |
US8370701B2 (en) * | 2009-07-21 | 2013-02-05 | Broadcom Corporation | System and method for achieving greater than 10 Gbit/s transmission rates for twisted pair physical layer devices |
US8930534B2 (en) * | 2009-07-24 | 2015-01-06 | Broadcom Corporation | Method and system for management based end-to-end sleep limitation in an energy efficient ethernet network |
US8347121B2 (en) * | 2009-07-31 | 2013-01-01 | Broadcom Corporation | System and method for adjusting an energy efficient ethernet control policy using measured power savings |
US8504690B2 (en) | 2009-08-07 | 2013-08-06 | Broadcom Corporation | Method and system for managing network power policy and configuration of data center bridging |
TWI391058B (en) * | 2009-08-18 | 2013-03-21 | Pegatron Corp | Mainboard and portable electronic device using the same |
US8255716B2 (en) * | 2009-08-27 | 2012-08-28 | Qualcomm Incorporated | Power optimization for data services |
US9232441B2 (en) * | 2009-08-31 | 2016-01-05 | Qualcomm Incorporated | Power based rate selection |
US9110517B2 (en) | 2009-09-14 | 2015-08-18 | Broadcom Corporation | System and method for generating screen pointing information in a television |
US9049151B2 (en) * | 2009-10-07 | 2015-06-02 | Broadcom Corporation | Low-power policy for port |
US20110087522A1 (en) * | 2009-10-08 | 2011-04-14 | International Business Machines Corporation | Method for deploying a probing environment for provisioned services to recommend optimal balance in service level agreement user experience and environmental metrics |
CN101667942B (en) * | 2009-10-14 | 2015-09-16 | 中兴通讯股份有限公司 | The control method of home gateway and device |
US8602875B2 (en) | 2009-10-17 | 2013-12-10 | Nguyen Gaming Llc | Preserving game state data for asynchronous persistent group bonus games |
US9229518B1 (en) * | 2009-11-03 | 2016-01-05 | Marvell International Ltd. | Wake-on-frame for frame processing devices |
US8566495B2 (en) * | 2009-11-06 | 2013-10-22 | Qualcomm Incorporated | Systems, methods and apparatus for data communication |
US9626826B2 (en) | 2010-06-10 | 2017-04-18 | Nguyen Gaming Llc | Location-based real-time casino data |
US8864586B2 (en) | 2009-11-12 | 2014-10-21 | Nguyen Gaming Llc | Gaming systems including viral gaming events |
US11990005B2 (en) | 2009-11-12 | 2024-05-21 | Aristocrat Technologies, Inc. (ATI) | Gaming system supporting data distribution to gaming devices |
US8597108B2 (en) | 2009-11-16 | 2013-12-03 | Nguyen Gaming Llc | Asynchronous persistent group bonus game |
JP5521511B2 (en) * | 2009-11-27 | 2014-06-18 | 村田機械株式会社 | Network equipment |
US20110131427A1 (en) * | 2009-12-02 | 2011-06-02 | Jorgenson Joel A | Power management states |
US9215193B2 (en) * | 2009-12-28 | 2015-12-15 | Broadcom Corporation | System and method for enhanced energy control policy for unmanaged switch applications |
EP2362578A1 (en) * | 2010-02-15 | 2011-08-31 | Broadcom Corporation | Method and system for managing network power policy and configuration of data center bridging |
US8279790B2 (en) * | 2010-03-11 | 2012-10-02 | Intel Corporation | Packet buffering based at least in part upon packet receipt time interval weighted moving average |
US8543858B2 (en) * | 2010-04-07 | 2013-09-24 | Broadcom Corporation | System and method for managing network devices that deliver an application service using energy savings information |
US8696470B2 (en) | 2010-04-09 | 2014-04-15 | Nguyen Gaming Llc | Spontaneous player preferences |
US20110307716A1 (en) * | 2010-06-10 | 2011-12-15 | Broadcom Corporation | Global control policy manager |
US9009499B2 (en) * | 2010-06-10 | 2015-04-14 | Broadcom Corporation | Power manager for a network having a virtual machine |
US20120030320A1 (en) * | 2010-07-30 | 2012-02-02 | Broadcom Corporation | Network power management |
US8595522B2 (en) | 2010-09-30 | 2013-11-26 | Intel Corporation | Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive |
US8380860B2 (en) * | 2010-11-09 | 2013-02-19 | International Business Machines Corporation | Reducing carbon footprint and providing power savings in session initiated protocol conferencing |
US9486704B2 (en) | 2010-11-14 | 2016-11-08 | Nguyen Gaming Llc | Social gaming |
US9235952B2 (en) | 2010-11-14 | 2016-01-12 | Nguyen Gaming Llc | Peripheral management device for virtual game interaction |
US12100260B2 (en) | 2010-11-14 | 2024-09-24 | Aristocrat Technologies, Inc. (ATI) | Multi-functional peripheral device |
US9564018B2 (en) | 2010-11-14 | 2017-02-07 | Nguyen Gaming Llc | Temporary grant of real-time bonus feature |
US10052551B2 (en) | 2010-11-14 | 2018-08-21 | Nguyen Gaming Llc | Multi-functional peripheral device |
US9595161B2 (en) | 2010-11-14 | 2017-03-14 | Nguyen Gaming Llc | Social gaming |
CN102572063B (en) * | 2010-12-15 | 2014-11-05 | 联想(北京)有限公司 | System state control method and portable terminal |
US9030935B2 (en) * | 2011-03-30 | 2015-05-12 | International Business Machines Corporation | Device and method for adjusting rate limits for transmission rates of data flows having a certain priority in a transmitter |
JP5741245B2 (en) * | 2011-06-24 | 2015-07-01 | 株式会社リコー | Image processing apparatus, image processing control method, and image processing control program |
US8565686B2 (en) * | 2011-06-30 | 2013-10-22 | Sprint Communications Company L.P. | Power status multipath search window sizing for wireless communications |
US20130003559A1 (en) * | 2011-06-30 | 2013-01-03 | Broadcom Corporation | Adaptive Power Savings for Aggregated Resources |
JP5791397B2 (en) * | 2011-07-07 | 2015-10-07 | ルネサスエレクトロニクス株式会社 | Device controller, USB device controller, and power control method |
US8804798B2 (en) | 2011-09-16 | 2014-08-12 | Aquantia Corporation | Transceiver spectrum control for cross-talk mitigation |
US9001787B1 (en) * | 2011-09-20 | 2015-04-07 | Trilliant Networks Inc. | System and method for implementing handover of a hybrid communications module |
EP2761825B1 (en) | 2011-09-30 | 2019-08-07 | Intel Corporation | Credit based power management |
US9630096B2 (en) | 2011-10-03 | 2017-04-25 | Nguyen Gaming Llc | Control of mobile game play on a mobile vessel |
US9672686B2 (en) | 2011-10-03 | 2017-06-06 | Nguyen Gaming Llc | Electronic fund transfer for mobile gaming |
US20130090060A1 (en) * | 2011-10-05 | 2013-04-11 | Franklin Wireless Corporation | Wireless modem |
US10142848B2 (en) * | 2011-10-28 | 2018-11-27 | Qualcomm Incorporated | Method and apparatus for calibrating power in femtocell networks |
DE102011118362A1 (en) * | 2011-11-14 | 2013-05-16 | Robert Bosch Gmbh | Method and device for operating a slave |
US8953644B2 (en) | 2011-12-27 | 2015-02-10 | Intel Corporation | Multi-protocol I/O interconnect time synchronization |
TW201415830A (en) | 2012-01-24 | 2014-04-16 | Microsemi Corp Analog Mixed Si | Power device interface arranged to detect amount of power available |
US9110668B2 (en) * | 2012-01-31 | 2015-08-18 | Broadcom Corporation | Enhanced buffer-batch management for energy efficient networking based on a power mode of a network interface |
US8782321B2 (en) | 2012-02-08 | 2014-07-15 | Intel Corporation | PCI express tunneling over a multi-protocol I/O interconnect |
US9130695B1 (en) | 2012-03-06 | 2015-09-08 | Aquantia Corp. | Adaptive rate control of 10GBASE-T data transport system |
JP5874459B2 (en) * | 2012-03-15 | 2016-03-02 | 株式会社リコー | Image forming apparatus, image forming method, and program |
US8880923B2 (en) * | 2012-03-29 | 2014-11-04 | Intel Corporation | Link power management in an I/O interconnect |
EP2831872A4 (en) * | 2012-03-30 | 2015-11-04 | Intel Corp | Multi-sensor velocity dependent context aware voice recognition and summarization |
US9275690B2 (en) | 2012-05-30 | 2016-03-01 | Tahoe Rf Semiconductor, Inc. | Power management in an electronic system through reducing energy usage of a battery and/or controlling an output power of an amplifier thereof |
US9454199B2 (en) | 2012-06-28 | 2016-09-27 | Intel Corporation | Power management control of remote servers |
US10067547B2 (en) | 2012-06-28 | 2018-09-04 | Intel Corporation | Power management control of remote servers |
US9325203B2 (en) | 2012-07-24 | 2016-04-26 | Binh Nguyen | Optimized power consumption in a gaming device |
US9509351B2 (en) | 2012-07-27 | 2016-11-29 | Tahoe Rf Semiconductor, Inc. | Simultaneous accommodation of a low power signal and an interfering signal in a radio frequency (RF) receiver |
US9485335B1 (en) | 2012-08-13 | 2016-11-01 | Aquantia Corp. | Sub-rate codes within the 10GBASE-T frame structure |
US9634800B1 (en) | 2012-08-13 | 2017-04-25 | Aquantia Corp. | Sub-rate codes within the 10GBASE-T frame structure |
US9015396B2 (en) * | 2012-09-18 | 2015-04-21 | Apple Inc. | Reducing latency in a peripheral component interconnect express link |
US10176666B2 (en) | 2012-10-01 | 2019-01-08 | Nguyen Gaming Llc | Viral benefit distribution using mobile devices |
CN102929381B (en) * | 2012-10-22 | 2015-08-05 | 威盛电子股份有限公司 | Electronic system and method for managing power supply thereof |
US9043457B2 (en) | 2012-10-25 | 2015-05-26 | Qualcomm Incorporated | Dynamic adjustment of an interrupt latency threshold and a resource supporting a processor in a portable computing device |
US9001872B1 (en) | 2012-11-07 | 2015-04-07 | Aquantia Corp. | Flexible data transmission scheme adaptive to communication channel quality |
US9363039B1 (en) | 2012-11-07 | 2016-06-07 | Aquantia Corp. | Flexible data transmission scheme adaptive to communication channel quality |
US9250666B2 (en) * | 2012-11-27 | 2016-02-02 | International Business Machines Corporation | Scalable data collection for system management |
US9253793B2 (en) * | 2012-12-19 | 2016-02-02 | Intel Corporation | Channel aware job scheduling |
US20140173306A1 (en) * | 2012-12-19 | 2014-06-19 | Barnes Cooper | System and method for providing for power savings in a processor environment |
US9425984B2 (en) * | 2012-12-24 | 2016-08-23 | Broadcom Corporation | System and method for using energy efficient ethernet to control energy efficiencies in lower layers |
US9112807B2 (en) * | 2012-12-26 | 2015-08-18 | Alcatel Lucent | System and method for managing network information |
US9223379B2 (en) * | 2012-12-27 | 2015-12-29 | Intel Corporation | Intelligent receive buffer management to optimize idle state residency |
US9213390B2 (en) * | 2012-12-28 | 2015-12-15 | Intel Corporation | Periodic activity alignment |
US8989660B2 (en) * | 2013-01-03 | 2015-03-24 | Qualcomm Incorporated | Multiple hardware interrupt functionality on near-field communication (NFC) |
JP5708671B2 (en) * | 2013-01-21 | 2015-04-30 | コニカミノルタ株式会社 | Power supply control device and power supply control system |
US9354694B2 (en) * | 2013-03-14 | 2016-05-31 | Intel Corporation | Controlling processor consumption using on-off keying having a maximum off time |
US9837714B2 (en) | 2013-03-15 | 2017-12-05 | Integrated Device Technology, Inc. | Extending beamforming capability of a coupled voltage controlled oscillator (VCO) array during local oscillator (LO) signal generation through a circular configuration thereof |
US9722310B2 (en) | 2013-03-15 | 2017-08-01 | Gigpeak, Inc. | Extending beamforming capability of a coupled voltage controlled oscillator (VCO) array during local oscillator (LO) signal generation through frequency multiplication |
US9531070B2 (en) | 2013-03-15 | 2016-12-27 | Christopher T. Schiller | Extending beamforming capability of a coupled voltage controlled oscillator (VCO) array during local oscillator (LO) signal generation through accommodating differential coupling between VCOs thereof |
US11030851B2 (en) | 2013-03-15 | 2021-06-08 | Nguyen Gaming Llc | Method and system for localized mobile gaming |
US10421010B2 (en) | 2013-03-15 | 2019-09-24 | Nguyen Gaming Llc | Determination of advertisement based on player physiology |
US9600976B2 (en) | 2013-03-15 | 2017-03-21 | Nguyen Gaming Llc | Adaptive mobile device gaming system |
US9184498B2 (en) | 2013-03-15 | 2015-11-10 | Gigoptix, Inc. | Extending beamforming capability of a coupled voltage controlled oscillator (VCO) array during local oscillator (LO) signal generation through fine control of a tunable frequency of a tank circuit of a VCO thereof |
US9814970B2 (en) | 2013-03-15 | 2017-11-14 | Nguyen Gaming Llc | Authentication of mobile servers |
US9780449B2 (en) | 2013-03-15 | 2017-10-03 | Integrated Device Technology, Inc. | Phase shift based improved reference input frequency signal injection into a coupled voltage controlled oscillator (VCO) array during local oscillator (LO) signal generation to reduce a phase-steering requirement during beamforming |
US9483901B2 (en) | 2013-03-15 | 2016-11-01 | Nguyen Gaming Llc | Gaming device docking station |
US9666942B2 (en) | 2013-03-15 | 2017-05-30 | Gigpeak, Inc. | Adaptive transmit array for beam-steering |
US9716315B2 (en) | 2013-03-15 | 2017-07-25 | Gigpeak, Inc. | Automatic high-resolution adaptive beam-steering |
US9766685B2 (en) * | 2013-05-15 | 2017-09-19 | Intel Corporation | Controlling power consumption of a processor using interrupt-mediated on-off keying |
TWI574148B (en) * | 2013-05-29 | 2017-03-11 | 緯創資通股份有限公司 | Embedded controller for power-saving and method thereof |
US9804824B1 (en) * | 2013-06-18 | 2017-10-31 | Marvell International Ltd. | System and method for controlling flow of data through a buffer to increase time a bridge is in a low power state |
US9191209B2 (en) | 2013-06-25 | 2015-11-17 | Google Inc. | Efficient communication for devices of a home network |
US9531704B2 (en) | 2013-06-25 | 2016-12-27 | Google Inc. | Efficient network layer for IPv6 protocol |
WO2014209395A1 (en) | 2013-06-28 | 2014-12-31 | Intel Corporation | Adaptive interrupt coalescing for energy efficient mobile platforms |
US9820221B2 (en) | 2013-08-08 | 2017-11-14 | Nant Holdings Ip, Llc | Power management of a personal area fabric |
US9395795B2 (en) | 2013-09-20 | 2016-07-19 | Apple Inc. | System power management using communication bus protocols |
WO2015047782A1 (en) | 2013-09-27 | 2015-04-02 | Intel Corporation | Techniques enabling low power states for a communications port |
US9501128B2 (en) * | 2013-10-30 | 2016-11-22 | Globalfoundries Inc. | Cooperative reduced power mode suspension for high input/output (‘I/O’) workloads |
US9535490B2 (en) * | 2013-12-16 | 2017-01-03 | Qualcomm Incorporated | Power saving techniques in computing devices |
USRE49652E1 (en) * | 2013-12-16 | 2023-09-12 | Qualcomm Incorporated | Power saving techniques in computing devices |
US20150373566A1 (en) * | 2014-06-19 | 2015-12-24 | Qualcomm Incorporated | Method to reduce the transmission delay for data packets |
CN105306223A (en) * | 2014-06-30 | 2016-02-03 | 中兴通讯股份有限公司 | Power supply method, power supply device and power supply system |
CN106664661A (en) * | 2014-09-18 | 2017-05-10 | 英特尔Ip公司 | Scheme of finite power transmission statuses for low cost wireless broadband communication system |
WO2016059479A1 (en) | 2014-10-13 | 2016-04-21 | Yandex Europe Ag | Method of processing system requests in a wireless communication device |
US10999124B1 (en) | 2014-12-05 | 2021-05-04 | Marvell Asia Pte, Ltd. | Rapid rate adaptation in NBASE-T ethernet |
RU2598337C2 (en) * | 2014-12-19 | 2016-09-20 | Закрытое акционерное общество "Лаборатория Касперского" | System and method of selecting means of interception of data transmitted over network |
US9774420B1 (en) | 2015-01-13 | 2017-09-26 | Aquantia Corp. | Reed-solomon coding for 40GBASE-T ethernet |
US10069521B1 (en) | 2015-01-29 | 2018-09-04 | Aquantia Corp. | Intelligent power balancing for NBASE-T ethernet |
US9893756B1 (en) | 2015-03-06 | 2018-02-13 | Aquantia Corp. | Methods and apparatus to improve SNR for signaling across multi-channel cables |
US9853769B1 (en) | 2015-03-09 | 2017-12-26 | Aquantia Corporation | High-speed Ethernet coding |
US9933826B2 (en) * | 2015-05-11 | 2018-04-03 | Hewlett Packard Enterprise Development Lp | Method and apparatus for managing nodal power in a high performance computer system |
US10877879B1 (en) * | 2015-05-19 | 2020-12-29 | EMC IP Holding Company LLC | Flash cache throttling to control erasures |
US10429909B2 (en) | 2015-06-01 | 2019-10-01 | Hewlett Packard Enterprise Development Lp | Managing power in a high performance computing system for resiliency and cooling |
US9736779B2 (en) * | 2015-06-26 | 2017-08-15 | Intel Corporation | Techniques for mobile platform power management using low-power wake-up signals |
US9826482B2 (en) | 2015-06-26 | 2017-11-21 | Intel Corporation | Method of fine grained wake-up modes for Wi-Fi/BT utilizing wake-up receiver |
CN105119778B (en) * | 2015-09-09 | 2018-09-07 | 华为技术有限公司 | The method and apparatus for measuring time delay |
DE102015222112A1 (en) * | 2015-11-10 | 2017-05-11 | Volkswagen Aktiengesellschaft | Ethernet bus, controller and method for waking up a controller of an Ethernet bus |
CN105516907B (en) * | 2015-12-30 | 2019-02-15 | 广州中海达卫星导航技术股份有限公司 | Data transmission method based on bluetooth technology with low power consumption |
US10613606B2 (en) * | 2016-03-17 | 2020-04-07 | Intel Corporation | Wireless component state based power management |
US10719107B2 (en) * | 2016-03-29 | 2020-07-21 | Intel Corporation | Method and apparatus to maintain node power budget for systems that share a power supply |
US10142085B2 (en) | 2016-05-31 | 2018-11-27 | At&T Mobility Ii Llc | Assigning an access point based upon a power state of a mobile device |
JP6716356B2 (en) * | 2016-06-20 | 2020-07-01 | キヤノン株式会社 | Communication device, control method thereof, and program |
US10916090B2 (en) | 2016-08-23 | 2021-02-09 | Igt | System and method for transferring funds from a financial institution device to a cashless wagering account accessible via a mobile device |
US20180181186A1 (en) * | 2016-12-27 | 2018-06-28 | Paul S. Diefenbaugh | Buffering data from high-speed i/o to enable longer reduced power consumption state residency |
US10474211B2 (en) | 2017-07-28 | 2019-11-12 | Advanced Micro Devices, Inc. | Method for dynamic arbitration of real-time streams in the multi-client systems |
US20190101969A1 (en) * | 2017-09-29 | 2019-04-04 | Intel Corporation | Control Blocks for Processor Power Management |
US10955901B2 (en) * | 2017-09-29 | 2021-03-23 | Advanced Micro Devices, Inc. | Saving power in the command processor using queue based watermarks |
US11386747B2 (en) | 2017-10-23 | 2022-07-12 | Aristocrat Technologies, Inc. (ATI) | Gaming monetary instrument tracking system |
DE102018005620A1 (en) * | 2018-07-17 | 2020-01-23 | WAGO Verwaltungsgesellschaft mit beschränkter Haftung | Circuit for the buffered transmission of data |
CN111221402A (en) * | 2018-11-26 | 2020-06-02 | 超威半导体(上海)有限公司 | Multi-layer low power states |
US10771100B1 (en) | 2019-03-22 | 2020-09-08 | Marvell Asia Pte., Ltd. | Method and apparatus for efficient fast retraining of ethernet transceivers |
US11228465B1 (en) | 2019-03-22 | 2022-01-18 | Marvell Asia Pte, Ltd. | Rapid training method for high-speed ethernet |
US11115151B1 (en) | 2019-03-22 | 2021-09-07 | Marvell Asia Pte, Ltd. | Method and apparatus for fast retraining of ethernet transceivers based on trickling error |
US10750260B1 (en) | 2019-07-29 | 2020-08-18 | Ciena Corporation | Subrating and multiplexing non-standard rates in ZR and ZR+ optical interfaces |
GB2603733B (en) | 2019-11-27 | 2024-10-02 | Shure Acquisition Holdings Inc | Controller with network mode and direct mode |
US12058196B1 (en) * | 2020-03-26 | 2024-08-06 | Amazon Technologies, Inc. | Data transfer timeout management |
CN116458125A (en) * | 2020-11-05 | 2023-07-18 | 索尼半导体解决方案公司 | Communication device, communication method, program, and communication system |
WO2022250649A1 (en) * | 2021-05-24 | 2022-12-01 | Hewlett-Packard Development Company, L.P. | Role management of device nodes in an aggregated node system |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5757779A (en) * | 1995-06-06 | 1998-05-26 | Rockwell International Corporation | Automatic skywave communications system |
US6411817B1 (en) * | 2000-01-21 | 2002-06-25 | Lucent Technologies Inc. | Method and system for dynamic downlink power control in a time-division, multiplex wireless system |
US20030054825A1 (en) * | 1998-12-03 | 2003-03-20 | Qualcomm, Inc. | Method and apparatus for controlling transmission power while in soft handoff |
US6611676B2 (en) * | 1998-04-17 | 2003-08-26 | Matsushita Electric Industrial Co., Ltd. | Radio communication apparatus and transmission rate control method |
US20040218562A1 (en) * | 2003-03-07 | 2004-11-04 | Nokia Corporation | Channel selection in wireless telecommunication system |
US20060029021A1 (en) * | 2004-08-05 | 2006-02-09 | Hitachi Communication Technologies, Inc. | Handoff control method, base station controller, and base transceiver subsystem |
US7164883B2 (en) * | 2001-02-14 | 2007-01-16 | Motorola. Inc. | Method and system for modeling and managing terrain, buildings, and infrastructure |
US20070083778A1 (en) * | 2005-09-29 | 2007-04-12 | Kyocera Corporation | Wireless Communication Terminal, Transmission Control Mehtod, and Computer Program |
US7310380B1 (en) * | 2004-05-28 | 2007-12-18 | Rockwell Collins, Inc. | Generic transmission parameter configuration |
US20080233885A1 (en) * | 2007-03-20 | 2008-09-25 | Darioush Agahi | System And Method For Dynamically Improving Call Connection |
US7710868B2 (en) * | 2004-05-11 | 2010-05-04 | International Business Machines Corporation | Recording media, information processing apparatus, control method and program |
Family Cites Families (107)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010050943A1 (en) * | 1989-08-03 | 2001-12-13 | Mahany Ronald L. | Radio frequency communication network having adaptive communication parameters |
US5218704A (en) * | 1989-10-30 | 1993-06-08 | Texas Instruments | Real-time power conservation for portable computers |
JP3132509B2 (en) * | 1990-07-06 | 2001-02-05 | 富士通株式会社 | Data reception processing device |
US5210829A (en) * | 1990-12-12 | 1993-05-11 | Digital Equipment Corporation | Adjustable threshold for buffer management |
US5446904A (en) * | 1991-05-17 | 1995-08-29 | Zenith Data Systems Corporation | Suspend/resume capability for a protected mode microprocessor |
US5560022A (en) | 1994-07-19 | 1996-09-24 | Intel Corporation | Power management coordinator system and interface |
US5802305A (en) | 1996-05-17 | 1998-09-01 | Microsoft Corporation | System for remotely waking a sleeping computer in power down state by comparing incoming packet to the list of packets storing on network interface card |
US6085325A (en) * | 1996-12-16 | 2000-07-04 | Intel Corporation | Method and apparatus for supporting power conservation operation modes |
US6058443A (en) | 1997-02-18 | 2000-05-02 | Advanced Micro Devices, Inc. | System for partitioning PC chipset functions into logic and port integrated circuits |
US5794058A (en) * | 1997-02-28 | 1998-08-11 | International Business Machines Corporation | Extension device for a computer system capable of operating in at least three states of power management |
CA2223193A1 (en) | 1997-12-01 | 1999-06-01 | Newbridge Networks Corporation | Adaptive buffering allocation under multiple quality of service |
US6496869B1 (en) | 1998-03-26 | 2002-12-17 | National Semiconductor Corporation | Receiving data on a networked computer in a reduced power state |
JP2000048570A (en) | 1998-07-28 | 2000-02-18 | Mitsubishi Electric Corp | Semiconductor memory |
JP3719482B2 (en) * | 1998-07-29 | 2005-11-24 | 株式会社デンソー | Wireless communication device |
US6754189B1 (en) * | 1999-04-08 | 2004-06-22 | Lucent Technologies Inc. | Method of queue length based burst management in wireless communication systems |
US6463542B1 (en) | 1999-05-28 | 2002-10-08 | Advanced Micro Devices, Inc. | Power management indication mechanism for supporting power saving mode in computer system |
JP3334753B2 (en) * | 1999-06-15 | 2002-10-15 | 日本電気株式会社 | Mobile terminal, mobile communication system, and method for suppressing power consumption of mobile terminal |
US6311081B1 (en) * | 1999-09-15 | 2001-10-30 | Ericsson Inc. | Low power operation in a radiotelephone |
US6477361B1 (en) | 2000-05-23 | 2002-11-05 | Lucent Technologies Inc. | Remote power-down control of wireless terminal |
EP1182875A3 (en) | 2000-07-06 | 2003-11-26 | Matsushita Electric Industrial Co., Ltd. | Streaming method and corresponding system |
US7936693B2 (en) | 2001-05-18 | 2011-05-03 | Network Resonance, Inc. | System, method and computer program product for providing an IP datalink multiplexer |
US6791942B2 (en) | 2001-06-20 | 2004-09-14 | General Instrument Corporation | Dynamic ethernet power management |
US7577857B1 (en) | 2001-08-29 | 2009-08-18 | 3Com Corporation | High speed network interface with automatic power management with auto-negotiation |
US7274661B2 (en) * | 2001-09-17 | 2007-09-25 | Altera Corporation | Flow control method for quality streaming of audio/video/media over packet networks |
MXPA04003684A (en) * | 2001-10-19 | 2004-07-22 | Interdigital Tech Corp | System for improved power savings during full dtx mode of operation in the downlink. |
US6813719B2 (en) * | 2001-11-16 | 2004-11-02 | Apple Computer, Inc. | Method and apparatus for increasing the operating frequency of an electronic circuit |
US7171570B2 (en) * | 2001-11-16 | 2007-01-30 | Apple Computer, Inc. | Method and apparatus for selectively increasing the operating speed of an electronic circuit |
JP2003158481A (en) * | 2001-11-21 | 2003-05-30 | Nec Corp | Radio access communication system |
US6865653B2 (en) * | 2001-12-18 | 2005-03-08 | Intel Corporation | System and method for dynamic power management using data buffer levels |
US6934914B1 (en) * | 2001-12-20 | 2005-08-23 | Ciena Corporation | System to optimize received power in an optical network |
US6990603B2 (en) | 2002-01-02 | 2006-01-24 | Exanet Inc. | Method and apparatus for securing volatile data in power failure in systems having redundancy |
US7400554B2 (en) * | 2002-01-02 | 2008-07-15 | Intel Corporation | Automatic read of current time when exiting low-power state |
US7260106B2 (en) * | 2002-01-24 | 2007-08-21 | Intel Corporation | Method and apparatus for managing energy usage of processors while executing protocol state machines |
US7107487B2 (en) | 2002-04-12 | 2006-09-12 | Lenovo (Singapore) Pte Ltd. | Fault tolerant sleep mode of operation |
US7110783B2 (en) | 2002-04-17 | 2006-09-19 | Microsoft Corporation | Power efficient channel scheduling in a wireless network |
US6988156B2 (en) * | 2002-04-18 | 2006-01-17 | Sun Microsystems, Inc. | System and method for dynamically tuning interrupt coalescing parameters |
JP4030792B2 (en) | 2002-04-26 | 2008-01-09 | 株式会社ルネサステクノロジ | Wireless communication apparatus and microcomputer |
US7564812B1 (en) | 2002-06-06 | 2009-07-21 | Bbn Technologies Corp | Method and apparatus for varying times/channels of broadcast beacons |
US7069457B2 (en) * | 2002-06-28 | 2006-06-27 | Intel Corporation | Automatic mobile device scalable synchronization based on battery state |
US7093146B2 (en) * | 2002-07-31 | 2006-08-15 | Hewlett-Packard Development Company, L.P. | Power management state distribution using an interconnect |
US6961595B2 (en) * | 2002-08-08 | 2005-11-01 | Flarion Technologies, Inc. | Methods and apparatus for operating mobile nodes in multiple states |
US6788963B2 (en) * | 2002-08-08 | 2004-09-07 | Flarion Technologies, Inc. | Methods and apparatus for operating mobile nodes in multiple a states |
EP1392004B1 (en) * | 2002-08-22 | 2009-01-21 | Interuniversitair Microelektronica Centrum Vzw | Method for multi-user MIMO transmission and apparatuses suited therefore |
JP2004104192A (en) * | 2002-09-05 | 2004-04-02 | Toyo Commun Equip Co Ltd | Buffer overflow detection method and circuit |
US7006824B1 (en) * | 2002-09-10 | 2006-02-28 | Marvell International Ltd. | Frame/packet-based calibration for wireless transceivers |
JP4204290B2 (en) | 2002-09-25 | 2009-01-07 | アルプス電気株式会社 | Communication control device |
JP2004118746A (en) | 2002-09-27 | 2004-04-15 | Toshiba Corp | Electronic equipment, and start-up control method for storage device |
US7359979B2 (en) * | 2002-09-30 | 2008-04-15 | Avaya Technology Corp. | Packet prioritization and associated bandwidth and buffer management techniques for audio over IP |
US20040128387A1 (en) | 2002-12-27 | 2004-07-01 | Kwan Wu Chin | Broadcasting information in ad-hoc network clusters between pseudo-random time intervals |
US20040203976A1 (en) * | 2002-12-30 | 2004-10-14 | Gupta Vivek G. | Power management for nodes coupled to a communication link |
US7269629B2 (en) | 2002-12-30 | 2007-09-11 | Intel Corporation | Method and apparatus for distributing notification among cooperating devices and device channels |
US7137018B2 (en) * | 2002-12-31 | 2006-11-14 | Intel Corporation | Active state link power management |
US8032659B2 (en) | 2003-01-21 | 2011-10-04 | Nextio Inc. | Method and apparatus for a shared I/O network interface controller |
US7356561B2 (en) | 2003-05-01 | 2008-04-08 | Lucent Technologies Inc. | Adaptive sleeping and awakening protocol for an energy-efficient adhoc network |
US7426597B1 (en) | 2003-05-07 | 2008-09-16 | Nvidia Corporation | Apparatus, system, and method for bus link width optimization of a graphics system |
US20050003836A1 (en) * | 2003-06-04 | 2005-01-06 | Ntt Docomo, Inc. | Paging control apparatus, mobile node, paging control system, and paging control method |
US20040264396A1 (en) * | 2003-06-30 | 2004-12-30 | Boris Ginzburg | Method for power saving in a wireless LAN |
US20050097378A1 (en) | 2003-07-29 | 2005-05-05 | Hwang Andrew S. | Method and system for power management in a gigabit Ethernet chip |
US8238241B2 (en) | 2003-07-29 | 2012-08-07 | Citrix Systems, Inc. | Automatic detection and window virtualization for flow control |
CN1839369A (en) * | 2003-08-20 | 2006-09-27 | 皇家飞利浦电子股份有限公司 | Dynamic memory buffer |
US7355969B2 (en) * | 2003-10-07 | 2008-04-08 | Alcatel | Line card port protection rate limiter circuitry |
US7320080B2 (en) | 2003-10-15 | 2008-01-15 | Intel Corporation | Power management over switching fabrics |
US7127391B2 (en) * | 2003-11-20 | 2006-10-24 | Mindspeed Technologies, Inc. | Method and apparatus for slice point determination |
KR100943582B1 (en) | 2003-12-12 | 2010-02-23 | 삼성전자주식회사 | System and method for controlling operational states of medium access control layer in broadband wireless access communication system |
US7751442B2 (en) * | 2003-12-19 | 2010-07-06 | Intel Corporation | Serial ethernet device-to-device interconnection |
US7237131B2 (en) * | 2003-12-30 | 2007-06-26 | Intel Corporation | Transaction-based power management in a computer system |
US20050147082A1 (en) | 2003-12-30 | 2005-07-07 | Keddy Asha R. | Apparatus to control PHY state of network devices |
US7573894B2 (en) * | 2004-02-17 | 2009-08-11 | Mitel Networks Corporation | Method of dynamic adaptation for jitter buffering in packet networks |
DE102004009695A1 (en) | 2004-02-27 | 2005-09-29 | Advanced Micro Devices, Inc., Sunnyvale | Efficient power-saving mode for WLAN communication systems |
JP2005250671A (en) | 2004-03-02 | 2005-09-15 | Sony Corp | Communication system, communication apparatus, communication method and program |
US7039430B2 (en) | 2004-03-04 | 2006-05-02 | Samsung Electronics Co., Ltd. | System and method for controlling an operational mode of a MAC layer in a broadband wireless access communication system |
US20050239411A1 (en) * | 2004-03-31 | 2005-10-27 | Hazra Mousumi M | Method and apparatus to distribute statistics in a wireless communication network |
KR100744079B1 (en) * | 2004-04-28 | 2007-08-01 | 삼성전자주식회사 | Method of state determination in reservation slots in wireless network |
JP2005328439A (en) * | 2004-05-17 | 2005-11-24 | Toshiba Corp | Power consumption control method for information communication system, communication processing apparatus using method, and power consumption control program for communication processing apparatus |
US7313712B2 (en) | 2004-05-21 | 2007-12-25 | Intel Corporation | Link power saving state |
US7315952B2 (en) * | 2004-06-02 | 2008-01-01 | Intel Corporation | Power state coordination between devices sharing power-managed resources |
US7711374B2 (en) * | 2004-08-13 | 2010-05-04 | Broadcom Corporation | Dynamic reconfiguration of communication resources in a multi-transceiver configuration |
US7565562B2 (en) * | 2004-09-03 | 2009-07-21 | Intel Corporation | Context based power management |
JP2006148749A (en) | 2004-11-24 | 2006-06-08 | Japan Telecom Co Ltd | Data communication system, terminal device, and communication control apparatus |
US20060142026A1 (en) * | 2004-12-28 | 2006-06-29 | Al-Baghdadi Mouayad J | Remote operation and maintenance center with location based services |
US7554783B2 (en) | 2005-01-25 | 2009-06-30 | Linear Technology Corporation | High-power foldback mechanism in system for providing power over communication link |
US20060253735A1 (en) | 2005-03-11 | 2006-11-09 | Interdigital Technology Corporation | Method and system for conserving battery power of mesh points in a mesh network |
US7720017B2 (en) * | 2005-03-11 | 2010-05-18 | Qualcomm Incorporated | Parallel turbo decoders with multiplexed output |
JP2006277332A (en) * | 2005-03-29 | 2006-10-12 | Seiko Epson Corp | Integrated circuit device, microcomputer, and electronic device |
US7401238B2 (en) * | 2005-07-28 | 2008-07-15 | Cassatt Corporation | System and method for causing an idle image to execute on an application node of a distributed computing system when instructed to power down |
US20090164821A1 (en) | 2005-10-28 | 2009-06-25 | Nxp B.V. | Method and a system for controlling a sleep mode of a device in a wireless communications network or in a mobile point-to-point connection |
US8195247B2 (en) | 2005-11-08 | 2012-06-05 | Broadcom Corporation | Cable sense mode for intelligent power saving in absence of link pulse |
CN1976297A (en) | 2005-11-28 | 2007-06-06 | 北京六合万通微电子技术有限公司 | Method for reducing power dissipation of radio equipment in network |
US7573940B2 (en) | 2005-12-07 | 2009-08-11 | Intel Corporation | Data transmission at energy efficient rates |
CN100358311C (en) | 2006-02-14 | 2007-12-26 | 北京邮电大学 | Method of implementing isomeric sensor network system supporting wake mechanism |
CN101035175B (en) * | 2006-03-09 | 2011-08-10 | 华为技术有限公司 | Method and device for saving the power of the digital user line |
TW200739349A (en) | 2006-04-12 | 2007-10-16 | Giga Byte Tech Co Ltd | Volatile storage device and serial connection type mixed storage device having the same |
US20070242676A1 (en) * | 2006-04-13 | 2007-10-18 | Corrigent Systems Ltd. | Interface between a synchronous network and high-speed ethernet |
US7457892B2 (en) * | 2006-06-05 | 2008-11-25 | Freescale Semiconductor, Inc. | Data communication flow control device and methods thereof |
KR100922984B1 (en) | 2006-06-16 | 2009-10-22 | 삼성전자주식회사 | Apparatus and method for controls slotted mode each systems using one sleep controller in hybrid mode terminal of mobile communication system |
JP2008059577A (en) | 2006-08-03 | 2008-03-13 | Matsushita Electric Ind Co Ltd | Network chip and network transmission/reception device |
JP4105221B2 (en) | 2006-09-20 | 2008-06-25 | 松下電器産業株式会社 | Relay transmission device and relay transmission method |
US7689851B2 (en) * | 2006-10-27 | 2010-03-30 | Hewlett-Packard Development Company, L.P. | Limiting power state changes to a processor of a computer device |
US7813296B2 (en) | 2006-12-27 | 2010-10-12 | Telefonaktiebolaget L M Ericsson (Publ) | Adapting transmission and reception time in packet based cellular systems |
JP4354483B2 (en) | 2006-12-28 | 2009-10-28 | シャープ株式会社 | Image processing apparatus, image processing system, image processing method, and image processing program |
US7941683B2 (en) * | 2007-05-02 | 2011-05-10 | Advanced Micro Devices, Inc. | Data processing device with low-power cache access mode |
US8156353B2 (en) * | 2007-09-17 | 2012-04-10 | Intel Corporation | Techniques for communications power management based on system states |
US10244473B2 (en) * | 2007-10-10 | 2019-03-26 | Nokia Technologies Oy | Apparatus, method, and computer program product providing improved power management in wireless networks |
US8312307B2 (en) | 2007-11-07 | 2012-11-13 | Intel Corporation | Systems and methods for reducing power consumption during communication between link partners |
US8824378B2 (en) | 2008-02-01 | 2014-09-02 | Maarten Menzo Wentink | Unscheduled peer power save mode |
US8213303B2 (en) | 2008-09-12 | 2012-07-03 | Intel Corporation | Generating, at least in part, and/or receiving, at least in part, at least one request |
US7903597B2 (en) * | 2008-10-29 | 2011-03-08 | Cisco Technology, Inc. | Power management of a network device |
-
2008
- 2008-09-11 US US12/208,824 patent/US8156353B2/en active Active
- 2008-09-11 US US12/208,654 patent/US8112646B2/en active Active
- 2008-09-11 US US12/208,763 patent/US8479028B2/en active Active
- 2008-09-11 US US12/208,905 patent/US8145920B2/en not_active Ceased
- 2008-09-12 CN CN200880107063XA patent/CN101802753B/en active Active
- 2008-09-12 EP EP08832466.0A patent/EP2191345A4/en not_active Withdrawn
- 2008-09-12 KR KR1020107005914A patent/KR101140980B1/en active IP Right Grant
- 2008-09-12 WO PCT/US2008/076135 patent/WO2009039034A1/en active Application Filing
- 2008-09-12 JP JP2010524263A patent/JP5047360B2/en not_active Expired - Fee Related
-
2012
- 2012-03-20 US US13/424,709 patent/US20120178491A1/en not_active Abandoned
-
2013
- 2013-05-08 US US13/889,472 patent/USRE45600E1/en active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5757779A (en) * | 1995-06-06 | 1998-05-26 | Rockwell International Corporation | Automatic skywave communications system |
US6611676B2 (en) * | 1998-04-17 | 2003-08-26 | Matsushita Electric Industrial Co., Ltd. | Radio communication apparatus and transmission rate control method |
US20030054825A1 (en) * | 1998-12-03 | 2003-03-20 | Qualcomm, Inc. | Method and apparatus for controlling transmission power while in soft handoff |
US6411817B1 (en) * | 2000-01-21 | 2002-06-25 | Lucent Technologies Inc. | Method and system for dynamic downlink power control in a time-division, multiplex wireless system |
US7164883B2 (en) * | 2001-02-14 | 2007-01-16 | Motorola. Inc. | Method and system for modeling and managing terrain, buildings, and infrastructure |
US20040218562A1 (en) * | 2003-03-07 | 2004-11-04 | Nokia Corporation | Channel selection in wireless telecommunication system |
US7710868B2 (en) * | 2004-05-11 | 2010-05-04 | International Business Machines Corporation | Recording media, information processing apparatus, control method and program |
US7310380B1 (en) * | 2004-05-28 | 2007-12-18 | Rockwell Collins, Inc. | Generic transmission parameter configuration |
US20060029021A1 (en) * | 2004-08-05 | 2006-02-09 | Hitachi Communication Technologies, Inc. | Handoff control method, base station controller, and base transceiver subsystem |
US20070083778A1 (en) * | 2005-09-29 | 2007-04-12 | Kyocera Corporation | Wireless Communication Terminal, Transmission Control Mehtod, and Computer Program |
US20080233885A1 (en) * | 2007-03-20 | 2008-09-25 | Darioush Agahi | System And Method For Dynamically Improving Call Connection |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090144587A1 (en) * | 2007-11-30 | 2009-06-04 | Infineon Technologies Ag | Device and method for electronic controlling |
US8964779B2 (en) * | 2007-11-30 | 2015-02-24 | Infineon Technologies Ag | Device and method for electronic controlling |
US20130040590A1 (en) * | 2008-11-04 | 2013-02-14 | Tatsuo Nakagawa | Electronic circuit and radio communications system |
US8792946B2 (en) * | 2008-11-04 | 2014-07-29 | Hitachi, Ltd. | Electronic circuit and radio communications system |
US20140208138A1 (en) * | 2013-01-24 | 2014-07-24 | Qualcomm Incorporated | System and method for reducing power consumption |
US9152206B2 (en) * | 2013-01-24 | 2015-10-06 | Qualcomm Incorporated | System and method for reducing power consumption |
EP2985675A1 (en) * | 2014-08-13 | 2016-02-17 | Samsung Electronics Co., Ltd. | Method of controlling an electronic device according to a communication state of the electronic device |
US10470134B2 (en) | 2014-08-13 | 2019-11-05 | Samsung Electronics Co., Ltd. | Method of controlling an electronic device according to a communication state of the electronic device |
US10698205B2 (en) | 2018-02-01 | 2020-06-30 | Beijing Forever Technology Co., Ltd. | Device adapted to eyeglasses |
Also Published As
Publication number | Publication date |
---|---|
US8145920B2 (en) | 2012-03-27 |
KR20100044268A (en) | 2010-04-29 |
US20090077396A1 (en) | 2009-03-19 |
US20090077395A1 (en) | 2009-03-19 |
EP2191345A1 (en) | 2010-06-02 |
US20090077394A1 (en) | 2009-03-19 |
US20090077401A1 (en) | 2009-03-19 |
CN101802753B (en) | 2012-10-31 |
KR101140980B1 (en) | 2012-07-05 |
US8156353B2 (en) | 2012-04-10 |
US8479028B2 (en) | 2013-07-02 |
USRE45600E1 (en) | 2015-07-07 |
WO2009039034A1 (en) | 2009-03-26 |
JP5047360B2 (en) | 2012-10-10 |
EP2191345A4 (en) | 2014-03-26 |
US8112646B2 (en) | 2012-02-07 |
CN101802753A (en) | 2010-08-11 |
JP2010539753A (en) | 2010-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8156353B2 (en) | Techniques for communications power management based on system states | |
US8924768B2 (en) | Inter-processor communication channel including power-down functionality | |
Christensen et al. | The next frontier for communications networks: power management | |
US8989096B2 (en) | Application-aware radio power saving | |
Anand et al. | Self-tuning wireless network power management | |
US8312299B2 (en) | Method and apparatus for dynamic power management control using serial bus management protocols | |
US7573940B2 (en) | Data transmission at energy efficient rates | |
CN102959487B (en) | Be provided for the wakeup logic waken up from low-power mode by electronic equipment | |
US8667311B2 (en) | Method and system for optimized power management for a network device supporting PCI-E and energy efficient ethernet | |
US20080133953A1 (en) | System device including nic and power-saving controlling method of the same | |
EP2247027B1 (en) | System and method for enabling fallback states for energy efficient ethernet | |
WO2018063760A1 (en) | Power management techniques for wirelessly-interconnected devices | |
WO2022076120A1 (en) | Electronic device, method, medium and apparatus for managing extender nodes | |
Meng et al. | Greening the internet using multi-frequency scaling scheme | |
Nguyen et al. | Prediction-based energy policy for mobile virtual desktop infrastructure in a cloud environment | |
TWI379192B (en) | Buffering techniques for power management | |
Gobriel et al. | Long idle: Making idle networks quiet for platform energy-efficiency | |
WO2012167520A1 (en) | Automatic control method and system for power consumption | |
Guo | Design and evaluation of an energy efficient frequency adaptive router | |
JP2021057925A (en) | Communication device, transfer speed changing method, and program | |
Jung et al. | Flow-Through-Queue based Power Management for Gigabit Ethernet Controller | |
CN103092307B (en) | A kind of method being realized power management by individual-layer data communication protocol | |
Gobriel et al. | Energy Efficiency of Connected Mobile Platforms in Presence of Background Traffic |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |
|
AS | Assignment |
Owner name: TAHOE RESEARCH, LTD., IRELAND Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTEL CORPORATION;REEL/FRAME:061175/0176 Effective date: 20220718 |