Nothing Special   »   [go: up one dir, main page]

US7447824B2 - Dynamic lane management system and method - Google Patents

Dynamic lane management system and method Download PDF

Info

Publication number
US7447824B2
US7447824B2 US11/259,284 US25928405A US7447824B2 US 7447824 B2 US7447824 B2 US 7447824B2 US 25928405 A US25928405 A US 25928405A US 7447824 B2 US7447824 B2 US 7447824B2
Authority
US
United States
Prior art keywords
lane width
computer system
downstream device
response
initiate
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.)
Expired - Fee Related, expires
Application number
US11/259,284
Other versions
US20070094437A1 (en
Inventor
Monji G. Jabori
Rahul V. Lakdawala
Qijun Chen
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Priority to US11/259,284 priority Critical patent/US7447824B2/en
Assigned to HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. reassignment HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: CHEN, QIJUN, JABORI, MONJI, LAKDAWALA, RAHUL V.
Priority to EP06020290.0A priority patent/EP1780624B1/en
Priority to JP2006281047A priority patent/JP4404887B2/en
Priority to CNA2006101365304A priority patent/CN1955887A/en
Publication of US20070094437A1 publication Critical patent/US20070094437A1/en
Application granted granted Critical
Publication of US7447824B2 publication Critical patent/US7447824B2/en
Expired - Fee Related legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3253Power saving in bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • PCI peripheral component interconnect
  • I/O serial input/output
  • PCI express architecture itself consumes power.
  • the additional power consumption of the PCI express architecture can adversely affect battery life (e.g., for a portable computing device), cause an increased load on thermal energy dissipation systems and/or detracts from the amount of power available for other systems and/or applications.
  • FIG. 1 is a block diagram illustrating an embodiment of a dynamic lane management system in accordance with the present invention
  • FIG. 2 is a circuit diagram illustrating an embodiment of a dynamic lane management system in accordance with the present invention
  • FIG. 3 is a flow diagram illustrating an embodiment of a dynamic lane management method in accordance with the present invention
  • FIG. 4 is a flow diagram illustrating another embodiment of a dynamic lane management method in accordance with the present invention.
  • FIG. 5 is a flow diagram illustrating yet another embodiment of a dynamic lane management method in accordance with the present invention.
  • FIGS. 1-5 of the drawings like numerals being used for like and corresponding parts of the various drawings.
  • FIG. 1 is a diagram illustrating an embodiment of a dynamic lane management system 10 in accordance with the present invention.
  • system 10 is implemented in a computer system 12 configured to utilize peripheral component interconnect (PCI) express buses and/or lanes 14 .
  • PCI peripheral component interconnect
  • computer system 12 comprises a processor 20 communicatively coupled to a host bridge 22 by PCI express bus 14 1 , a memory 24 communicatively coupled to host bridge 22 by PCI express bus 14 2 , and an input/output (I/O) bridge 26 communicatively coupled to host bridge 22 by PCI express bus 14 3 .
  • I/O input/output
  • devices 30 are communicatively coupled by PCI express buses 14 to host bridge 22 and/or I/O bridge 26 , respectively.
  • device 30 1 , 30 2 , and 30 3 are communicatively coupled to host bridge 22 by respective PCI express buses 14 4 , 14 5 and 14 6 .
  • Devices 30 4 and 30 5 are communicatively coupled to I/O bridge 26 by respective PCI buses 14 7 and 14 8 .
  • devices 30 6 , 30 7 and 30 8 are communicatively coupled to a switch 32 by PCI express bus 14 9 by respective PCI express bus branches 14 10 , 14 11 and 14 12 , and switch 32 is communicatively coupled to I/O bridge 26 via PCI express bus 14 13 .
  • Devices 30 may comprise any type of device such as, but not limited to, a hard disk drive (HDD), a graphics module or subsystem, local input/output interface(s), an Ethernet interface, a docking station or any other type of peripheral and/or non-peripheral device or component. It should also be understood that the architecture and/or resource functions of system 10 may be otherwise configured (e.g., host bridge 22 may be formed as part of and/or otherwise incorporated into processor 20 , memory 24 may be formed as part of and/or otherwise incorporated into processor 20 , etc.).
  • host bridge 22 may be formed as part of and/or otherwise incorporated into processor 20
  • memory 24 may be formed as part of and/or otherwise incorporated into processor 20 , etc.
  • memory 24 comprises an operating system 36 and a control module 38 .
  • Operating system 36 and/or control module 38 may comprise hardware, software, or a combination of hardware and software.
  • operating system 36 and control module 38 are illustrated as being stored in memory 24 so as to be accessible and executable by processor 20 . However, it should be understood that operating system 36 and/or control module 38 may be otherwise stored.
  • device 30 1 comprises logic 40 which may comprise software, hardware, or a combination of software and hardware.
  • logic 40 is illustrated only with respect to device 30 1 .
  • control module 38 and/or logic 40 are used to dynamically control, manage and/or otherwise adjust a PCI express bus lane width between two devices (e.g., an upstream device and a downstream device).
  • each link and/or lane between two devices comprises an “upstream” facing port and a “downstream” facing port.
  • an “upstream” device or “downstream” device may comprise any of devices 30 , switch 32 , I/O bridge 26 , host bridge 22 , processor 20 or memory 24 .
  • Embodiments of the present invention dynamically control, manage and/or otherwise change a lane width (i.e., the number of lanes) between an upstream device and a downstream device in response to at least one power-related event associated with computer system 12 .
  • a lane width i.e., the number of lanes
  • a lane width of one or more PCI express buses are reduced to reduce thermal energy generation by computer system 12 .
  • a lane width between one or more upstream and downstream devices is dynamically reduced in response to detecting a change in a power supply mode to computer system 12 .
  • a lane width between one or more upstream and downstream devices is dynamically reduced to a predetermined or desired level, thereby reducing the power consumption associated with such PCI express buses.
  • a lane width between the subject downstream device and an upstream device is dynamically reduced to a predetermined or desired level, thereby reducing the power associated with the PCI express bus connected to the subject device.
  • a lane width of one or more PCI express buses may also be dynamically increased in response to detecting a change in at least one power-related event. For example, in response to detecting a change from a DC power supply mode to an AC power supply mode, reduced operating temperature, increased processing level, etc.
  • dynamic PCI express bus lane width management is performed in response to user input.
  • control module 38 is configured to monitor a power supply condition and/or mode applied to computer system 12 (e.g., AC power or battery power). In response to detecting a change in a power supply mode to computer system 12 , control module 38 communicates with operating system 36 such that operating system 36 notifies one or more downstream devices of the power supply mode change event. In some embodiments of the present invention, control module 38 and/or operating system 36 registers particular devices for receiving a notification of a power-related event for dynamically adjusting a corresponding PCI express bus lane width associated with the registered device.
  • a power supply condition and/or mode applied to computer system 12 e.g., AC power or battery power.
  • control module 38 communicates with operating system 36 such that operating system 36 notifies one or more downstream devices of the power supply mode change event.
  • control module 38 and/or operating system 36 registers particular devices for receiving a notification of a power-related event for dynamically adjusting a corresponding PCI express bus lane width associated with the registered device.
  • particular devices that generally consume large amounts of power e.g., graphics-intensive applications
  • devices that may be throttled and/or otherwise adjusted to change a power consumption mode are registered, either as a default or predetermined device listing and/or in response to a user designation of such devices, to receive a notification of the power-related event.
  • control module 38 and/or operating system 36 transmits a signal and/or otherwise notifies registered devices (e.g. device 30 1 ) of detection of a power-related event.
  • logic 40 dynamically changes a PCI express bus lane width between the notified device and an upstream device (e.g., between device 30 1 , and host bridge 22 ).
  • logic 40 is configured to perform a lane width re-negotiation operation in response to receiving notification of the power-related event.
  • logic 40 in response to device 30 1 receiving notice of the power-related event, initiates a PCI express bus lane width re-negotiation operation with host bridge 22 to increase or decrease a lane width between host bridge 22 and device 30 1 .
  • logic 40 in response to detecting any change in power supply mode to computer system 12 , is configured to initiate a lane width re-negotiation operation to reduce or increase a PCI bus express lane width between device 30 1 and host bridge 22 .
  • a lane width between one or more upstream and downstream devices is dynamically reduced to a predetermined or desired level
  • a lane width between one or more upstream and downstream devices is dynamically increased to a predetermined or desired level.
  • logic 40 initiates the lane width re-negotiation operation with host bridge 22 by initially completing any pending transactions or events in queue at device 30 1 .
  • logic 40 causes any registers of device 30 1 and a state of device 30 1 to be saved to enable device 30 1 to resume operations upon completion of the lane width re-negotiation operation.
  • device 30 1 transmits a signal to the upstream device host bridge 22 to initiate a lane width re-negotiation with host bridge 22 .
  • the signal transmitted by device 30 1 to host bridge 22 comprises a hot reset signal, thereby causing a lane width re-negotiation for all devices that are on the same PCI express bus branch.
  • device 30 1 transmits a retrain link signal to re-negotiate a lane width only for the PCI express bus lane between device 30 1 and host bridge 22 .
  • logic 40 performs and/or otherwise communicates with host bridge 22 during the lane width re-negotiation operation using a reduced and/or increased lane width depending on the power-related event (e.g., a reduced lane width to save power).
  • a reduced lane width comprises a predetermined lane width based on the type of power-related event.
  • the lane width may be reduced to a single lane for maximum battery power saving.
  • the lane width may be reduced to a lane width between a maximum and minimum lane width and/or a lane width requested and/or otherwise desired by a user.
  • a user may input and/or otherwise indicate to computer system 12 either a desired lane width and/or a desired level of power saving such that a desired power saving mode corresponds to a predetermined lane width (e.g., a desired amount of battery time correlated to a predetermined lane width).
  • a predetermined lane width e.g., a desired amount of battery time correlated to a predetermined lane width.
  • logic 40 performs the lane width re-negotiation operation with host bridge 22 using a predetermined quantity of PCI express bus lanes.
  • logic 40 is configured to perform the lane width re-negotiation operation using a single PCI express bus lane for achieving a maximum power saving, thereby conserving and/or otherwise extending battery life.
  • device 30 1 re-negotiates the lane width of PCI express bus 14 4 using a single lane.
  • dynamic lane width re-negotiation may be performed on any of the PCI express busses 14 and may be initiated by either an upstream device or a downstream device.
  • FIG. 2 is a circuit diagram representing a single PCI express lane bus 14 of system 12 employing an embodiment of dynamic lane management in accordance with the present invention.
  • a circuit 50 comprises a driver 52 associated with a downstream device (e.g., device 30 1 ) and a driver 54 associated with an upstream device (e.g., host bridge 22 ).
  • circuit 50 comprises a switch 58 coupled to each data flow path of lane 14 (e.g., the upstream and downstream data flow lanes).
  • a control signal issued by logic 40 , control module 38 and/or operating system 36 is used to actuate switch 58 to connect or disconnect lane 14 such that during a lane width re-negotiation operation, the PCI express lane bus 14 of FIG. 2 is either available or unavailable, respectively.
  • switch 58 disconnects the PCI express lane bus 14 of FIG. 2 , a reduced lane width is used during the lane width negotiation operation, thereby resulting in a lane width reduction between an upstream device and a downstream device.
  • FIG. 3 is a flow diagram illustrating an embodiment of a dynamic lane management method in accordance with the present invention.
  • the method begins at block 300 , where control module 38 determines a source of power supply for computer system 12 .
  • decisional block 302 a determination is made whether computer system 12 is powered by an AC power supply. If computer system 12 is not currently powered by an AC power supply (e.g., powered by a battery source), the method proceeds to block 308 . If computer system 12 is currently powered by an AC power supply, the method proceeds to block 304 , where control module 38 monitors computer system 12 for a power-related event (e.g., a DC-power event).
  • a power-related event e.g., a DC-power event
  • a DC-power event may comprise a change from an AC power supply to a DC power supply resulting from disconnection of computer system 12 from an external power supply outlet, an AC adaptor, or other source of AC power.
  • a determination is made whether a DC-power event has been detected. If a DC-power event has not been detected, the method proceeds to block 304 . If a DC-power event has been detected, the method proceeds to block 308 .
  • control module 38 transmits a power-related event change notification to at least one downstream device.
  • control module 38 may transmit a power-related event notification to any device registered to receive such notification (e.g., device 30 1 ) and/or all available devices
  • the downstream device completes pending transactions.
  • the downstream device saves device registers and a state of the downstream device.
  • the downstream device transmits a signal to an upstream device to initiate a lane width re-negotiation operation (e.g., a hot reset, link re-train or other type of lane width re-training signal).
  • a lane width re-negotiation operation e.g., a hot reset, link re-train or other type of lane width re-training signal.
  • the lane width re-negotiation operation is performed to reduce a lane width between the upstream and downstream device to a predetermined and/or reduced lane width.
  • the lane width is dynamically reduced in response to detecting a change from AC power to DC power.
  • control module 38 transmits a power-related event change notification to at least one downstream device and, in response to the power-related event change notification, the downstream device completes pending transactions, saves device registers and a state of the downstream device, and transmits a signal to an upstream device to initiate a lane width re-negotiation operation (e.g., a hot reset, link re-train or other type of lane width re-training signal) to increase a lane width between the upstream and downstream device.
  • a lane width re-negotiation operation e.g., a hot reset, link re-train or other type of lane width re-training signal
  • FIG. 4 is a flow diagram illustrating another embodiment of a dynamic lane management method in accordance with the present invention.
  • the method begins at block 400 , where control module 38 monitors a temperature condition of computer system 12 (e.g., a temperature condition of computer system 12 associated with thermal energy dissipation by computer system 12 ).
  • a determination is made whether a temperature of computer system 12 has exceeded a predetermined threshold. If the temperature of computer system 12 has not exceeded a predetermined threshold, the method proceeds to block 404 , where a control module 38 continues monitoring the temperature of computer system 12 . If a temperature of computer system 12 has exceeded a predetermined threshold, the method proceeds to block 406 , where a control module 38 and/or operating system 36 transmits an event notification signal to at least one downstream device.
  • the notified downstream device completes pending transactions.
  • the notified downstream device saves registers and a state of the downstream device.
  • the downstream device transmits a signal to an upstream device to initiate a lane width re-negotiation operation to modify a quantity of PCI express bus lanes 14 between the downstream device and the upstream device.
  • the signal transmitted by the downstream device may comprise a hot reset signal, a link re-train signal or other type of signal used to initiate a lane width re-training between the downstream and upstream device.
  • the lane width re-negotiation operation is performed using a predetermined and/or reduced lane width between the downstream device and the upstream device.
  • the lane width is preferably reduced to a predetermined quantity to reduce the thermal condition of the computer system 12 .
  • control module 38 and/or operating system 36 transmits an event notification signal to at least one downstream device and, in response to the signal, the notified downstream device completes pending transactions, saves registers and a state of the downstream device, and transmits a signal to an upstream device to initiate a lane width re-negotiation operation to increase a quantity of PCI express bus lanes 14 between the downstream device and the upstream device.
  • FIG. 5 is a flow diagram illustrating yet another embodiment of a dynamic lane management method in accordance with the present invention.
  • the method begins at block 500 , where control module 38 , operating system 36 and/or logic 40 monitors a processing level associated with a downstream device.
  • decisional block 502 a determination is made whether the processing level has fallen below a predetermined threshold. If the processing level of the downstream device has not fallen below a predetermined threshold, the method proceeds to block 504 , where the processing level of the downstream device continues to be monitored.
  • a lane width re-negotiation operation associated with the downstream device is initiated (e.g., completing pending transactions, saving registers and a state of the device, and communicating with the upstream device to re-negotiate to a reduced lane width).
  • the lane width is reduced in response to detecting a decreased processing level.
  • a re-negotiation operation is performed to dynamically increase the lane width.
  • embodiments of the present invention provide dynamic PCI express bus lane width re-negotiation in response to a variety of different power-related events associated with computer system 12 .
  • a rising and/or elevated temperature condition e.g., due to an increased processing level and/or otherwise
  • embodiments of the present invention automatically re-negotiate and/or re-train a PCI express bus lane width to either increase or decrease a lane width based on the event.
  • control module 38 may be provided as an ordered listing of executable instructions that can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device, and execute the instructions.
  • a “computer-readable medium” can be any means that can contain, store, communicate, propagate or transport the program for use by or in connection with the instruction execution system, apparatus, or device.
  • the computer-readable medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semi-conductor system, apparatus, device, or propagation medium.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Power Sources (AREA)
  • Traffic Control Systems (AREA)
  • Navigation (AREA)

Abstract

A dynamic lane management system comprises at least one downstream device of a computer system configured to dynamically initiate a lane width re-negotiation operation with at least one upstream device of the computer system in response to a detection of at least one power-related event associated with the computer system.

Description

BACKGROUND OF THE INVENTION
An increasing number of computer devices, such as portable laptop or notebook computers, handheld computing devices, desktop computers, etc., are utilizing a peripheral component interconnect (PCI) express high-speed serial input/output (I/O) bus to take advantage of high bandwidth and low latency. However, the PCI express architecture itself consumes power. Thus, the additional power consumption of the PCI express architecture can adversely affect battery life (e.g., for a portable computing device), cause an increased load on thermal energy dissipation systems and/or detracts from the amount of power available for other systems and/or applications.
BRIEF DESCRIPTION OF THE DRAWINGS
For a more complete understanding of the present invention and the advantages thereof, reference is now made to the following descriptions taken in connection with the accompanying drawings in which:
FIG. 1 is a block diagram illustrating an embodiment of a dynamic lane management system in accordance with the present invention;
FIG. 2 is a circuit diagram illustrating an embodiment of a dynamic lane management system in accordance with the present invention;
FIG. 3 is a flow diagram illustrating an embodiment of a dynamic lane management method in accordance with the present invention;
FIG. 4 is a flow diagram illustrating another embodiment of a dynamic lane management method in accordance with the present invention; and
FIG. 5 is a flow diagram illustrating yet another embodiment of a dynamic lane management method in accordance with the present invention.
DETAILED DESCRIPTION OF THE DRAWINGS
The preferred embodiments of the present invention and the advantages thereof are best understood by referring to FIGS. 1-5 of the drawings, like numerals being used for like and corresponding parts of the various drawings.
FIG. 1 is a diagram illustrating an embodiment of a dynamic lane management system 10 in accordance with the present invention. In the embodiment illustrated in FIG. 1, system 10 is implemented in a computer system 12 configured to utilize peripheral component interconnect (PCI) express buses and/or lanes 14. In the embodiment illustrated in FIG. 1, computer system 12 comprises a processor 20 communicatively coupled to a host bridge 22 by PCI express bus 14 1, a memory 24 communicatively coupled to host bridge 22 by PCI express bus 14 2, and an input/output (I/O) bridge 26 communicatively coupled to host bridge 22 by PCI express bus 14 3. In the embodiment illustrated in FIG. 1, devices 30 are communicatively coupled by PCI express buses 14 to host bridge 22 and/or I/O bridge 26, respectively. For example, in the embodiment illustrated in FIG. 1, device 30 1, 30 2, and 30 3 are communicatively coupled to host bridge 22 by respective PCI express buses 14 4, 14 5 and 14 6. Devices 30 4 and 30 5 are communicatively coupled to I/O bridge 26 by respective PCI buses 14 7 and 14 8. Further, devices 30 6, 30 7 and 30 8 are communicatively coupled to a switch 32 by PCI express bus 14 9 by respective PCI express bus branches 14 10, 14 11 and 14 12, and switch 32 is communicatively coupled to I/O bridge 26 via PCI express bus 14 13. Devices 30 may comprise any type of device such as, but not limited to, a hard disk drive (HDD), a graphics module or subsystem, local input/output interface(s), an Ethernet interface, a docking station or any other type of peripheral and/or non-peripheral device or component. It should also be understood that the architecture and/or resource functions of system 10 may be otherwise configured (e.g., host bridge 22 may be formed as part of and/or otherwise incorporated into processor 20, memory 24 may be formed as part of and/or otherwise incorporated into processor 20, etc.).
In the embodiment illustrated in FIG. 1, memory 24 comprises an operating system 36 and a control module 38. Operating system 36 and/or control module 38 may comprise hardware, software, or a combination of hardware and software. In the embodiment illustrated in FIG. 1, operating system 36 and control module 38 are illustrated as being stored in memory 24 so as to be accessible and executable by processor 20. However, it should be understood that operating system 36 and/or control module 38 may be otherwise stored.
In the embodiment illustrated in FIG. 1, device 30 1 comprises logic 40 which may comprise software, hardware, or a combination of software and hardware. For ease of illustration, logic 40 is illustrated only with respect to device 30 1. However, it should be understood that additional and/or all devices 30, memory 24, switch 32, I/O bridge 26 and/or host bridge 22 may be configured having logic 40 in accordance with the present invention. In operation, control module 38 and/or logic 40 are used to dynamically control, manage and/or otherwise adjust a PCI express bus lane width between two devices (e.g., an upstream device and a downstream device). It should be understood that in a PCI express architecture, each link and/or lane between two devices comprises an “upstream” facing port and a “downstream” facing port. Further, it should be understood that as used herein, an “upstream” device or “downstream” device may comprise any of devices 30, switch 32, I/O bridge 26, host bridge 22, processor 20 or memory 24.
Embodiments of the present invention dynamically control, manage and/or otherwise change a lane width (i.e., the number of lanes) between an upstream device and a downstream device in response to at least one power-related event associated with computer system 12. For example, in some embodiments of the present invention, in response to detecting an increased temperature of computer system 12 (e.g., as a result of operation of a high performance application or module, a blocked cooling vent, a malfunctioning fan, etc.), a lane width of one or more PCI express buses are reduced to reduce thermal energy generation by computer system 12. In other embodiments of the present invention, a lane width between one or more upstream and downstream devices is dynamically reduced in response to detecting a change in a power supply mode to computer system 12. For example, to conserve battery life and/or power, in response to detecting a change from alternating current (AC) power to direct current (DC) power, a lane width between one or more upstream and downstream devices is dynamically reduced to a predetermined or desired level, thereby reducing the power consumption associated with such PCI express buses. In yet another embodiment of the present invention, in response to detecting a decreased processing level of a particular device of system 12 (e.g., a device remaining idle for a predetermined period of time awaiting a processing task), a lane width between the subject downstream device and an upstream device is dynamically reduced to a predetermined or desired level, thereby reducing the power associated with the PCI express bus connected to the subject device. It should be understood that a lane width of one or more PCI express buses may also be dynamically increased in response to detecting a change in at least one power-related event. For example, in response to detecting a change from a DC power supply mode to an AC power supply mode, reduced operating temperature, increased processing level, etc. Moreover, in some embodiments of the present invention, dynamic PCI express bus lane width management is performed in response to user input.
In one embodiment of the present invention, control module 38 is configured to monitor a power supply condition and/or mode applied to computer system 12 (e.g., AC power or battery power). In response to detecting a change in a power supply mode to computer system 12, control module 38 communicates with operating system 36 such that operating system 36 notifies one or more downstream devices of the power supply mode change event. In some embodiments of the present invention, control module 38 and/or operating system 36 registers particular devices for receiving a notification of a power-related event for dynamically adjusting a corresponding PCI express bus lane width associated with the registered device. For example, in some embodiments of the present invention, particular devices that generally consume large amounts of power (e.g., graphics-intensive applications) and/or devices that may be throttled and/or otherwise adjusted to change a power consumption mode are registered, either as a default or predetermined device listing and/or in response to a user designation of such devices, to receive a notification of the power-related event.
In one embodiment of the present invention, control module 38 and/or operating system 36 transmits a signal and/or otherwise notifies registered devices (e.g. device 30 1) of detection of a power-related event. In response to notification of the power-related event, logic 40 dynamically changes a PCI express bus lane width between the notified device and an upstream device (e.g., between device 30 1, and host bridge 22). In some embodiments of the present invention, logic 40 is configured to perform a lane width re-negotiation operation in response to receiving notification of the power-related event. For example, in response to device 30 1 receiving notice of the power-related event, logic 40 initiates a PCI express bus lane width re-negotiation operation with host bridge 22 to increase or decrease a lane width between host bridge 22 and device 30 1. For example, in response to detecting any change in power supply mode to computer system 12, logic 40 is configured to initiate a lane width re-negotiation operation to reduce or increase a PCI bus express lane width between device 30 1 and host bridge 22. Thus, in response to detecting a change from AC power to DC power, a lane width between one or more upstream and downstream devices is dynamically reduced to a predetermined or desired level, and in response to detecting a change from DC power to AC power, a lane width between one or more upstream and downstream devices is dynamically increased to a predetermined or desired level.
In operation, for PCI express bus 14 4 between host bridge 22 (the upstream device) and device 30 1 (the downstream device) for example, logic 40 initiates the lane width re-negotiation operation with host bridge 22 by initially completing any pending transactions or events in queue at device 30 1. In response to completing any pending transactions at device 30 1, logic 40 causes any registers of device 30 1 and a state of device 30 1 to be saved to enable device 30 1 to resume operations upon completion of the lane width re-negotiation operation. In response to device 30 1 saving device 30 1 registers and state, device 30 1 transmits a signal to the upstream device host bridge 22 to initiate a lane width re-negotiation with host bridge 22. In some embodiments of the present invention, the signal transmitted by device 30 1 to host bridge 22 comprises a hot reset signal, thereby causing a lane width re-negotiation for all devices that are on the same PCI express bus branch. In other embodiments of the present invention, device 30 1 transmits a retrain link signal to re-negotiate a lane width only for the PCI express bus lane between device 30 1 and host bridge 22. In operation, logic 40 performs and/or otherwise communicates with host bridge 22 during the lane width re-negotiation operation using a reduced and/or increased lane width depending on the power-related event (e.g., a reduced lane width to save power).
In some embodiments of the present invention, a reduced lane width comprises a predetermined lane width based on the type of power-related event. For example, in some embodiments of the present invention, the lane width may be reduced to a single lane for maximum battery power saving. In other embodiments of the present invention, the lane width may be reduced to a lane width between a maximum and minimum lane width and/or a lane width requested and/or otherwise desired by a user. For example, in some embodiments of the present invention, a user may input and/or otherwise indicate to computer system 12 either a desired lane width and/or a desired level of power saving such that a desired power saving mode corresponds to a predetermined lane width (e.g., a desired amount of battery time correlated to a predetermined lane width). Thus, for example, if a user desires to have maximum power saving, the lane width may be reduced to a single lane. However, for a power saving mode of fifty percent, for example, a lane width may be reduced from sixteen lanes to eight lanes.
In operation, logic 40 performs the lane width re-negotiation operation with host bridge 22 using a predetermined quantity of PCI express bus lanes. For example, logic 40 is configured to perform the lane width re-negotiation operation using a single PCI express bus lane for achieving a maximum power saving, thereby conserving and/or otherwise extending battery life. Thus, for example, during a lane width re-negotiation operation between device 30 1 and host bridge 22 for maximum power saving, device 30 1 re-negotiates the lane width of PCI express bus 14 4 using a single lane. It should be understood that dynamic lane width re-negotiation may be performed on any of the PCI express busses 14 and may be initiated by either an upstream device or a downstream device.
FIG. 2 is a circuit diagram representing a single PCI express lane bus 14 of system 12 employing an embodiment of dynamic lane management in accordance with the present invention. In the embodiment illustrated in FIG. 2, a hardware-based implementation for dynamically managing a lane width re-negotiation operation between an upstream device and a downstream is illustrated. For example, in the embodiment illustrated in FIG. 2, a circuit 50 comprises a driver 52 associated with a downstream device (e.g., device 30 1) and a driver 54 associated with an upstream device (e.g., host bridge 22). In the embodiment illustrated in FIG. 2, circuit 50 comprises a switch 58 coupled to each data flow path of lane 14 (e.g., the upstream and downstream data flow lanes). In operation, a control signal issued by logic 40, control module 38 and/or operating system 36 is used to actuate switch 58 to connect or disconnect lane 14 such that during a lane width re-negotiation operation, the PCI express lane bus 14 of FIG. 2 is either available or unavailable, respectively. Thus, if switch 58 disconnects the PCI express lane bus 14 of FIG. 2, a reduced lane width is used during the lane width negotiation operation, thereby resulting in a lane width reduction between an upstream device and a downstream device. However, it should be understood that other software-based and/or hardware-based methods may be used to increase or decrease a lane width used during a lane width re-negotiation operation (e.g., disabling a data receipt or input buffer of a device, thereby causing the device not to detect the presence of a particular lane).
FIG. 3 is a flow diagram illustrating an embodiment of a dynamic lane management method in accordance with the present invention. The method begins at block 300, where control module 38 determines a source of power supply for computer system 12. At decisional block 302, a determination is made whether computer system 12 is powered by an AC power supply. If computer system 12 is not currently powered by an AC power supply (e.g., powered by a battery source), the method proceeds to block 308. If computer system 12 is currently powered by an AC power supply, the method proceeds to block 304, where control module 38 monitors computer system 12 for a power-related event (e.g., a DC-power event). For example, a DC-power event may comprise a change from an AC power supply to a DC power supply resulting from disconnection of computer system 12 from an external power supply outlet, an AC adaptor, or other source of AC power. At decisional block 306, a determination is made whether a DC-power event has been detected. If a DC-power event has not been detected, the method proceeds to block 304. If a DC-power event has been detected, the method proceeds to block 308.
At block 308, control module 38 transmits a power-related event change notification to at least one downstream device. For example, control module 38 may transmit a power-related event notification to any device registered to receive such notification (e.g., device 30 1) and/or all available devices At block 310, the downstream device completes pending transactions. At block 312, the downstream device saves device registers and a state of the downstream device. At block 314, the downstream device transmits a signal to an upstream device to initiate a lane width re-negotiation operation (e.g., a hot reset, link re-train or other type of lane width re-training signal). At block 316, the lane width re-negotiation operation is performed to reduce a lane width between the upstream and downstream device to a predetermined and/or reduced lane width. In the embodiment illustrated in FIG. 3, the lane width is dynamically reduced in response to detecting a change from AC power to DC power. However, it should be understood that in response to detecting a change from DC power to AC power, control module 38 transmits a power-related event change notification to at least one downstream device and, in response to the power-related event change notification, the downstream device completes pending transactions, saves device registers and a state of the downstream device, and transmits a signal to an upstream device to initiate a lane width re-negotiation operation (e.g., a hot reset, link re-train or other type of lane width re-training signal) to increase a lane width between the upstream and downstream device.
FIG. 4 is a flow diagram illustrating another embodiment of a dynamic lane management method in accordance with the present invention. The method begins at block 400, where control module 38 monitors a temperature condition of computer system 12 (e.g., a temperature condition of computer system 12 associated with thermal energy dissipation by computer system 12). At decisional block 402, a determination is made whether a temperature of computer system 12 has exceeded a predetermined threshold. If the temperature of computer system 12 has not exceeded a predetermined threshold, the method proceeds to block 404, where a control module 38 continues monitoring the temperature of computer system 12. If a temperature of computer system 12 has exceeded a predetermined threshold, the method proceeds to block 406, where a control module 38 and/or operating system 36 transmits an event notification signal to at least one downstream device.
At block 408, the notified downstream device completes pending transactions. At block 410, the notified downstream device saves registers and a state of the downstream device. At block 412, the downstream device transmits a signal to an upstream device to initiate a lane width re-negotiation operation to modify a quantity of PCI express bus lanes 14 between the downstream device and the upstream device. As discussed above, the signal transmitted by the downstream device may comprise a hot reset signal, a link re-train signal or other type of signal used to initiate a lane width re-training between the downstream and upstream device. At block 414, the lane width re-negotiation operation is performed using a predetermined and/or reduced lane width between the downstream device and the upstream device. In the embodiment illustrated in FIG. 4, the lane width is preferably reduced to a predetermined quantity to reduce the thermal condition of the computer system 12. However, it should be understood that in response to detecting a decrease in the temperature condition of computer system 12, control module 38 and/or operating system 36 transmits an event notification signal to at least one downstream device and, in response to the signal, the notified downstream device completes pending transactions, saves registers and a state of the downstream device, and transmits a signal to an upstream device to initiate a lane width re-negotiation operation to increase a quantity of PCI express bus lanes 14 between the downstream device and the upstream device.
FIG. 5 is a flow diagram illustrating yet another embodiment of a dynamic lane management method in accordance with the present invention. The method begins at block 500, where control module 38, operating system 36 and/or logic 40 monitors a processing level associated with a downstream device. At decisional block 502, a determination is made whether the processing level has fallen below a predetermined threshold. If the processing level of the downstream device has not fallen below a predetermined threshold, the method proceeds to block 504, where the processing level of the downstream device continues to be monitored. If the processing level associated with the downstream device has fallen below a predetermined threshold, the method proceeds to block 506, where a lane width re-negotiation operation associated with the downstream device is initiated (e.g., completing pending transactions, saving registers and a state of the device, and communicating with the upstream device to re-negotiate to a reduced lane width). In the embodiment illustrated in FIG. 5, the lane width is reduced in response to detecting a decreased processing level. However, it should be understood that in response to detecting an increased processing level or demand, a re-negotiation operation is performed to dynamically increase the lane width.
Thus, embodiments of the present invention provide dynamic PCI express bus lane width re-negotiation in response to a variety of different power-related events associated with computer system 12. For example, in response to a rising and/or elevated temperature condition (e.g., due to an increased processing level and/or otherwise), a change in power supply mode, a change in processing level and/or processing requirements, embodiments of the present invention automatically re-negotiate and/or re-train a PCI express bus lane width to either increase or decrease a lane width based on the event.
It should be understood that in the described methods, certain functions may be omitted, accomplished in a sequence different from that depicted in FIGS. 3-5, or performed simultaneously or in combination. Also, it should be understood that the methods depicted in FIGS. 3-5 may be altered to encompass any of the other features or aspects of the invention as described elsewhere in the specification. Further, embodiments of the present invention may be implemented in software and can be adapted to run on different platforms and operating systems. In particular, functions implemented by control module 38, operating system 36 and/or logic 40, for example, may be provided as an ordered listing of executable instructions that can be embodied in any computer-readable medium for use by or in connection with an instruction execution system, apparatus, or device, such as a computer-based system, processor-containing system, or other system that can fetch the instructions from the instruction execution system, apparatus, or device, and execute the instructions. In the context of this document, a “computer-readable medium” can be any means that can contain, store, communicate, propagate or transport the program for use by or in connection with the instruction execution system, apparatus, or device. The computer-readable medium can be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semi-conductor system, apparatus, device, or propagation medium.

Claims (32)

1. A dynamic lane management system, comprising:
at least one downstream device of a computer system configured to dynamically initiate a lane width re-negotiation operation with at least one upstream device of the computer system in response to a detection of a user input specifying a desired amount of battery time associated with the computer system.
2. The system of claim 1, wherein the at least one downstream device is configured to initiate the lane width re-negotiate operation in response to a change in the power supply mode of the computer system.
3. The system of claim 1, wherein the at least one downstream device is configured to initiate the lane width re-negotiate operation in response to detecting a change from an alternating current (AC) power mode to a direct current (DC) power mode.
4. The system of claim 1, wherein the at least one downstream device is configured to initiate the lane width re-negotiate operation in response to a temperature of the computer system exceeding a predetermined threshold.
5. The system of claim 1, wherein the at least one downstream device is configured to complete a pending transaction before initiating the lane width re-negotiation operation.
6. The system of claim 1, wherein the at least one downstream device is configured to save a state of the at least one downstream device before initiating the lane width re-negotiation operation.
7. The system of claim 1, wherein the at least one downstream device is configured to transmit a hot reset signal to the upstream device to initiate the lane width re-negotiation operation.
8. The system of claim 1, wherein the at least one downstream device is configured to transmit a retrain link signal to the upstream device to initiate the lane width re-negotiation operation.
9. The system of claim 1, wherein the at least one downstream device is configured to re-negotiate to a reduced lane width.
10. The system of claim 1, further comprising a control module configured to monitor a temperature of the computer system.
11. The system of claim 1, wherein the lane width re-negotiation operation configures a predetermined lane width correlating to the desired amount of battery time.
12. A dynamic lane management system, comprising:
a control module of a computer system configured to detect a user input specifying a desired amount of battery time associated with the computer system and dynamically initiate a lane width re-negotiation operation between at least one downstream device of the computer system and at least one upstream device of the computer system in response to detecting the user input.
13. The system of claim 12, wherein the control module is configured to monitor a temperature of the computer system.
14. The system of claim 12, wherein the control module is configured to initiate the lane width re-negotiation in response to a temperature of the computer system exceeding a predetermined threshold.
15. The system of claim 12, wherein the control module is configured to initiate the lane width re-negotiation in response to a reduced processing level of the at least one downstream device.
16. The system of claim 12, wherein the control module is configured to actuate at least one switch to change a lane width associated with the at least one downstream device.
17. The system of claim 12, wherein the control module is configured to re-negotiate to a reduced lane width corresponding to the at least one downstream device.
18. A dynamic lane management method, comprising:
detecting a user input specifying a desired amount of battery time associated with a computer system; and
dynamically initiating a lane width re-negotiation operation between at least one upstream device of the computer system and at least one downstream device of the computer system in response to detecting the user input.
19. The method of claim 18, further comprising transmitting a hot reset signal to initiate the lane width re-negotiation operation.
20. The method of claim 18, further comprising transmitting a retrain link signal to initiate the lane width re-negotiation operation.
21. The method of claim 18, further comprising actuating at least one switch to change a lane width between the at least one downstream device and the at least one upstream device.
22. The method of claim 18, further comprising initiating the lane width re-negotiation operation in response to detecting a change in a processing level of the at least one downstream device.
23. The method of claim 18, further comprising initiating the lane width re-negotiation operation in response to detecting a temperature of the computer system exceeding a predetermined threshold.
24. The method of claim 18, further comprising initiating the lane width re-negotiation operation in response to detecting a change in a power supply mode of the computer system.
25. The method of claim 18, further comprising reducing a lane width between the at least one downstream device and the at least one upstream device in response to detecting a temperature condition.
26. The method of claim 18, further comprising receiving a user request to initiate the lane width re-negotiation operation between the at least one upstream device and the at least one downstream device.
27. The method of claim 18, further comprising receiving a user request to reduce a lane width between the at least one upstream device and the at least one downstream device.
28. A tangible computer-readable medium having stored thereon an instruction set to be executed, the instruction set, when executed by a processor, causes the processor to:
detect a user input specifying a desired amount of battery time associated with a computer system; and
dynamically initiate a lane width re-negotiation operation between at least one upstream device of the computer system and at least one downstream device of the computer system in response to detecting the user input.
29. The tangible computer-readable medium of claim 28, wherein the instruction set, when executed by the processor, causes the processor to initiate the lane width re-negotiate operation in response to a change in the power supply mode of the computer system.
30. The tangible computer-readable medium of claim 28, wherein the instruction set, when executed by the processor, causes the processor to initiate the lane width re-negotiate operation in response to a temperature of the computer system exceeding a predetermined threshold.
31. The tangible computer-readable medium of claim 28, wherein the instruction set, when executed by the processor, causes the at least one downstream device to complete a pending transaction before initiating the lane width re- negotiation operation.
32. The tangible computer-readable medium of claim 28, wherein the instruction set, when executed by the processor, causes the processor to initiate the lane width re-negotiate operation in response to detecting a reduced processing level of the at least one downstream device.
US11/259,284 2005-10-26 2005-10-26 Dynamic lane management system and method Expired - Fee Related US7447824B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US11/259,284 US7447824B2 (en) 2005-10-26 2005-10-26 Dynamic lane management system and method
EP06020290.0A EP1780624B1 (en) 2005-10-26 2006-09-27 Dynamic lane management system and method
JP2006281047A JP4404887B2 (en) 2005-10-26 2006-10-16 Dynamic lane management system and method
CNA2006101365304A CN1955887A (en) 2005-10-26 2006-10-26 Dynamic lane management system and method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/259,284 US7447824B2 (en) 2005-10-26 2005-10-26 Dynamic lane management system and method

Publications (2)

Publication Number Publication Date
US20070094437A1 US20070094437A1 (en) 2007-04-26
US7447824B2 true US7447824B2 (en) 2008-11-04

Family

ID=37682706

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/259,284 Expired - Fee Related US7447824B2 (en) 2005-10-26 2005-10-26 Dynamic lane management system and method

Country Status (4)

Country Link
US (1) US7447824B2 (en)
EP (1) EP1780624B1 (en)
JP (1) JP4404887B2 (en)
CN (1) CN1955887A (en)

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070239925A1 (en) * 2006-04-11 2007-10-11 Nec Corporation PCI express link, multi host computer system, and method of reconfiguring PCI express link
US20080005303A1 (en) * 2006-06-30 2008-01-03 Hemant Rotithor System and method for link based computing system having automatically adjustable bandwidth and corresponding power consumption
US20090157920A1 (en) * 2007-12-13 2009-06-18 International Business Machines Corporation Dynamically Allocating Communication Lanes For A Plurality Of Input/Output ('I/O') Adapter Sockets In A Point-To-Point, Serial I/O Expansion Subsystem Of A Computing System
US20090164684A1 (en) * 2007-12-20 2009-06-25 International Business Machines Corporation Throttling A Point-To-Point, Serial Input/Output Expansion Subsystem Within A Computing System
US20090307437A1 (en) * 2003-03-13 2009-12-10 Marvell World Trade Ltd. Multiport Memory Architecture, Devices and Systems Including the Same, and Methods of Using the Same
US20100169684A1 (en) * 2008-12-31 2010-07-01 Jeyaseelan Jaya L Downstream device service latency reporting for power management
US20110055478A1 (en) * 2002-08-29 2011-03-03 Ryan Kevin J System and method for optimizing interconnections of memory devices in a multichip module
US7949817B1 (en) * 2007-07-31 2011-05-24 Marvell International Ltd. Adaptive bus profiler
US20120066531A1 (en) * 2010-09-14 2012-03-15 Sarance Technologies, Inc. Method and apparatus for adaptive power control in a multi-lane communication channel
US8234425B1 (en) 2007-06-27 2012-07-31 Marvell International Ltd. Arbiter module
US8346998B2 (en) 2004-08-31 2013-01-01 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US8438329B2 (en) 2004-04-08 2013-05-07 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US20130159589A1 (en) * 2010-08-19 2013-06-20 Fujitsu Limited Bus control device and bus control method
US20130346653A1 (en) * 2012-06-20 2013-12-26 International Business Machines Corporation Versatile lane configuration using a pcie pie-8 interface
US8683085B1 (en) 2008-05-06 2014-03-25 Marvell International Ltd. USB interface configurable for host or device mode
US8688922B1 (en) 2010-03-11 2014-04-01 Marvell International Ltd Hardware-supported memory management
US8775764B2 (en) * 2004-03-08 2014-07-08 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US8843723B1 (en) 2010-07-07 2014-09-23 Marvell International Ltd. Multi-dimension memory timing tuner
US8874833B1 (en) 2009-03-23 2014-10-28 Marvell International Ltd. Sequential writes to flash memory
US9070451B1 (en) 2008-04-11 2015-06-30 Marvell International Ltd. Modifying data stored in a multiple-write flash memory cell
US9070454B1 (en) 2009-04-21 2015-06-30 Marvell International Ltd. Flash memory
US10007441B2 (en) 2014-04-30 2018-06-26 Hewlett Packard Enterprise Development Lp Storage system bandwidth adjustment
US10254814B2 (en) 2014-09-04 2019-04-09 Hewlett Packard Enterprise Development Lp Storage system bandwidth determination
US10296484B2 (en) * 2015-12-01 2019-05-21 International Business Machines Corporation Dynamic re-allocation of computer bus lanes
US10331605B2 (en) 2016-08-30 2019-06-25 International Business Machines Corporation Dynamic re-allocation of signal lanes
US20200226084A1 (en) * 2019-11-27 2020-07-16 Intel Corporation Partial link width states for bidirectional multilane links
US11157068B2 (en) * 2019-01-25 2021-10-26 Intel Corporation Power state management for lanes of a communication port

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2356705A1 (en) * 1998-11-20 2000-06-02 The General Hospital Corporation Permanent, removable tissue markings
TWI246372B (en) * 2004-04-09 2005-12-21 Asrock Inc A computer system with PCI express interface
US20070233930A1 (en) * 2006-03-14 2007-10-04 International Business Machines Corporation System and method of resizing PCI Express bus widths on-demand
US8103993B2 (en) * 2006-05-24 2012-01-24 International Business Machines Corporation Structure for dynamically allocating lanes to a plurality of PCI express connectors
US7480757B2 (en) * 2006-05-24 2009-01-20 International Business Machines Corporation Method for dynamically allocating lanes to a plurality of PCI Express connectors
US7536490B2 (en) * 2006-07-20 2009-05-19 Via Technologies, Inc. Method for link bandwidth management
US8582448B2 (en) * 2007-10-22 2013-11-12 Dell Products L.P. Method and apparatus for power throttling of highspeed multi-lane serial links
JP5287297B2 (en) * 2008-03-18 2013-09-11 株式会社リコー Data processing circuit, power saving method, power saving program, recording medium and device
JP5272704B2 (en) * 2008-12-17 2013-08-28 富士ゼロックス株式会社 Information transmission system, information transmission device, and information reception device
JP2011123798A (en) * 2009-12-14 2011-06-23 Nec Computertechno Ltd Data transfer device and method
JP5402726B2 (en) * 2010-03-03 2014-01-29 株式会社リコー Data communication apparatus, information processing apparatus, data communication method, data communication program, and recording medium
KR101260561B1 (en) * 2010-03-12 2013-05-06 한국전자통신연구원 Apparatus and Method for Dynamic Lane Operation in Multi-lane based Ethernet
TWI493332B (en) * 2011-11-29 2015-07-21 Intel Corp Method and apparatus with power management and a platform and computer readable storage medium thereof
US9292465B2 (en) * 2011-12-21 2016-03-22 Intel Corporation Dynamic link width adjustment
US9152595B2 (en) * 2012-10-18 2015-10-06 Qualcomm Incorporated Processor-based system hybrid ring bus interconnects, and related devices, processor-based systems, and methods
US9395795B2 (en) * 2013-09-20 2016-07-19 Apple Inc. System power management using communication bus protocols
US10496152B2 (en) 2013-09-27 2019-12-03 Intel Corporation Power control techniques for integrated PCIe controllers
US20150324311A1 (en) * 2014-05-08 2015-11-12 International Business Machines Corporation Allocating lanes of a serial computer expansion bus among installed devices
JP6369224B2 (en) * 2014-08-28 2018-08-08 富士通株式会社 Information processing system, information processing apparatus, and information processing system control method
US11586565B2 (en) * 2016-10-03 2023-02-21 Samsung Electronics Co., Ltd. Non-volatile storage system and data storage access protocol for non-volatile storage devices
US11487683B2 (en) 2020-04-15 2022-11-01 AyDeeKay LLC Seamlessly integrated microcontroller chip

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6138194A (en) * 1998-06-08 2000-10-24 Micron Electronics, Inc. Apparatus for sensing movement of a bus card and automatically removing power from the bus card
US6590432B1 (en) 2002-09-26 2003-07-08 Pericom Semiconductor Corp. Low-voltage differential driver with opened eye pattern
US20040088469A1 (en) 2002-10-30 2004-05-06 Levy Paul S. Links having flexible lane allocation
US20040103333A1 (en) 2002-11-22 2004-05-27 Martwick Andrew W. Apparatus and method for low latency power management on a serial data link
US20050206345A1 (en) * 2004-03-18 2005-09-22 Arif Maskatia Power management method for an electronic apparatus
US20050283561A1 (en) * 2004-06-21 2005-12-22 Lee John P Method, system, and apparatus to decrease CPU temperature through I/O bus throttling
US20060023633A1 (en) * 2004-07-16 2006-02-02 Ati Technologies Inc. Method and apparatus for managing power consumption relating to a differential serial communication link
US7136953B1 (en) * 2003-05-07 2006-11-14 Nvidia Corporation Apparatus, system, and method for bus link width optimization
US20070067548A1 (en) * 2005-08-19 2007-03-22 Juenger Randall E System and method for dynamic adjustment of an information handling system graphics bus
US20070094436A1 (en) * 2005-10-20 2007-04-26 Keown William F Jr System and method for thermal management in PCI express system

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030088799A1 (en) * 2001-11-05 2003-05-08 Bodas Devadatta V. Method and apparatus for regulation of electrical component temperature and power consumption rate through bus width reconfiguration
US7099969B2 (en) * 2003-11-06 2006-08-29 Dell Products L.P. Dynamic reconfiguration of PCI Express links

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6138194A (en) * 1998-06-08 2000-10-24 Micron Electronics, Inc. Apparatus for sensing movement of a bus card and automatically removing power from the bus card
US6590432B1 (en) 2002-09-26 2003-07-08 Pericom Semiconductor Corp. Low-voltage differential driver with opened eye pattern
US20040088469A1 (en) 2002-10-30 2004-05-06 Levy Paul S. Links having flexible lane allocation
US20040103333A1 (en) 2002-11-22 2004-05-27 Martwick Andrew W. Apparatus and method for low latency power management on a serial data link
US7136953B1 (en) * 2003-05-07 2006-11-14 Nvidia Corporation Apparatus, system, and method for bus link width optimization
US20050206345A1 (en) * 2004-03-18 2005-09-22 Arif Maskatia Power management method for an electronic apparatus
US20050283561A1 (en) * 2004-06-21 2005-12-22 Lee John P Method, system, and apparatus to decrease CPU temperature through I/O bus throttling
US20060023633A1 (en) * 2004-07-16 2006-02-02 Ati Technologies Inc. Method and apparatus for managing power consumption relating to a differential serial communication link
US20070067548A1 (en) * 2005-08-19 2007-03-22 Juenger Randall E System and method for dynamic adjustment of an information handling system graphics bus
US20070094436A1 (en) * 2005-10-20 2007-04-26 Keown William F Jr System and method for thermal management in PCI express system

Cited By (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110055478A1 (en) * 2002-08-29 2011-03-03 Ryan Kevin J System and method for optimizing interconnections of memory devices in a multichip module
US8190819B2 (en) 2002-08-29 2012-05-29 Micron Technology, Inc. System and method for optimizing interconnections of memory devices in a multichip module
US8688877B1 (en) 2003-03-13 2014-04-01 Marvell World Trade Ltd. Multiport memory architecture
US9105319B2 (en) 2003-03-13 2015-08-11 Marvell World Trade Ltd. Multiport memory architecture
US20090307437A1 (en) * 2003-03-13 2009-12-10 Marvell World Trade Ltd. Multiport Memory Architecture, Devices and Systems Including the Same, and Methods of Using the Same
US8335878B2 (en) 2003-03-13 2012-12-18 Marvell World Trade Ltd. Multiport memory architecture, devices and systems including the same, and methods of using the same
US8775764B2 (en) * 2004-03-08 2014-07-08 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US9274991B2 (en) 2004-03-08 2016-03-01 Micron Technology, Inc. Memory hub architecture having programmable lane widths
US8438329B2 (en) 2004-04-08 2013-05-07 Micron Technology, Inc. System and method for optimizing interconnections of components in a multichip memory module
US8346998B2 (en) 2004-08-31 2013-01-01 Micron Technology, Inc. System and method for transmitting data packets in a computer system having a memory hub architecture
US20070239925A1 (en) * 2006-04-11 2007-10-11 Nec Corporation PCI express link, multi host computer system, and method of reconfiguring PCI express link
US10911345B2 (en) 2006-06-30 2021-02-02 Intel Corporation System and method for link based computing system having automatically adjustable bandwidth and corresponding power consumption
US10069711B2 (en) * 2006-06-30 2018-09-04 Intel Corporation System and method for link based computing system having automatically adjustable bandwidth and corresponding power consumption
US20080005303A1 (en) * 2006-06-30 2008-01-03 Hemant Rotithor System and method for link based computing system having automatically adjustable bandwidth and corresponding power consumption
US8234425B1 (en) 2007-06-27 2012-07-31 Marvell International Ltd. Arbiter module
US7949817B1 (en) * 2007-07-31 2011-05-24 Marvell International Ltd. Adaptive bus profiler
US8205028B1 (en) 2007-07-31 2012-06-19 Marvell International Ltd. Adaptive bus profiler
US7711886B2 (en) * 2007-12-13 2010-05-04 International Business Machines Corporation Dynamically allocating communication lanes for a plurality of input/output (‘I/O’) adapter sockets in a point-to-point, serial I/O expansion subsystem of a computing system
US20090157920A1 (en) * 2007-12-13 2009-06-18 International Business Machines Corporation Dynamically Allocating Communication Lanes For A Plurality Of Input/Output ('I/O') Adapter Sockets In A Point-To-Point, Serial I/O Expansion Subsystem Of A Computing System
US20090164684A1 (en) * 2007-12-20 2009-06-25 International Business Machines Corporation Throttling A Point-To-Point, Serial Input/Output Expansion Subsystem Within A Computing System
US7809869B2 (en) * 2007-12-20 2010-10-05 International Business Machines Corporation Throttling a point-to-point, serial input/output expansion subsystem within a computing system
US9070451B1 (en) 2008-04-11 2015-06-30 Marvell International Ltd. Modifying data stored in a multiple-write flash memory cell
US8683085B1 (en) 2008-05-06 2014-03-25 Marvell International Ltd. USB interface configurable for host or device mode
US8924598B1 (en) 2008-05-06 2014-12-30 Marvell International Ltd. USB interface configurable for host or device mode
US20100169684A1 (en) * 2008-12-31 2010-07-01 Jeyaseelan Jaya L Downstream device service latency reporting for power management
US10182398B2 (en) 2008-12-31 2019-01-15 Intel Corporation Downstream device service latency reporting for power management
US9838967B2 (en) 2008-12-31 2017-12-05 Intel Corporation Downstream device service latency reporting for power management
US8601296B2 (en) * 2008-12-31 2013-12-03 Intel Corporation Downstream device service latency reporting for power management
US8874833B1 (en) 2009-03-23 2014-10-28 Marvell International Ltd. Sequential writes to flash memory
US9070454B1 (en) 2009-04-21 2015-06-30 Marvell International Ltd. Flash memory
US8688922B1 (en) 2010-03-11 2014-04-01 Marvell International Ltd Hardware-supported memory management
US8843723B1 (en) 2010-07-07 2014-09-23 Marvell International Ltd. Multi-dimension memory timing tuner
US20130159589A1 (en) * 2010-08-19 2013-06-20 Fujitsu Limited Bus control device and bus control method
US8762760B2 (en) * 2010-09-14 2014-06-24 Xilinx, Inc. Method and apparatus for adaptive power control in a multi-lane communication channel
US20120066531A1 (en) * 2010-09-14 2012-03-15 Sarance Technologies, Inc. Method and apparatus for adaptive power control in a multi-lane communication channel
US9292460B2 (en) * 2012-06-20 2016-03-22 International Business Machines Corporation Versatile lane configuration using a PCIe PIE-8 interface
US20130346653A1 (en) * 2012-06-20 2013-12-26 International Business Machines Corporation Versatile lane configuration using a pcie pie-8 interface
US10007441B2 (en) 2014-04-30 2018-06-26 Hewlett Packard Enterprise Development Lp Storage system bandwidth adjustment
US10254814B2 (en) 2014-09-04 2019-04-09 Hewlett Packard Enterprise Development Lp Storage system bandwidth determination
US10296484B2 (en) * 2015-12-01 2019-05-21 International Business Machines Corporation Dynamic re-allocation of computer bus lanes
US10331605B2 (en) 2016-08-30 2019-06-25 International Business Machines Corporation Dynamic re-allocation of signal lanes
US11157068B2 (en) * 2019-01-25 2021-10-26 Intel Corporation Power state management for lanes of a communication port
US20200226084A1 (en) * 2019-11-27 2020-07-16 Intel Corporation Partial link width states for bidirectional multilane links
US11836101B2 (en) * 2019-11-27 2023-12-05 Intel Corporation Partial link width states for bidirectional multilane links

Also Published As

Publication number Publication date
US20070094437A1 (en) 2007-04-26
EP1780624A2 (en) 2007-05-02
CN1955887A (en) 2007-05-02
JP4404887B2 (en) 2010-01-27
JP2007122714A (en) 2007-05-17
EP1780624B1 (en) 2018-01-24
EP1780624A3 (en) 2014-05-07

Similar Documents

Publication Publication Date Title
US7447824B2 (en) Dynamic lane management system and method
US9507402B2 (en) Monitoring transaction requests using a policy engine within a storage drive driver to change power capability and latency settings for a storage drive
USRE47658E1 (en) Heat dissipation system for computers
US8578189B2 (en) Methods and apparatuses for dynamic power control
US7529948B2 (en) Methods and apparatuses for dynamic power estimation
US8417979B2 (en) Method and system for progressive power reduction of inactive device while maintaining ready status with host
JP5707321B2 (en) Sleep processor
US8880922B2 (en) Computer and power management system for computer
EP1459158B1 (en) Method and apparatus for regulation of electrical component temperature and power consumption rate through bus width reconfiguration
US8549329B2 (en) System power management using memory throttle signal
US20060265612A1 (en) PCI express system and method of transiting link state thereof
US20050046400A1 (en) Controlling operation of a voltage supply according to the activity of a multi-core integrated circuit component or of multiple IC components
US20120072746A1 (en) Facilitating power management in a multi-core processor
US8285909B2 (en) Hardware assisted endpoint idleness detection for USB host controllers
US20080263254A1 (en) Method and System For Adjusting Bus Frequency And Link Width On A Bus
JP2021163480A (en) Power management system and power management method
WO2012143945A2 (en) Power management in multi host computing systems
US7206883B2 (en) Interruption control system and method
US10571992B2 (en) Electronic device having a controller to enter a low power mode
TW201407359A (en) Daisy-chained apparatus and system thereof

Legal Events

Date Code Title Description
AS Assignment

Owner name: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P., TEXAS

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JABORI, MONJI;LAKDAWALA, RAHUL V.;CHEN, QIJUN;REEL/FRAME:017152/0791

Effective date: 20051026

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

FPAY Fee payment

Year of fee payment: 8

FEPP Fee payment procedure

Free format text: MAINTENANCE FEE REMINDER MAILED (ORIGINAL EVENT CODE: REM.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

LAPS Lapse for failure to pay maintenance fees

Free format text: PATENT EXPIRED FOR FAILURE TO PAY MAINTENANCE FEES (ORIGINAL EVENT CODE: EXP.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCH Information on status: patent discontinuation

Free format text: PATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362

FP Expired due to failure to pay maintenance fee

Effective date: 20201104