WO2001035200A1 - Dynamically adjusting a processor's operational parameters according to its environment - Google Patents
Dynamically adjusting a processor's operational parameters according to its environment Download PDFInfo
- Publication number
- WO2001035200A1 WO2001035200A1 PCT/US2000/017460 US0017460W WO0135200A1 WO 2001035200 A1 WO2001035200 A1 WO 2001035200A1 US 0017460 W US0017460 W US 0017460W WO 0135200 A1 WO0135200 A1 WO 0135200A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- processor
- voltage
- clock
- frequency
- circuit
- Prior art date
Links
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
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/324—Power saving characterised by the action undertaken by lowering clock frequency
-
- 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/04—Generating or distributing clock signals or signals derived directly therefrom
- G06F1/08—Clock generators with changeable or programmable clock frequency
-
- 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/16—Constructional details or arrangements
- G06F1/20—Cooling means
- G06F1/206—Cooling means comprising thermal management
-
- 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
-
- 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/3234—Power saving characterised by the action undertaken
- G06F1/3287—Power saving characterised by the action undertaken by switching off individual functional units in the computer system
-
- 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/3234—Power saving characterised by the action undertaken
- G06F1/3296—Power saving characterised by the action undertaken by lowering the supply or operating voltage
-
- 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
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Definitions
- This invention relates to portable computers and performance and thermal issues associated therewith
- a conventional notebook computer has power and thermal constraints that cause it to operate at performance levels below an equivalent desktop computer
- a conventional notebook computer When using a battery as a power source, a conventional notebook computer often employs techniques to conserve battery life, which can reduce performance levels
- the conventional notebook computer has a small, densely packed system construction that limits its ability to safely dissipate the heat generated by computer operation Therefore conventional notebook computers generally use less power than their desktop counterparts, which adversely affects performance
- Throttling prevents the processor from over heating by temporarily stoppmg processor operations by stopping processor clocks
- Throttlmg is an industry standard method of reducing the effective frequency of processor operation and correspondingly reducing processor power consumption by using a clock control signal (e g the processor's STPCLK# input) to modulate the duty cycle of processor operation
- a clock control signal e g the processor's STPCLK# input
- Throttling continuously stops and starts processor operation accordmg to a predefined duty cycle with a period of a few milliseconds The reduction in the effective speed of the processor reduces power dissipation and thus the processor's temperature
- a processor will do a brief burst of work after each letter is typed, then its operation is stopped until the next keystroke
- peripheral devices may be turned off to obtam move power savmgs
- the notebook's hard drive may be suspended after a certain period of inactivity until it is needed again If the system detects another period of inactivity, e g , a few minutes, the display may be turned off
- Such techniques are useful m conservmg battery power and m the case of the processor, reducing the amount of heat needed to be dissipated It is also common practice to use a coolmg fan to increase the amount of heat removed from the system, lower processor temperature and prevent damage to the system
- a typical notebook computer with power management active and operating from its battery, consumes about 15 to 20 Watts
- the processor portion of the power budget is typically 8 - 12 watts
- the remammg power budget goes to the display, hard drive, memory subsystem, graphics controller and other peripherals With a 40 to 50 watt-hour battery pack, the notebook will run for 2 5 to 3 5 hours In contrast, without those power and thermal constraints of the notebook processor, typical desktop processors consume 20-30 Watts
- ACPI specifies sleep and suspend states Sleep states temporarily halt processor operation and operation can be restored m a few milliseconds A notebook enters the sleep state when internal activity monitors mdicate no processing is taking place When a keystroke is entered, a mouse moves or data is received via a modem, the processor wakes up
- Suspend states shut down more of the subsystems (e g display or hard drive) and can take a few seconds for operation to be restored Suspend states may copy the present context of the system (sufficient for the computer to resume processing the apphcat ⁇ on(s) presently opened) into memory (suspend to RAM) or to the hard drive (suspend to disk) and power down peripherals
- ACPI defines standard power states of a system as well as the power states of individual components In addition, it defines standard ways of putting system and devices mto different power modes, and has features to allow reporting events, monitormg and controlling temperature m a system, and monitormg battery ACPI power management includes the many system power states for notebook PC operation
- the Gx states mdicate the overall operational status of the system Cx processor states, Dx device states, and Sx sleep states define the status of the subsystems and the sleep states, such as suspend-to-RAM and suspend-to-disk
- the four global Gx states are shown in Fig 1A
- the CPU can have the four computing states shown in Fig IB Note that in a given platform, it may not be necessary to support all the CPU states For example, CI and C2 for some systems may offer similar power dissipation and latencies for restormg operation Therefore, the designer may choose to implement only one of these states Also, different systems may have different implementations of a particular CPU state Unlike the sleep states, in which various parts of the computer system may be powered down, all systems remam powered up m the computing states
- the ACPI environment provides a number of mechanisms to deal with thermal and power issues
- the desire for notebook performance to approach that of desktop computers requires the processor to run faster and dissipate more heat
- the notebook still must run m the mobile environment limited by power and thermal constraints Therefore, it would be desirable if the notebook could adapt readily to its environment in order to provide the appropriate level of performance given the operatmg environment
- ACPI and current power management techniques provide some level of monitormg and control based on a notebook computer's operatmg environment, there is a need to provide improved power management techniques that more effectively responds to the environment in which the notebook computer is bemg used
- a notebook or similar computing device monitors system environment such as availability of external power sources (AC adapter, auto adapter or other external power source), attachment and/or activation of auxiliary cooling devices, and a profile, which may be user definable for choosing performance criteria durmg battery operation
- system level software assigns appropriate operating parameters or "run states" for the processor of the computmg device
- a method for controlling the power consumption of an integrated circuit in an electronic system The method includes operating the integrated circuit at a first voltage and at a first frequency When the system detects a change in at least one of a plurality of operating characteristics in the electronic system, in response to detecting the change, the system stops clocks running on at least a substantial portion of the integrated circuit Updated frequency control information is provided to clock control logic in response to the detected change and updated voltage control information is supplied to a voltage control circuit m response to the change Once the updated mformation has been provided, the system restarts
- Fig 1A is a table showing the four global Gx states
- Fig IB is a table showing the four computmg states
- Fig IC is a table showing various sleep states
- Fig 2 illustrates a state machme implementing various run modes allowing the processor to dynamically adjust to its environment
- FIG. 3A summarizes the various run modes illustrated in Fig 2
- Fig 3B provides exemplary performance parameters for various run modes
- Fig 4 provides a graph illustrating relationships between voltage, frequency and power
- Fig 5 illustrates a high level diagram of a computer system incorporating one embodiment of the present mvention
- Fig 6 illustrates one implementation of a clock control circuit m the CPU
- Fig 7 illustrates generally the operation to control voltage and frequency according to one embodiment of the present invention
- Fig 8 illustrates the use of power on suspend CPU context lost (POSCCL) in one embodiment of the invention
- Fig 9A shows timing charts illustrating a POSCCL suspend and the correspondmg resume operation
- Fig 9B is a table describing the signals shown in Fig 9A
- Fig 10 illustrates use of a programmable logic device to effect run mode changes
- Fig 11 illustrates an implementation of a logic device from Fig 10
- Fig 12 is a timing diagram illustrating the operation of logic device of Fig 11
- Fig 13 shows a run mode control register utilized in one south bridge implementation to effect run mode changes
- Fig 14 shows a high level block diagram of a south bridge implementation to provide both jumper mputs and register inputs for voltage and frequency control
- Fig 15 illustrates a flow chart implementing run mode changes in a south bridge integrated circuit
- Fig 16 illustrates an exemplary docking station which may be used with a notebook computer incorporating the various run modes described herein
- a notebook computer or other portable computing device dynamically adapts the operation of the notebook computer and its processor to changes in its environment to provide improved performance and battery life
- the notebook computer monitors such thmgs as application or removal of external power sources (AC adapter, auto adapter or other external power source), changes m thermal environment (attachment of auxiliary cooling devices embedded in AC adapters, port replicators, docking stations or other attachable devices with coolmg capabilities or cooling capability within a notebook that can be used because of the availability of external power), and changes m a user definable profile for battery operation (e g maximizing performance or battery life)
- the notebook computer adapts to the change by entermg an appropriate run mode which sets the processor's frequency of operation, operatmg voltage, power consumption and power dissipation capabilities That may be accomplished by generating an interrupt when parameter changes are detected, that causes system level software
- the various run modes reflect the different environments m which a notebook has to operate For example, in some environments, such as when running on battery power, battery life may be more important than performance However, while playing a video clip, performance is probably more important Plugged into an AC-adapter or auto-adapter, battery life is not an issue Ideally, m each run mode the processor takes full advantage of the available power and the power dissipation ceiling
- CPU thermal and power management are improved by changing CPU voltage m addition to changmg the clock frequency
- Each run mode matches processor frequency and voltage of operation parameters to dynamic changes in the performance requirements, power consumption limitations and power dissipation limitations to provide improved performance and battery life to the user
- processor frequency determines a minimum required voltage for operation
- the voltage and frequencv of operation for the processor core are changed at the same time
- Battery life is enhanced by allowing the voltage provided to the CPU to be the least possible to assure proper operation at the target frequency of operation In effect, this enables the lowest possible CPU power consumption at a given frequency of operation
- the system is now able to optimize power and frequency within specified limits
- thermal management is now optimized fo a given frequency of CPU operation
- run mode 3 (11) provides maximum system performance (clock frequency and heat dissipation) when, e g , docked in a docking station providing auxiliary power and auxiliary cooling That may require that the docking station incorporate a sophisticated cooling system to force air through the processor heat sink oi to otherwise conduct heat out of and away from the processor with, e g , a heat pipe or heat plate
- the heat pipe may also be used to conduct heat into the dockmg station where a heat sink and fans are used to dissipate the heat
- Run mode 1 is a performance mode that mamtains processor speed that may be as high as run mode 2 and require active coolmg That high level of performance reduces battery life as a result of increased power dissipation by the processor and by the need to run a coolmg device such as a fan to aid in heat dispersion
- the performance is limited by the limits of active coolmg
- run mode 0 battery saver mode
- the limits of passive coolmg provide a performance ceiling That ceiling may be higher than actual performance due to the desire to extend battery life by reducmg power consumption by the processor even below the performance ceiling
- the ability to operate without active coolmg m the Battery Saver Mode (Run Mode 0) is dependent on low power dissipation m the Stop Clock Grant state in which processor core clocks are stopped Otherwise power will e to be expended for active coolmg
- At least one mode of operation may be provided that is between the two extremes of run mode 1 and run mode 0 That "between the two extremes" mode provides active cooling but with a lower performance target that results in active cooling needing to switch on less frequently That operational mode benefits from lower processor power consumption and less frequent consumption of power by the coolmg fan
- Additional battery modes may be provided which have even more granularity between the performance emphasized in run mode 1 and the battery life emphasized in run mode 0
- the user may specify through a control panel applet the various battery operation modes in a manner similar to a user selecting the time delay before the display or hard drive sleeps
- Run mode 2 (17) provides external power (e g , from an AC adapter) while the notebook computer is undocked Run mode 2 provides for maximum performance limited by thermal considerations
- the lack of auxiliary coolmg may limit run mode 2 performance below run mode 1
- the notebook has an active coolmg device, it can be utilized continually in run mode 2 without concerns about power consumption That allows the CPU to operate at a higher frequency than in run mode 1
- Fig 3A summarizes the various run modes illustrated m Fig 2 along with total dissipated power (TDP) It is possible for various en ⁇ ironments to prompt or warn the user about operatmg
- a DVD movie playback program can check the run mode when launched ACPI maintams tables mdicatmg the performance level If operating m run mode 0 (battery savmg mode), a warning message can be generated that the full frame rate of playback may not be possible until the user selects one of the other operatmg modes
- the computer system should provide a small latency between run modes
- the user may be able to tolerate a latency of up to, e g , 1 second but preferably the latency should not be noticed by the usei
- Fig 3B provides a table of exemplary performance parameters for various run modes For example m run mode 0, CPU voltage is 1 6 volts and the CPU frequency is 200 MHz In contrast, run mode 3 provides 400 MHz operation at 2 2 volts
- the graph shows a comparison of power reduction for a notebook that reduces its average frequency of operation through "throttlmg" which was described previously
- the left vertical axis is in volts
- the right vertical axis is m Watts Line 41 illustrates the voltage required as a function of frequency for a typical notebook processor
- the middle line 43 shows power as a function of frequency and illustrates the power savings available from reducmg frequency
- the power savings is generally lmear
- the power savings from reducing frequency is equivalent to power savmgs provided from throttlmg
- Line 45 shows power as a function of both voltage and frequency and illustrates the po er savings available from reducmg both voltage and frequency
- throttlmg may be used in combination with the reduction of both voltage and frequency to further reduce the effective speed or power dissipation of the processor
- the additional power savings at 200 MHz is equivalent to at least 45 minutes of battery life
- Run mode changes are controlled by state machine logic that is triggered by softw are but once triggered the state machine can perform its operations while the processor is sleeping
- the run mode logic can be built mto the power management features of a south bridge mtegrated circuit or implemented with a separate logic device that augments standard south bridge power management or m any other location suitable m the computer system
- the software required to make run mode changes can be triggered by SMI or SCI features built into standard south bridges
- the software required can leverage existmg routines for placing the processor in a sleep or suspend mode and then resuming operations
- a processor changes its internal bus-multiplier state and mamtains or recovers the state of its internal registers through chipset control That feature allows for multiple modes of frequency operation without powermg-off the system or manually reconfiguring the bus frequency (BF) pms as described further herem
- state machmes are provided in the input/output mtegrated circuit (known as the south bridge) to control the final stages of sleep and suspend operations and the resume operation
- the south bridge integrated circuit One such integrated circuit is the 82371AB PCI-TO-ISA/IDE XCELERATOR (PIIX4) available from Intel Corp
- PIIX4 PCI-TO-ISA/IDE XCELERATOR
- the power management features contained therein reduce power consumption to extend battery life and control heat generation and dissipation to safely operate the processor While some use a separate microcontroller for the task, most notebook PCs rely on the south bridge to provide the hardware for thermal and power management.
- the south bridge is one chip of a chipset that also includes a north bridge
- the north bridge provides a memory controller function as well as a bridge function between the Peripheral Component Interconnect (PCI) bus and the host bus connected to the processor.
- PCI Peripheral Component Interconnect
- the south bridge also interfaces to the PCI bus (which functions as a major input/output bus in the computer system) and provides a variety of functions including providing an interface with legacy devices on the ISA bus (or integrated mto the south bridge), providing an mterface to various other input/output buses and/or functions (e g. Universal Serial Bus (USB)) and also providing various power management related functions.
- South bridge chips from various manufacturers have typically utilized the registers, timers and state machme definitions used in the Intel PIIX4 south bridge. PIIX4 compatibility m current south bridge chips can be extended to support mobile operational modes described herem
- voltage regulator 501 supplies core voltage 502
- south bridge 505 controls the voltage level that is supplied to CPU 503 by supplying voltage control signals VID[4:0] to voltage regulator 501
- VID[4:0] voltage control signals
- three bus frequency input pins BF[2O]
- South bridge 505 controls the operating frequency of CPU 503 by supplying the CPU with BF (bus frequency) signals BF[2 0].
- the multiplication factor ranges, m one implementation from 2.5 times the bus clock to 6.0 times the bus clock Other multiplication factors are possible according to the specific system implementation.
- Fig 6 illustrates one implementation of the clock control circuit m the CPU.
- Frequency divider circuit 61 receives the BF pins, which are sampled durmg assertion of a processor reset signal (CPURST). The sampled values are applied to a phase locked loop (PLL) clock multiplier/synthesizer circuit for a long enough period of time for the PLL to stabilize. The values of the BF pms are latched mto frequency divider 61 on the falling edge of the CPURST signal. The reset pulse is sufficiently long to ensure that the clock multiplier circuitry is stable.
- PURST processor reset signal
- the bus clock 63 is provided to the phase (frequency) detector 64 which provides a control voltage 65 to voltage controlled oscillator (VCO) 67
- VCO voltage controlled oscillator
- the VCO supplies the core logic of the CPU with a clock havmg a frequency determined by the bus clock frequency multiplied by a value determined from the BF pms.
- Gating logic 68 may be used to gate off the CPU core clocks when the appropriate gating signal 69 is asserted to stop core clocks
- south bridge 505 supplies enable signal 509 to clock generator 507 to shut off the clock supplied to CPU 505 entirely to minimize the power consumed by the CPU
- south bridge 505 programs the voltage regulator, controls the clock generator, manages the duty cycle for throttlmg of the processor via the STPCLK# signal 510 and controls the clock multiplier by controlling the BF-pms.
- the south bridge 505 orchestrates the special protocol required to change the clock multiplier m the processor and change the core voltage in order to manage the transitions between the run modes.
- the transition between run modes is preferably transparent to both the operatmg system and the user to the extent possible
- SMI system management interrupt
- jumpers 511 provide a default state for the clock multiplier and voltage regulator on bootup
- the south bridge receives the jumper signals at eight jumper mputs pms IBF[0.2] and IV[0:4]
- the number of jumpers and jumper inputs may vary accordmg to the particular design.
- the settings of the jumpers 511 with resistors 513 provide the default values for both the voltage regulator control pms Voltage ID (VID) pms and the processor clock multiplier pms (BF pms) Those default values are provided to south bridge 505.
- the south bridge provides the default values of the VID pms and the BF pms to the voltage regulator and the CPU, respectively.
- south bridge 505 selects internal registers as the source for the output signals provided to the voltage regulator and CPU rather than the jumper inputs as described further herein
- three output bits are used to control the clock frequency and five output bits may be used for control of the CPU core voltage regulator.
- other numbers of bits may be used accordmg the particular clock frequency approach and voltage regulator being used.
- particular bits need not be dedicated as voltage or frequency control bits.
- the south bridge provides for ten mputs for the jumpers and ten outputs for clock and frequency control, some applications may require only three frequency control pms and 5 voltage control pms while others may require four of each or five of each Further, the input bits and outputs are not dedicated as a frequency or voltage control bit Therefore, if the voltage regulator can utilize seven control bits, seven control bits may be utilized for voltage control and three bits for frequency control That advantageously provides flexibility m implementation without having to change the south bridge.
- the processor may supply default static VID signals such as those shown at 514 rather than relymg on jumper settings
- processor operations need to be stopped, l e., processor clocks need to be stopped, at least those clocks supplied to storage elements such as registers and latches or other circuit nodes m time sensitive paths, since otherwise unpredictable behavior may result
- processor clocks need to be stopped, at least those clocks supplied to storage elements such as registers and latches or other circuit nodes m time sensitive paths, since otherwise unpredictable behavior may result
- STPCLK# the currently active instruction
- STPCLK# the CPU completes the currently active instruction and asserts a "Stop Grant” indication
- clocks may be stopped at clock generator 507 usmg enable signal 509
- the framework of ACPI ides a number of suspend and sleep operations which are supported m the south bridge and which may be modified to implement suspend processor operation m the context required here
- the flow chart in Fig 7 illustrates generally the operation to control voltage and frequency according to one embodiment of the present invention
- the processor is operating m a normal operational mode m 70 with the voltage regulator 501 receivmg appropriate voltage control signals VTD[0 4] and frequency control circuitry receivmg appropriate frequency control signals (e g the BF signals)
- the computer system detects a change in operating characteristics such as power source, thermal environment or user selected operatmg parameters in 71
- the system stops processor operation m 72 by stoppmg its clocks and determines a new frequency and corresponding voltage settings appropriate for the new run mode That information may be saved m registers m the south bridge or m other suitable locations m the computer system Updated voltage and frequency control signals are supplied to the appropriate voltage and frequency control circuit m 73 and 74 and then the processor resumes operation m 75
- the resume operation is triggered from one of the last actions of the suspend operation
- One of the steps m the resume operation contemplated m association with Fig 7, is for the resume operation to issue a frequency control signal update indication (e g , a reset (CPURST)) to the processor That frequency control update or valid signal mdicates to the processor that there is valid data on the BF pms that should be used for generation of core clocks If a CPU reset is used for that purpose, that reset is applied only to the processor and not to those portions of the computer system not requirmg a reset
- a frequency control signal update indication e g , a reset (CPURST)
- the processor senses the values of the frequency control signals (on the BF pms) when a reset signal is asserted and latches in those values on the falling edge of reset (see Fig 6)
- a signal other than reset may be asserted to indicate to the processor that new frequency control signal values are present If the reset signal is used to indicate that new frequency control (BF) signals are available, the processor loses context on assertion of reset, e g , values in the processor registers may be lost Thus, processor context should be saved prior to issuing a reset or an application will not be able to resume where it left off Once the reset is completed, the processor context can be restored from wherever it has been saved with the processor operatmg at the new frequency and voltage settings It is desirable to minimize the latency of the resume operation and therefore desirable to restore the processor context as fast as possible
- Sleep and suspend states require the processor operation to be stopped Therefore it is impossible for system software to directly control some management operations
- state machmes m the south bridge take control of the system to suspend processor operation and suspend other system devices
- the south bridge monitors several possible events for wakmg the system When an events occurs, another state machine sequences the system to resume operation
- the same hardware and software used to provide the sleep and suspend states can be utilized in performing the switch between run modes
- the processor's STPCLK# (the # sign mdicates the signal is active low) input is often used to temporarily suspend operation and conserve power Use of the STPCLK# signal allows the processor to be put in a Stop Grant state In that state, the core clocks are stopped although some minimum logic including clock multiplier logic still operates
- a control register (LVL2) in the south bridge is read That results in STPCLK# bemg asserted which notifies the processor it should stop processor clocks
- the south bridge waits for the processor to complete a current operation and issue the Stop Grant indication thereby indicating that the processor has gated off its core clocks
- the south bridge asserts the ZZ pm (which is optional to suspend L2 SRAM) That is enabled by ZZ_EN m CNTB register in the south bridge
- processor clocks can also be stopped for changes of the core frequency associated with changes in run modes as described herein A variant of this sequence asserts the SLP# signal to put portions of a compatible processor mto a powered down state
- Clocks at clock generator 507 may also be stopped as part of the sequence to change run modes as described herem
- software reads a control register (LVL3) in the south bridge, which results in STPCLK# bemg asserted
- the south bridge waits for Stop Grant
- the ZZ pin is optionally asserted to suspend L2 SRAM That is enabled by ZZ_EN m CNTB Register
- SLP# is asserted SUS_STAT1# is asserted to the North Bridge to place system memory is auto-refresh mode
- CPU STP (enable 509 m Fig 5) is asserted to disable the clock synthesizer (clock generator 507) output for the CPU bus clock
- the south bridge When a wake up event is detected, the south bridge first deasserts CPU STP to enable the CPU bus clock output of the clock synthesizer Then a timer (known in the industry as the "Fast Burn Timer") m the south b ⁇ dge counts down allowing time for the CPU PLL to lock Note that the value used by the tuner is loaded from the CLK_LCK register which is set by the BIOS during the system's power-on self-test (POST) sequence Finally, SUS_STAT1#, SLP#, the ZZ pm (if this option was enabled), and STPCLK# are de- asserted
- the sleep state machine can perform the more complex operations necessary to suspend the system by setting SUS_EN (bit 13) and loading the appropriate value (bits [12 10]) in the south bridge's Power Management Control Register
- SUS_EN bit 13
- SUS_EN bit 13
- SUS_EN bit 13
- SUS_EN bit 13
- SUS_EN bit 13
- SUS_EN bit 13
- SUS_EN bit 13
- SUS_EN bit 13
- Table 1 details the type of suspend/resume operations available and their associated values m the Power Management Control Register in the south b ⁇ dge
- the resume latencies vary dependmg on the type of suspend operation For example, the suspend to disk resume latency is typically less than 30 seconds, suspend to RAM approximately one second and power on suspend with context mamtained approximately 20 ms Maintaining context obviously reduces resume latency
- a new run mode is desired, the new voltage and frequency settings are loaded mto appropriate registers in 801 Those registers may be m the south bridge or m additional logic, which embodiment is described further herein, or m any other suitable location m the computer system
- the processor context is saved and the resume operation is set up m 803 by specifymg a restart address Saving processor context may mclude flushing the internal cache of the processor and saving the state of the processor to DRAM
- the set up of the jump entails setting the start-up vector address (real mode) and setting the necessary flag byte so the BIOS will immediately branch to the restore routine after CPU reset instead of rebooting the system X86 processors always begm execution m the address range FOOO FFFO after reset In a conventional x86 personal computer system, the BIOS ROM exists at that address range BIOS checks a flag byte m
- FIG 9A the timing charts illustrate the operation of the south bridge for a POSCCL suspend and the corresponding resume operation
- the transition from the on state to the suspend state is shown on the left side of Fig 9A and the transition from the suspend state to the on state is shown on the ⁇ ght side of Fig 9A
- the processor once havmg entered the sleep state in POSCCL, can be awakened by such events as the RTC alarm, an SMBus event, serial port, a rmg indicator, the system's soft power button, an external SMI (EXTSMI), raising the systems lid, a Global Standby Timer alarm, USB activity, IRQ [1,3 15], or a General Purpose Input 1 (GPU) assertion
- general purpose mputs to the south bridge are used as triggering events to wake up the processor
- the signals shown in Fig 9A are described m Fig 9B Several signals listed in Fig 9B may be provided as general purpose outputs (or may not be used in
- a PIIX4-compat ⁇ ble south bridge together with a logic device such as a programmable logic device (PLD), supply the necessary signals to the processor's (BF-pins) frequency control inputs and reprogram the core voltage power supply accordmg to the requirements of the various run modes
- PLD programmable logic device
- the programmable logic device may be a programmable array logic (PAL) device or a programmable logic array (PLA) or other appropriate logic device
- programmable logic device 101 receives the values from the jumpers 511 and provides 8 output bits, five to CPU core voltage regulator 501 and three frequency control bits BF[2 0] to CPU 503 Those bits respectively control the voltage regulator 501 and processor frequency logic on CPU 503
- the south bridge 103 provides several control signals to programmable logic device 101 and receives a wake signal therefrom as described further herem
- the PLD shown m Fig 10 allows an implementation of the run mode transitions described herein without requiring design changes to other system components
- the bits supplied for voltage and frequency control can be allocated differently by givmg more bits to frequency control and fewer to voltage control depending on the needs of the voltage regulator and the frequency range of operation desired In fact, fewer than all available bits may be used for voltage or frequency or both
- a typical processor like the AMD-K6 processor, needs just three bits for frequency setting Programmable voltage regulators are available with four or five bits of control
- the full range or precision of the voltage regulator is not needed and some control inputs to the regulator may be tied high or low
- the approach herein provides flexibility by allowing varying numbers of voltage and frequency control signals to be used based on the needs of the particular system
- programmable logic device 101 one implementation of programmable logic device 101 is shown in greater detail In the implementation illustrated there are 13 mputs and 9 outputs and the design can be implemented in a standard programmable array logic (PAL) device
- PAL programmable array logic
- the signals originating from south bridge may be clocked by the real time clock (RTC) (32 kHz), therefore a high speed logic device is unnecessary
- PLD 101 includes eight output flip-flops 1103 receivmg mput signals from a selector circuit 1105 , which selects either one of the input flip-flops or one of the jumper settings (IBF[0 3] and IV[0 3]) On a pow er on reset the flip-flops are held m reset until Power Okay (PWROK) 1107 is asserted While PWROK 1107 is asserted, south b ⁇ dge 103 issues a reset to the processor
- PWROK Power Okay
- the default values of the voltage and frequency control signals represented by the jumper settings should be reapphed to the frequency and voltage control circuits if a system reset is created either by pushmg the reset button or by software or by any other mechanism Therefore, the state of the GPO bit used to drive data in 1104 must default to logic zero if that bit is also used as a select signal for select logic 1105 as shown m the illustrative embodiment depicted If data m 1104 is zero for system reset, that assures that the default values from the jumpers settings are appropriately selected by select logic 1105
- only a few of the PIIX4-compat ⁇ ble south bridge bits have this property (e g , GPO[27 28,30]) and therefore the GPO-X and GPO-Y bits are selected from among those bits Using one of those bits insures that the start-up jumper settings will be communicated to the voltage regulator and the processor's BF-pms during reset in the implementation shown
- Other implementations would be readily apparent to one of skill m
- the ⁇ smg edge of the CPURST signal causes the default or startup voltage and frequency settings to be loaded mto output registers 1103 and thus be provided to voltage regulator 501 and CPU 503 Loading the output registers will immediately set the voltage regulator to the initial value
- the default frequency settings will also be output CPURST causes the processor to loads its BF-pm mputs and sets the initial bus clock multiplier for generatmg the CPU core clock
- the GPO bits on the south b ⁇ dge are used to load the new values mto data input registers 1101
- the setup for the transition sequence occurs m 121 when the shift signal 1102 is used to shift m the new voltage and frequency settings on data in signal line 1104 mto input register 1 101
- the suspend operation is executed which includes saving processor context and, as illustrated in Fig 12, asserting STPCLK# and SLP#
- the GPO bit 1104 used to input data into the shift registers also steers the multiplexer 1105 Leaving the bit high durmg the suspend/resume sequence steers the multiplexer to supply the output of the shift registers, instead of the jumpers, to the inputs of the output registers 1103
- the serial data is w ⁇ tten to logic device writing to the appropriate GPIO ports
- the south bridge is made to execute a POSCCL operation which causes the south bridge to supply a signal indicating that the suspend operation is at or near completion
- a POSCCL operation which causes the south bridge to supply a signal indicating that the suspend operation is at or near completion
- That signal indicates the end of the suspend sequence and is provided as trigger (TG#) 1109 to PLD 101
- TG# is active low
- PLD 101 creates an event to resume operation, 1 e , wake up the processor by logically combining that trigger signal with data mput 1107 in gate 1111 That is used to gate SLP# through as the wake event (active low) to south bridge mput GP11# that is sensed as a wake up event resulting m
- a standard POSCCL resume operation which as previously descnbed, is useful for setting new processor frequency multiplier because it cycles the processor reset
- the end of the suspend operation results m the wake event That m turn that causes the resume sequence illustrated m Fig
- the bus clock frequency not be changed between 66 MHz and 100 MHz durmg the change Smce the BF settings are conventionally m 'A x steps (e g 2x, 2 5x, 3x, 3 5x, etc ) that limits the granula ⁇ ty of the processor clock frequency steps If greater complexity is acceptable such changes can be implemented Changmg the frequency of the bus clock affects the divider ratios used to create the Peripheral Component Interconnect (PCI) and Accelerated Graphics Port (AGP) clocks It may be necessary to put memory mto a sleep or power down when changing the clock ratios
- PCI Peripheral Component Interconnect
- AGP Accelerated Graphics Port
- the implementation described herein utilizes a variable voltage regulator supply such as the National Semiconductor's LM4130, whose output voltage can be controlled by the chipset logic (including any external device) It is desirable for the voltage regulator to support at least four control bits and for the output voltage to be controllable in steps of 50mV
- the south bridge can be modified to provide the logic necessary to transition between the various run modes rather than utilize an external logic device
- a high level implementation of such a system is illustrated in Fig 5
- One approach to the south bridge implementation is to incorporate the logic contained m the PLD mto the south bridge
- the logic can be simplified since the various signals needed to interface the south bridge to the PLD can be eliminated
- the use of the data mput signal as the multiplexer signal could be eliminated
- the input registers would preferably be loaded m parallel, rather than serially thus eliminating the need for a shift signal
- the south bridge defines a new sleep type in the power management control register (see Table 1 above) usmg one of the combinations of bits [12 10] not presently used (e g , 110) Those bits are variously referred to as either sleep type or suspend type When the sleep enable bit (or suspend enable) is set to one and the sleep type bits are 110, then the system causes a transition in the notebook run modes
- run mode control register 130 provides the control information necessary to transition to a new run mode
- the two bit operatmg mode field 131 is a stams field that identifies the current run mode as either high performance (00), AC power (01), battery performance (10) or battery save mode (11) Additional run modes would require additional bits
- the five bit core voltage field 132 defines the control bits for the new core voltage and the four bit CPU clock frequency control bits 133 define the CPU core frequency As discussed herem, the clock control in the CPU may be implemented as a frequency multiplier of the bus clock
- the reset control bit 134 defines whether or not a reset is provided to the CPU during the run mode transition In one embodiment, when the reset control bit is 1 , the CPU is reset on a run mode transition and when the reset control bit is 0, the CPU is not reset If a reset is provided to the CPU m order to change the operatmg core frequency, then it is necessary to save processor context prior to the reset and to provide a resume operation that restores processor context after the reset signal is deasserted as was discussed with
- the CPU reset signal is not used to indicate a frequency change
- software loads up the appropriate values m register 130 and stops the processor clocks
- the clocks can be stopped on the processor using the STPCLK# signal as described previously
- the new voltage and frequency control bits are output by the south bridge and the frequency control latch signal CMD 515 is asserted to indicate that updated frequency control signals are available
- the CPU samples the frequency control bits (BF pms) on the assertion of the latch control signal CMD 515 and latches in the new value on deassertion of the signal Hardware m the south bridge maintains the latch control signal CMD 515 asserted for a sufficient length of time for the processor PLL to stabilize Once the processor PLL is stabilized, the south bridge hardware deasserts the STPCLK# signal and the processor resumes operation without the application or user knowing about the run mode transition
- the time to make the transition is less than, e g , 100 ⁇ sec
- a sequence similar to POSCCL illustrated in Fig 9A may be used, with new control signals for voltage and frequency bemg provided between the latter part of the power on suspend (POS) sequence and the assertion of reset at 91 in Fig 9A
- the transition sequence from one run mode to another is initiated when an interrupt (e g SCI) is generated because of an operating mode event
- an interrupt e g SCI
- the event may be because the notebook computer is plugged mto or removed from a docking station, a port replicator or any other device than can remov e large amount of thermal energy from the notebook, or when AC power is supplied or removed or when the battery is running low or any other event that should result in a change m the operating mode
- the system management software programs the operatmg mode control register 130 with the new core voltage and the new clock frequency control bits The software then sets the sleep type bits to 110 as well as the sleep enable bit
- the reading of special register LVL3 m south bridge 505 starts the hardware state machine that performs the POSCCL sequence
- the use of operatmg mode control register 130 may be advantageously employed with a south bridge only implementation and also with the PLD implementation previously described
- writing (or readmg) register 130 may be used as a trigger to start the control logic to implement the run mode change
- Such a trigger may be used when the run mode change utilizes either the latch control signal CMD or the reset signal In such a case, saving processor context would have to be completed before w ⁇ tmg the register if a reset is utilized If latch control signal CMD 515 is used, then that signal may be strobed, e
- a multiplexer 141 that selects between the values m the control register 130 and jumper settings 511 according to select signal 142 supplied from control logic 144
- Control logic 144 also contains the necessary suspend and resume state machmes to implement the suspend and resume sequences illustrated, e g , m Fig 9A
- Multiplexer 141 supplies output register 143 with values from jumper settmgs 511 which selects the default jumper settmgs m response to reset (e g a power on reset or other hard or soft reset)
- output register 143 is loaded after clocks are stopped and before supplying either a reset or CMD signal to load in new frequency settings or on the rising edge of reset of CMD assuming the falling edge causes a new frequency setting to be latched
- control bit 136 defines whether or not the clock generator 507 is disabled or not during the run mode transition
- clock generator 507 (as m POSCCL)
- the clock frequency control bits are then updated, and the clocks are turned back on at clock generator 507
- clock generator 507 may be mtegrated with other system components It is desirable to have a clock generator whose outputs can be enabled by the south bridge's GPO control bits
- the clock generator may have multiple PLL cells to support the various clock frequencies desired m any particular design, e g , supporting the CPU at 100MHz or 66MHz, serial devices at 24KHz and 48KHz, and PCI devices at 33MHz
- the flow chart illustrates the overall operation of the south b ⁇ dge incorporating hardware to cause run mode changes
- a run mode change such as an additional power source becommg available as described previously herein
- software sets the required values for register 130 m 1501 In 1503
- a determination is made as to whether or not reset control bit 134 is set m register 130 If so, then it is necessary to save processor context in 1504 That determines the exact sleep type that will be used by the south b ⁇ dge If the reset control bit 134 is not being used, that presumes that the latch command bit 135 is set and the step of savmg processor context 1504 may be skipped
- only one bit needs to be used to mdicate whether to use a reset or latch command signal If accessmg register 130 is used as a trigger to start a change m run mode, then context may need to be saved prior to such an access
- processor context is saved in 1504 or if a reset is not bemg used, then state
- Stop Grant acknowledgement can be performed without monitormg of the CPU bus cycles by simply waitmg a predetermined time which is more than the maximum time that could be taken to reach the Stop Grant state by the processor
- Stop Grant is acknowledged or the predetermined time limit is reached and it is assumed that Stop Grant state exists m the processor, it is determined if the stop clock bit 136 m control register 130 is set. If the bit is set, then m 1513, the clock output to the CPU from clock generator 507 is turned off using the stop clock line (enable 509). Then m 1515, new voltage and frequency control settmgs are applied to the voltage regulator and the BF pms, respectively. In 1517, it is determined whether the stop clock bit (enable 509) is asserted If so, m 1519, clock generator 507 is enabled to output the clock to the CPU and sufficient time is provided for the PLL to stabilize.
- register 130 provides an embodiment in which the use of either reset or the latch control signal
- CMD is selectable, and turning off the clocks external to the processor is also selectable.
- the south b ⁇ dge (or other suitable integrated circuit) may not provide options.
- reset may always be used or the latch control command signal may always be used
- the change run mode sequence may always m off clocks external to the processor (as well as internally) or may always leave such clocks running
- the clock generator may have multiple PLL cells to be able to slew the CPU clock input while maintaining other system required frequencies constant.
- the clock generator would be able to slew the CPU frequency across the desired range while keeping the rate of change in the CPU clock frequency withm the jitter specifications of the CPU to prevent the clock multiplier circuitry withm the processor from loosing lock
- ACPI has two built-in schemes for thermal management, one passive and one active.
- the passive scheme relies on throttling down the processor to generate less heat while the active scheme uses a coolmg device like a fan to remove heat from the processor and system
- a suitable thermal sensor measures the processor temperature for passive and active schemes
- the thermal design is based upon one or more thermal zones For each zone, up to three thermal thresholds can be defined
- the total board monitormg philosophy provides a means of measurmg all voltages (e g , CPU core, CPU I/O, 3 3 V, 5 V 12V, -12V -5), fan rotation speed, temperamre of the CPU, and temperature of the board Devices like the National LM78 may be used for this system monitormg approach
- the CPU-only monitormg methodology can use the National LM75
- the LM78 has an open collector output that is used to create an interrupt when the processor's temperamre is above acceptable limits or when the temperamre has changed by a certain amount
- the System Management Bus (SMBus) may be used to program the over- temperature and temperamre hysterisis values within the device
- the SM Bus is a slow 2 bit serial bus that is used for communicating with monitormg devices like thermal sensors, chassis intrusion alert sensors and to provide fan speed control
- Conventional south bridges have an SMBus interface so system software can talk to (setup and control)
- ACPI maintains temperamre set-pomts that are compared with the processor temperature When the temperature exceeds the set-pomts, action is taken to reduce heat dissipation by the processor (passive method) or to expel the heat from the system (active method)
- the necessary registers and mterface are generally contamed m the PIIX4 south bridges Most new south b ⁇ dges are PIIX4 compatible That helps reduce the effort necessary to adapt ACPI BIOS and operating system code for different company's chipsets
- ACPI maintains set-points for processor thermal management
- One is a fail safe set-pomt that will initiate a shutdown if the processor becomes too hot
- Other set-pomts are associated with ACPI's "Active” and "Passive” coolmg methods Either or both methods can be incorporated mto a notebook design incorporating the run modes described herem
- ACPI turns on and off a cooling device based on temperature reports generated by a sensor placed on the processor heat sink or directly on the processor
- the temperature sensor senses a change m temperature (usually 5 degrees) it reports a new temperature to ACPI's thermal management If the temperamre is above a limit provided in an ACPI table, the coolmg device is switched on When the temperature sensor reports a drop in temperamre that places the temperamre below another table value, the cooling device is switched off
- these thresholds are programmable, and software is allowed to dynamically adjust the thresholds for optimum results For example, when the active coolmg threshold is crossed, the system software may start the system fan at a low speed, and reprogram the active coolmg threshold at a higher temperamre If the system temperamre contmues to rise, it will eventually cross the new active coolmg threshold In response, the fan speed can be mcreased, and if appropriate, the active coolmg threshold can be set again at an even higher point
- the cooling device is a miniature fan placed on or near the processor's heat sink Running the fan circulates air from outside the notebook PC's case to cool the processor more than can be done by conduction and convection alone
- the active cooling system may also be more sophisticated When docked, an external fan m the port replicator or dockmg station can circulate more air
- Other technologies that may be used mclude heat pipes, large thermal dissipation plates or refrigeration devices like the Peltier junction devices that have been used to cool desktop processors in the past
- Mobile systems may use different active coolmg device and temperamre set points m the ACPI tables for each mode of operation (AC/battery and docked/undocked) Since active devices consume power themselves, it is recommended that these devices receive somewhat limited use m Run Mode 0, the battery life mode Active cooling is a good solution when the system is running from an external power source such as AC-lme adapter, car adapter or airplane adapter
- ACPI power management dynamically reduces or increases the "speed" of the processor as necessary to maintain the processor operating temperature at a safe level Obviously,
- throttlmg down the processor reduces performance, but even operatmg at somewhat reduced speeds, today's processors can provide adequate performance for mnnmg applications such as word processmg
- the throttling method used in most notebooks, directly supported by ACPI and PIIX4-compat ⁇ ble south b ⁇ dges reduces the average processor speed by alternately starting and stopping the processor using the STPCLK# (stop clock) mput of the processor
- the stoppmg and starting of the processor is not noticeable to the user The reason is that the frequency at which the start stop action takes place is faster than a person can perceive PIIX4-compat ⁇ ble chipsets use the real time clock to d ⁇ ve a three bit counter that determines the duty cycle
- a dockmg station solution with the notebook is illustrated Fig 16 shows an exemplary system that uses a Peltier de ⁇ ice 163 in the dockmg station 162 to cool probe 165 that inserts mto the back of the notebook computer 161 when the notebook system is docked m dockmg station 162 Probe 165 makes contact with the processor's heat sink and conducts heat away The probe 165 is cooled by the Peltier device 163 which requires several watts of power available from the dockmg station's AC operated power supply
- Heat pipes are generally made of tubes with water or other coolant under low pressure When one end is heated by the processor, the coolant absorbs heat when it vaporizes The vapor moves to the other end of the pipe where it is cooled by a heat sink The vapor condenses as it cools and is moved by capillary action through a wick back to the startmg pomt Heat pipes can be made many different ways and can be connected to large surfaces like a metal case to dissipate heat Thus, notebook dockmg station solutions may include fans, heat sinks, and heat pipes to conduct heat away from the notebook computer when docked to allow for mcreased performance desired m ran mode 3
- the mechanical and electrical design should support the necessary sensmg so the notebook computer can detect when the computer is bemg docked, is currently docked and when it is being undocked, when auxiliary power and/or auxiliary coolmg is available and or when user defined operational states have been modified
- the notebook PC should detect when AC power is first applied, when AC power is present, and when AC power has been removed
- the design should support detectmg all standard notebook states such as power and reset buttons, when primary battery is present, the remaming capacity of battery (I e Smart Battery), the battery chargmg state, whether a secondary battery is present m an option bay, the remaining capacity of that battery, and that battery chargmg state It should detect chargmg states mclude fast charge, trickle charge, battery fault (e g , shorted), and not chargmg It should detect when suspend button (or key combination) is pressed to suspend or wake the system, when the cover is closed or opened (e g option to suspend and wake or just to shutdown
- the system should also sense processor case temperature and at least two set pomts for temperamre "alarms" (one for turning on a coolmg device like a fan when the temperature is near the safe upper limit for operation, and one for immediate protective action when the temperature reaches a critical upper limit for preventmg damage to the processor), If a fan is used for auxiliary coolmg, confirmation that the fan is mnnmg is provided (it is desirable that the speed of the fan can be sensed)
- temperamre "alarms” one for turning on a coolmg device like a fan when the temperature is near the safe upper limit for operation, and one for immediate protective action when the temperature reaches a critical upper limit for preventmg damage to the processor
- a notebook computer dynamically adapts to its environment to provide improved power and thermal management and optimizes its performance for its environment
- the description of the mvention set forth herein is illustrative, and is not intended to limit the scope of the mvention as set forth m the following claims
- the teachmgs herein may also be utilized in other portable computing devices such as personal digital assistants, (PDAs) which are handheld devices that typically combme computing, telephone/fax, and networkmg features or m other small form factor computing and/or communication equipment where such run modes may prove useful
- PDAs personal digital assistants
- Other variations and modifications of the embodiments disclosed herein may be made based on the description set forth herem, without departmg from the scope and spirit of the mvention as set forth m the folio wmg claims.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Power Sources (AREA)
Abstract
Description
Claims
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001536668A JP2003514296A (en) | 1999-11-09 | 2000-06-23 | Method of dynamically adjusting operating parameters of a processor according to its environment |
KR1020027006012A KR20020050270A (en) | 1999-11-09 | 2000-06-23 | Dynamically adjusting a processor's operational parameters according to its environment |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16440999P | 1999-11-09 | 1999-11-09 | |
US60/164,409 | 1999-11-09 | ||
US47714100A | 2000-01-03 | 2000-01-03 | |
US09/477,141 | 2000-01-03 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2001035200A1 true WO2001035200A1 (en) | 2001-05-17 |
Family
ID=26860529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/US2000/017460 WO2001035200A1 (en) | 1999-11-09 | 2000-06-23 | Dynamically adjusting a processor's operational parameters according to its environment |
Country Status (3)
Country | Link |
---|---|
JP (1) | JP2003514296A (en) |
KR (1) | KR20020050270A (en) |
WO (1) | WO2001035200A1 (en) |
Cited By (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003027819A2 (en) * | 2001-09-28 | 2003-04-03 | Intel Corporation | Method and apparatus to monitor performance of a process |
WO2003062972A2 (en) * | 2002-01-19 | 2003-07-31 | National Semiconductor Corporation | Adaptive voltage scaling clock generator for use in a large-scaledigital ntegrated circuit and method of operating the same |
GB2394082A (en) * | 2002-08-12 | 2004-04-14 | Hewlett Packard Development Co | System and method for the frequency management of computer systems to allow capacity on demand |
WO2004036398A2 (en) * | 2002-10-14 | 2004-04-29 | Intel Corporation | Method and apparatus for performance effective power throttling |
EP1422595A2 (en) * | 2002-11-25 | 2004-05-26 | Texas Instruments Inc. | Adjusting voltage supplied to a processor in response to clock frequency |
WO2004081774A2 (en) * | 2003-03-12 | 2004-09-23 | Fujitsu Siemens Computers Gmbh | Control of the power draw of a data processing system |
WO2004097657A2 (en) * | 2003-04-24 | 2004-11-11 | Intel Corporation | Method and apparatus to establish, report and adjust system memory usage |
WO2005017468A2 (en) * | 2003-08-15 | 2005-02-24 | Apple Computer, Inc. | Methods and apparatus for operating a data processing system |
WO2005039052A1 (en) * | 2003-10-10 | 2005-04-28 | Intel Corporation | A computer system having controlled cooling |
WO2006084785A1 (en) * | 2005-02-09 | 2006-08-17 | International Business Machines Corporation | Method and apparatus for autonomic policy-based thermal management in a data processing system |
US7237128B2 (en) | 2002-10-14 | 2007-06-26 | Intel Corporation | Method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device |
CN100363888C (en) * | 2004-03-02 | 2008-01-23 | 松下电器产业株式会社 | Device and method for controlling an internal state of information processing equipment |
US7451333B2 (en) | 2004-09-03 | 2008-11-11 | Intel Corporation | Coordinating idle state transitions in multi-core processors |
CN100458651C (en) * | 2001-12-12 | 2009-02-04 | 英特尔公司 | Operating system coordinated thermal management |
US7921312B1 (en) | 2007-09-14 | 2011-04-05 | National Semiconductor Corporation | System and method for providing adaptive voltage scaling with multiple clock domains inside a single voltage domain |
US7966511B2 (en) | 2004-07-27 | 2011-06-21 | Intel Corporation | Power management coordination in multi-core processors |
US8067861B2 (en) | 2008-02-29 | 2011-11-29 | Panasonic Corporation | Interface device for host device, interface device for slave device, host device, slave device, communication system and interface voltage switching method |
US8237386B2 (en) | 2003-08-15 | 2012-08-07 | Apple Inc. | Methods and apparatuses for operating a data processing system |
US8296597B2 (en) | 2008-08-22 | 2012-10-23 | Asustek Computer Inc. | Computer system capable of dynamically modulating operation voltage and frequency of CPU |
JP2013533548A (en) * | 2010-06-21 | 2013-08-22 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | Management of multiple operating points for stable virtual frequency |
US8707066B2 (en) | 2005-12-30 | 2014-04-22 | Intel Corporation | Method and apparatus for a zero voltage processor sleep state |
US9274574B2 (en) | 2005-08-25 | 2016-03-01 | Apple Inc. | Methods and apparatuses for determining throttle settings to satisfy a system power constraint |
WO2017112064A1 (en) * | 2015-12-24 | 2017-06-29 | Intel Corporation | Cooling solutions for a dock |
US9762715B2 (en) | 2006-04-24 | 2017-09-12 | Nokia Technologies Oy | System and method for manage and control near field communication for a mobile multifunctional device when the device is uncharged or only partially charged |
US10001831B2 (en) | 2014-01-31 | 2018-06-19 | Hewlett-Packard Development Company, L.P. | Determination of a zero watt state for implementation |
US20190317585A1 (en) * | 2012-08-31 | 2019-10-17 | Intel Corporation | Configuring Power Management Functionality In A Processor |
CN110476137A (en) * | 2018-03-13 | 2019-11-19 | 三菱电机株式会社 | Information process unit |
US10540094B2 (en) | 2008-02-28 | 2020-01-21 | Memory Technologies Llc | Extended utilization area for a memory device |
WO2020205154A1 (en) * | 2019-03-29 | 2020-10-08 | Intel Corporation | Input voltage protection |
US10877665B2 (en) | 2012-01-26 | 2020-12-29 | Memory Technologies Llc | Apparatus and method to provide cache move with non-volatile mass memory system |
US10983697B2 (en) | 2009-06-04 | 2021-04-20 | Memory Technologies Llc | Apparatus and method to share host system RAM with mass storage memory RAM |
US11016678B2 (en) | 2013-12-12 | 2021-05-25 | Memory Technologies Llc | Channel optimized storage modules |
US11226771B2 (en) | 2012-04-20 | 2022-01-18 | Memory Technologies Llc | Managing operational state data in memory module |
WO2023125636A1 (en) * | 2021-12-30 | 2023-07-06 | 华为技术有限公司 | Frequency adjustment method and related device |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4575859B2 (en) * | 2005-08-05 | 2010-11-04 | 株式会社日立製作所 | Electronic equipment |
US8374730B2 (en) * | 2005-08-25 | 2013-02-12 | Apple Inc. | Methods and apparatuses for dynamic thermal control |
JP4624928B2 (en) * | 2006-01-12 | 2011-02-02 | ルネサスエレクトロニクス株式会社 | Semiconductor integrated circuit device |
JP2007249660A (en) * | 2006-03-16 | 2007-09-27 | Toshiba Corp | Information processor and method of controlling system state |
US8044697B2 (en) * | 2006-06-29 | 2011-10-25 | Intel Corporation | Per die temperature programming for thermally efficient integrated circuit (IC) operation |
US10401931B2 (en) | 2015-12-22 | 2019-09-03 | Intel Corporation | Power delivery architecture to increase performance of computing systems when docked |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08328698A (en) * | 1995-05-30 | 1996-12-13 | Toshiba Corp | Portable computer |
WO1997012329A1 (en) * | 1995-09-29 | 1997-04-03 | Intel Corporation | An apparatus and method for reducing power consumption through both voltage and frequency scaling |
US5881298A (en) * | 1996-09-05 | 1999-03-09 | Micron Technology, Inc. | Portable computer with selectively operable cooling unit |
US5887179A (en) * | 1996-06-11 | 1999-03-23 | Motorola, Inc. | System power saving means and method |
US5925133A (en) * | 1994-10-19 | 1999-07-20 | Advanced Micro Devices, Inc. | Integrated processor system adapted for portable personal information devices |
-
2000
- 2000-06-23 KR KR1020027006012A patent/KR20020050270A/en not_active Application Discontinuation
- 2000-06-23 WO PCT/US2000/017460 patent/WO2001035200A1/en not_active Application Discontinuation
- 2000-06-23 JP JP2001536668A patent/JP2003514296A/en not_active Withdrawn
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5925133A (en) * | 1994-10-19 | 1999-07-20 | Advanced Micro Devices, Inc. | Integrated processor system adapted for portable personal information devices |
JPH08328698A (en) * | 1995-05-30 | 1996-12-13 | Toshiba Corp | Portable computer |
US6014611A (en) * | 1995-05-30 | 2000-01-11 | Kabushiki Kaisha Toshiba | Cooling mode switching system for CPU |
WO1997012329A1 (en) * | 1995-09-29 | 1997-04-03 | Intel Corporation | An apparatus and method for reducing power consumption through both voltage and frequency scaling |
US5887179A (en) * | 1996-06-11 | 1999-03-23 | Motorola, Inc. | System power saving means and method |
US5881298A (en) * | 1996-09-05 | 1999-03-09 | Micron Technology, Inc. | Portable computer with selectively operable cooling unit |
Non-Patent Citations (2)
Title |
---|
"POWER MANAGEMENT CLOCK CHANGE FOR 603 PROECESSOR", IBM TECHNICAL DISCLOSURE BULLETIN,US,IBM CORP. NEW YORK, vol. 38, no. 12, 1 December 1995 (1995-12-01), pages 325 - 327, XP000588158, ISSN: 0018-8689 * |
PATENT ABSTRACTS OF JAPAN vol. 1997, no. 4 30 April 1997 (1997-04-30) * |
Cited By (82)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003027819A2 (en) * | 2001-09-28 | 2003-04-03 | Intel Corporation | Method and apparatus to monitor performance of a process |
KR100626769B1 (en) * | 2001-09-28 | 2006-09-25 | 인텔 코오퍼레이션 | Method and apparatus to monitor performance of a process |
JP2005527875A (en) * | 2001-09-28 | 2005-09-15 | インテル コーポレイション | Method and apparatus for monitoring processing performance |
US6898718B2 (en) | 2001-09-28 | 2005-05-24 | Intel Corporation | Method and apparatus to monitor performance of a process |
WO2003027819A3 (en) * | 2001-09-28 | 2004-10-07 | Intel Corp | Method and apparatus to monitor performance of a process |
CN100458651C (en) * | 2001-12-12 | 2009-02-04 | 英特尔公司 | Operating system coordinated thermal management |
WO2003062972A2 (en) * | 2002-01-19 | 2003-07-31 | National Semiconductor Corporation | Adaptive voltage scaling clock generator for use in a large-scaledigital ntegrated circuit and method of operating the same |
WO2003062972A3 (en) * | 2002-01-19 | 2004-02-26 | Nat Semiconductor Corp | Adaptive voltage scaling clock generator for use in a large-scaledigital ntegrated circuit and method of operating the same |
US6944780B1 (en) | 2002-01-19 | 2005-09-13 | National Semiconductor Corporation | Adaptive voltage scaling clock generator for use in a digital processing component and method of operating the same |
GB2394082B (en) * | 2002-08-12 | 2005-10-05 | Hewlett Packard Development Co | System and method for the frequency management of computer systems to allow capacity on demand |
GB2394082A (en) * | 2002-08-12 | 2004-04-14 | Hewlett Packard Development Co | System and method for the frequency management of computer systems to allow capacity on demand |
US7389435B2 (en) | 2002-08-12 | 2008-06-17 | Hewlett-Packard Development Company, L.P. | System and method for the frequency management of computer systems to allow capacity on demand |
WO2004036398A2 (en) * | 2002-10-14 | 2004-04-29 | Intel Corporation | Method and apparatus for performance effective power throttling |
WO2004036398A3 (en) * | 2002-10-14 | 2005-02-24 | Intel Corp | Method and apparatus for performance effective power throttling |
US7076672B2 (en) | 2002-10-14 | 2006-07-11 | Intel Corporation | Method and apparatus for performance effective power throttling |
US7237128B2 (en) | 2002-10-14 | 2007-06-26 | Intel Corporation | Method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device |
EP1422595A2 (en) * | 2002-11-25 | 2004-05-26 | Texas Instruments Inc. | Adjusting voltage supplied to a processor in response to clock frequency |
EP1422595A3 (en) * | 2002-11-25 | 2005-02-09 | Texas Instruments Inc. | Adjusting voltage supplied to a processor in response to clock frequency |
US6996730B2 (en) | 2002-11-25 | 2006-02-07 | Texas Instruments Incorporated | Adjusting voltage supplied to a processor in response to clock frequency |
WO2004081774A2 (en) * | 2003-03-12 | 2004-09-23 | Fujitsu Siemens Computers Gmbh | Control of the power draw of a data processing system |
WO2004081774A3 (en) * | 2003-03-12 | 2004-11-11 | Fujitsu Siemens Computers Gmbh | Control of the power draw of a data processing system |
WO2004097657A2 (en) * | 2003-04-24 | 2004-11-11 | Intel Corporation | Method and apparatus to establish, report and adjust system memory usage |
WO2004097657A3 (en) * | 2003-04-24 | 2005-04-07 | Intel Corp | Method and apparatus to establish, report and adjust system memory usage |
KR100750030B1 (en) * | 2003-04-24 | 2007-08-16 | 인텔 코오퍼레이션 | Method and apparatus to establish, report and adjust system memory usage |
US7451332B2 (en) | 2003-08-15 | 2008-11-11 | Apple Inc. | Methods and apparatuses for controlling the temperature of a data processing system |
US8237386B2 (en) | 2003-08-15 | 2012-08-07 | Apple Inc. | Methods and apparatuses for operating a data processing system |
US9043627B2 (en) | 2003-08-15 | 2015-05-26 | Apple Inc. | Methods and apparatuses for controlling the temperature of a data processing system |
WO2005017468A3 (en) * | 2003-08-15 | 2005-11-17 | Apple Computer | Methods and apparatus for operating a data processing system |
US9317090B2 (en) | 2003-08-15 | 2016-04-19 | Apple Inc. | Methods and apparatuses for operating a data processing system |
US8448000B2 (en) | 2003-08-15 | 2013-05-21 | Apple Inc. | Methods and apparatuses for operating a data processing system |
WO2005017468A2 (en) * | 2003-08-15 | 2005-02-24 | Apple Computer, Inc. | Methods and apparatus for operating a data processing system |
WO2005039052A1 (en) * | 2003-10-10 | 2005-04-28 | Intel Corporation | A computer system having controlled cooling |
US7508671B2 (en) | 2003-10-10 | 2009-03-24 | Intel Corporation | Computer system having controlled cooling |
CN100363888C (en) * | 2004-03-02 | 2008-01-23 | 松下电器产业株式会社 | Device and method for controlling an internal state of information processing equipment |
US8726048B2 (en) | 2004-07-27 | 2014-05-13 | Intel Corporation | Power management coordination in multi-core processors |
US9870044B2 (en) | 2004-07-27 | 2018-01-16 | Intel Corporation | Method and apparatus for a zero voltage processor sleep state |
US9235258B2 (en) | 2004-07-27 | 2016-01-12 | Intel Corporation | Method and apparatus for a zero voltage processor |
US9223389B2 (en) | 2004-07-27 | 2015-12-29 | Intel Corporation | Method and apparatus for a zero voltage processor |
US7966511B2 (en) | 2004-07-27 | 2011-06-21 | Intel Corporation | Power management coordination in multi-core processors |
US9223390B2 (en) | 2004-07-27 | 2015-12-29 | Intel Corporation | Method and apparatus for a zero voltage processor |
US9141180B2 (en) | 2004-07-27 | 2015-09-22 | Intel Corporation | Method and apparatus for a zero voltage processor sleep state |
US9841807B2 (en) | 2004-07-27 | 2017-12-12 | Intel Corporation | Method and apparatus for a zero voltage processor sleep state |
US9081575B2 (en) | 2004-07-27 | 2015-07-14 | Intel Corporation | Method and apparatus for a zero voltage processor sleep state |
US7451333B2 (en) | 2004-09-03 | 2008-11-11 | Intel Corporation | Coordinating idle state transitions in multi-core processors |
WO2006084785A1 (en) * | 2005-02-09 | 2006-08-17 | International Business Machines Corporation | Method and apparatus for autonomic policy-based thermal management in a data processing system |
US7194645B2 (en) | 2005-02-09 | 2007-03-20 | International Business Machines Corporation | Method and apparatus for autonomic policy-based thermal management in a data processing system |
US9274574B2 (en) | 2005-08-25 | 2016-03-01 | Apple Inc. | Methods and apparatuses for determining throttle settings to satisfy a system power constraint |
US9671845B2 (en) | 2005-08-25 | 2017-06-06 | Apple Inc. | Methods and apparatuses for dynamic power control |
US8707066B2 (en) | 2005-12-30 | 2014-04-22 | Intel Corporation | Method and apparatus for a zero voltage processor sleep state |
US9762715B2 (en) | 2006-04-24 | 2017-09-12 | Nokia Technologies Oy | System and method for manage and control near field communication for a mobile multifunctional device when the device is uncharged or only partially charged |
US7921312B1 (en) | 2007-09-14 | 2011-04-05 | National Semiconductor Corporation | System and method for providing adaptive voltage scaling with multiple clock domains inside a single voltage domain |
US11907538B2 (en) | 2008-02-28 | 2024-02-20 | Memory Technologies Llc | Extended utilization area for a memory device |
US11829601B2 (en) | 2008-02-28 | 2023-11-28 | Memory Technologies Llc | Extended utilization area for a memory device |
US10540094B2 (en) | 2008-02-28 | 2020-01-21 | Memory Technologies Llc | Extended utilization area for a memory device |
US11550476B2 (en) | 2008-02-28 | 2023-01-10 | Memory Technologies Llc | Extended utilization area for a memory device |
US11494080B2 (en) | 2008-02-28 | 2022-11-08 | Memory Technologies Llc | Extended utilization area for a memory device |
US11182079B2 (en) | 2008-02-28 | 2021-11-23 | Memory Technologies Llc | Extended utilization area for a memory device |
US8212429B2 (en) | 2008-02-29 | 2012-07-03 | Panasonic Corporation | Interface device for host device, interface device for slave device, host device, slave device, communication system and interface voltage switching method |
US8207638B2 (en) | 2008-02-29 | 2012-06-26 | Panasonic Corporation | Interface device for host device, interface device for slave device, host device, slave device, communication system and interface voltage switching method |
US8067861B2 (en) | 2008-02-29 | 2011-11-29 | Panasonic Corporation | Interface device for host device, interface device for slave device, host device, slave device, communication system and interface voltage switching method |
US8296597B2 (en) | 2008-08-22 | 2012-10-23 | Asustek Computer Inc. | Computer system capable of dynamically modulating operation voltage and frequency of CPU |
US10983697B2 (en) | 2009-06-04 | 2021-04-20 | Memory Technologies Llc | Apparatus and method to share host system RAM with mass storage memory RAM |
US11775173B2 (en) | 2009-06-04 | 2023-10-03 | Memory Technologies Llc | Apparatus and method to share host system RAM with mass storage memory RAM |
US11733869B2 (en) | 2009-06-04 | 2023-08-22 | Memory Technologies Llc | Apparatus and method to share host system RAM with mass storage memory RAM |
JP2013533548A (en) * | 2010-06-21 | 2013-08-22 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | Management of multiple operating points for stable virtual frequency |
US11797180B2 (en) | 2012-01-26 | 2023-10-24 | Memory Technologies Llc | Apparatus and method to provide cache move with non-volatile mass memory system |
US10877665B2 (en) | 2012-01-26 | 2020-12-29 | Memory Technologies Llc | Apparatus and method to provide cache move with non-volatile mass memory system |
US11226771B2 (en) | 2012-04-20 | 2022-01-18 | Memory Technologies Llc | Managing operational state data in memory module |
US11782647B2 (en) | 2012-04-20 | 2023-10-10 | Memory Technologies Llc | Managing operational state data in memory module |
US11237614B2 (en) * | 2012-08-31 | 2022-02-01 | Intel Corporation | Multicore processor with a control register storing an indicator that two or more cores are to operate at independent performance states |
US20190317585A1 (en) * | 2012-08-31 | 2019-10-17 | Intel Corporation | Configuring Power Management Functionality In A Processor |
US11023142B2 (en) | 2013-12-12 | 2021-06-01 | Memory Technologies Llc | Channel optimized storage modules |
US11016678B2 (en) | 2013-12-12 | 2021-05-25 | Memory Technologies Llc | Channel optimized storage modules |
US11809718B2 (en) | 2013-12-12 | 2023-11-07 | Memory Technologies Llc | Channel optimized storage modules |
US10001831B2 (en) | 2014-01-31 | 2018-06-19 | Hewlett-Packard Development Company, L.P. | Determination of a zero watt state for implementation |
US9921618B2 (en) | 2015-12-24 | 2018-03-20 | Intel Corporation | Cooling solution for a dock |
US11073876B2 (en) | 2015-12-24 | 2021-07-27 | Intel Corporation | Cooling solution for a dock |
WO2017112064A1 (en) * | 2015-12-24 | 2017-06-29 | Intel Corporation | Cooling solutions for a dock |
US10452108B2 (en) | 2015-12-24 | 2019-10-22 | Intel Corporation | Cooling solution for a performance dock |
CN110476137A (en) * | 2018-03-13 | 2019-11-19 | 三菱电机株式会社 | Information process unit |
WO2020205154A1 (en) * | 2019-03-29 | 2020-10-08 | Intel Corporation | Input voltage protection |
WO2023125636A1 (en) * | 2021-12-30 | 2023-07-06 | 华为技术有限公司 | Frequency adjustment method and related device |
Also Published As
Publication number | Publication date |
---|---|
KR20020050270A (en) | 2002-06-26 |
JP2003514296A (en) | 2003-04-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2001035200A1 (en) | Dynamically adjusting a processor's operational parameters according to its environment | |
US9471121B2 (en) | Microprocessor based power management system architecture | |
US6888332B2 (en) | Computer system and method of controlling rotation speed of cooling fan | |
US6347379B1 (en) | Reducing power consumption of an electronic device | |
US5630143A (en) | Microprocessor with externally controllable power management | |
US7647513B2 (en) | Method and apparatus for improving responsiveness of a power management system in a computing device | |
US6446213B1 (en) | Software-based sleep control of operating system directed power management system with minimum advanced configuration power interface (ACPI)-implementing hardware | |
EP1228413B1 (en) | Sleep state transitioning | |
US6272642B2 (en) | Managing a system's performance state | |
EP0708406B1 (en) | Integrated processor systems for portable information devices | |
US6754837B1 (en) | Programmable stabilization interval for internal stop grant state during which core logic is supplied with clocks and power to minimize stabilization delay | |
US7506190B2 (en) | Thermal and power management for computer systems | |
US5632037A (en) | Microprocessor having power management circuitry with coprocessor support | |
US20020138778A1 (en) | Controlling CPU core voltage to reduce power consumption | |
US9128703B1 (en) | Processor that transitions to an idle mode when no task is scheduled to execute and further enters a quiescent doze mode or a wait mode depending on the value of a reference counter | |
Fleischmann | Longrun power management | |
WO2001027728A1 (en) | Minimizing power consumption during sleep modes by using minimum core voltage necessary to maintain system state | |
WO2001065345A1 (en) | Power management for a microcontroller | |
WO1995031764A1 (en) | Method and apparatus for thermal management in a computer system | |
EP2735936A2 (en) | Power control system and power control method | |
EP1481311A2 (en) | Method and apparatus for minimising power dissipation in a multiprocessor system | |
US6694442B2 (en) | Method for saving power in a computer by idling system controller and reducing frequency of host clock signal used by system controller | |
WO2006071661A1 (en) | Audio noise mitigation for power state transitions | |
EP2791758A1 (en) | Implementing a power off state in a computing device | |
EP0828212B1 (en) | Microprocessor with hardware controlled power management and selectable input/output control pins and method therefor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): JP KR |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH CY DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
DFPE | Request for preliminary examination filed prior to expiration of 19th month from priority date (pct application filed before 20040101) | ||
ENP | Entry into the national phase |
Ref country code: JP Ref document number: 2001 536668 Kind code of ref document: A Format of ref document f/p: F |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1020027006012 Country of ref document: KR |
|
WWP | Wipo information: published in national office |
Ref document number: 1020027006012 Country of ref document: KR |
|
122 | Ep: pct application non-entry in european phase | ||
WWW | Wipo information: withdrawn in national office |
Ref document number: 1020027006012 Country of ref document: KR |