JP2000039937A - Computer system and power save control method thereof - Google Patents
Computer system and power save control method thereofInfo
- Publication number
- JP2000039937A JP2000039937A JP10206637A JP20663798A JP2000039937A JP 2000039937 A JP2000039937 A JP 2000039937A JP 10206637 A JP10206637 A JP 10206637A JP 20663798 A JP20663798 A JP 20663798A JP 2000039937 A JP2000039937 A JP 2000039937A
- Authority
- JP
- Japan
- Prior art keywords
- cpu
- state
- computer system
- sleep state
- sleep
- 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.)
- Pending
Links
Classifications
-
- 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
Landscapes
- Power Sources (AREA)
- Microcomputers (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【課題】システム性能の低下を最小限に抑えつつ十分な
パワーセーブを実現できるようにし、バッテリによる動
作時間を延ばす。
【解決手段】CPU11がスリープ状態に維持されてい
る状態でウェイクアップイベントが発生したとき、CP
U11の動作速度はすぐにスリープ状態移行前の動作速
度に復帰されるのではなく、CPUスロットリング制御
回路152によるスロットリング制御により、所定の時
間間隔で段階的に低レベルから所定の高レベルにまで徐
々に上昇される。これにより、CPU11の動作速度を
すぐにスリープ状態移行前の動作速度に復帰させる場合
に比し、CPUの電力消費を少なくすることが可能とな
り、バッテリ動作時間を延ばすことができる。
(57) [Summary] [PROBLEMS] To enable a sufficient power saving to be realized while minimizing a decrease in system performance, and to extend an operation time by a battery. Kind Code: A1 When a wake-up event occurs while the CPU is kept in a sleep state, a CP
The operation speed of U11 is not immediately returned to the operation speed before the transition to the sleep state, but is gradually changed from a low level to a predetermined high level at predetermined time intervals by throttling control by the CPU throttling control circuit 152. It is gradually raised until. This makes it possible to reduce the power consumption of the CPU 11 and to extend the battery operation time, as compared to the case where the operation speed of the CPU 11 is immediately returned to the operation speed before the transition to the sleep state.
Description
【0001】[0001]
【発明の属する技術分野】本発明はバッテリ駆動可能な
パーソナルコンピュータなどのコンピュータシステムに
関し、特にそのパワーセーブのための機能を持つコンピ
ュータシステムに関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a computer system such as a battery-powered personal computer, and more particularly to a computer system having a power saving function.
【0002】[0002]
【従来の技術】近年、携行が容易でバッテリにより動作
可能なラップトップタイプまたはノートブックタイプの
パーソナルコンピュータ(PC)が種々開発されてい
る。この種のPCに於いては、CPUの高性能化が進め
られており、これによってユーザは快適な使用環境を容
易に手にすることが可能になってきている。2. Description of the Related Art In recent years, various laptop or notebook personal computers (PCs) which are easy to carry and can be operated by a battery have been developed. In this type of PC, the performance of the CPU has been improved, and this has made it possible for the user to easily obtain a comfortable use environment.
【0003】ところが、CPUの高性能化に伴い、CP
Uの消費電力も大きくなり、これによりPC全体の電力
消費量の増大およびバッテリ動作時間の低下などの問題
が生じている。[0003] However, with the advancement of CPU performance, CP
The power consumption of U also increases, which causes problems such as an increase in power consumption of the entire PC and a reduction in battery operating time.
【0004】そこで、最近では、各種のパワーマネージ
メント技術が開発され始めている。PCで用いられてい
る代表的なパワーマネージメント技術には、LCDの輝
度制御、HDDの自動モータオフ、およびCPUスリー
プ制御などがある。Therefore, recently, various power management technologies have begun to be developed. Typical power management techniques used in PCs include LCD brightness control, HDD automatic motor off, and CPU sleep control.
【0005】しかし、このような従来のパワーマネージ
メントは、パワーセーブ機能(LCDの輝度制御、HD
Dの自動モータオフ、CPUスリープ制御など)を、使
用するか、使用しないかをユーザ設定などによって予め
固定的に決めて行うものであった。However, such conventional power management has a power saving function (LCD brightness control, HD control, etc.).
D, automatic motor-off, CPU sleep control, etc.) is fixedly determined in advance by user setting as to whether to use or not.
【0006】これは、パワーセーブとシステム性能との
バランスを取る上での悩みの種であり、システムとして
の性能の障害となるものであった。つまり、パワーセー
ブ機能を高めるためには、代わりにシステムの性能を常
に(バッテリー残量やシステムの稼働状況等に関係な
く)低く抑えることを容認しなくてはならず、逆に、シ
ステム性能を高く保つと、今度は、パワーセーブ機能を
ある程度諦めなくてはならなかった。[0006] This is a source of trouble in balancing power saving and system performance, and has been a hindrance to the performance of the system. In other words, in order to enhance the power saving function, it is necessary to allow the system performance to always be kept low (regardless of the remaining battery power and the operating status of the system). When I kept it high, I had to give up some power savings.
【0007】また、従来の典型的なCPUスリープ制御
では、アイドル時にCPUステートを低消費電力のスリ
ープ状態に移行し、割り込みなどのウェイクイベントの
発生時にCPUステートを基の状態に復帰させるという
制御が行われる。この場合、ウェイクイベントが一旦発
生すると、CPUはすぐにスリープ状態移行前の性能に
復帰される。このため、たとえばユーザによってキーボ
ードやマウス操作が一度行われただけで、CPUは、最
大性能あるいはそれに近い予め決められた性能に復帰さ
れてしまい、そしてその性能は再びアイドルが検出され
るまで維持される。したがって、特にシステム稼働率が
比較的低い場合においては、多くの無駄な電力が消費さ
れることになる。In the conventional typical CPU sleep control, control is performed such that the CPU state is shifted to a low power consumption sleep state when idle, and the CPU state is returned to the original state when a wake event such as an interrupt occurs. Done. In this case, once the wake event occurs, the CPU is immediately returned to the performance before the transition to the sleep state. Thus, for example, once a user performs a keyboard or mouse operation, the CPU returns to the maximum performance or a predetermined performance close thereto, and the performance is maintained until the idle is detected again. You. Therefore, especially when the system operation rate is relatively low, a lot of wasteful power is consumed.
【0008】また、スリープ状態として使用されるCP
Uステートについても常に固定的に決められていた。す
なわち、ACPI(Advanced Configu
ration and Power Manageme
nt InterfaceSpecificatio
n)仕様では、CPUパワーステートとして、通常の動
作状態として使用されるC0ステートの他に、スリープ
状態として使用可能なC1〜C3の3つのステートが定
義されている。これらパワーステートC1〜C3は、C
0ステートへの復帰までのレイテンシおよびスリープの
深さが異なっており、C1、C2、C3の順で消費電力
は小さくなり、C0ステートへの復帰までのレイテンシ
はC1、C2、C3の順で大きくなる。Also, a CP used as a sleep state
The U state has always been fixed. That is, ACPI (Advanced Config)
ratio and Power Manageme
nt InterfaceSpecificatio
In the n) specification, three states C1 to C3 usable as a sleep state are defined as the CPU power state, in addition to the C0 state used as a normal operation state. These power states C1 to C3 are C
Latency to return to the 0 state and sleep depth are different, and power consumption decreases in the order of C1, C2, and C3, and latency to return to the C0 state increases in the order of C1, C2, and C3. Become.
【0009】しかし、従来では、ACPI−OSのない
環境下では、スリープ状態としてC1〜C3の中のどの
ステートを使用するかは、システムによって予め固定的
に規定されており、システムの動作状態などに応じて使
用するパワーステートを動的に切り替えるという制御は
行われてない。このため、適切なCPUパワーステート
を選択することができず、より深いスリープ状態に移行
可能な場合であっても浅いスリープしか利用できないな
どの問題があった。However, conventionally, in an environment without an ACPI-OS, which state among C1 to C3 to use as a sleep state is fixedly defined in advance by the system, and the operating state of the system and the like are defined. There is no control to dynamically switch the power state to be used according to. For this reason, there has been a problem that an appropriate CPU power state cannot be selected, and only a shallow sleep can be used even when a shift to a deeper sleep state is possible.
【0010】[0010]
【発明が解決しようとする課題】上述のように、従来で
は、パワーセーブを行うためにはシステムの性能を固定
的に低下させる必要があり、その為、システム性能とパ
ワーセーブとをバランス良く両立させることは困難であ
った。特に、CPUスリープ制御においては、ウェイク
イベントの発生に応答してCPU性能がすぐにスリープ
状態移行前の高性能の状態に復帰されてしまい、無駄な
電力が消費されることがあった。さらに、アイドル時に
移行させるCPUスリープ状態の深さも常に固定されて
おり、十分なパワーセーブを実現することは困難であっ
た。As described above, conventionally, in order to perform power saving, it is necessary to decrease the performance of the system in a fixed manner. Therefore, the system performance and the power saving are well balanced. It was difficult to do. In particular, in the CPU sleep control, in response to the occurrence of the wake event, the CPU performance is immediately returned to the high performance state before the transition to the sleep state, and wasteful power may be consumed. Further, the depth of the CPU sleep state to be shifted at the time of idling is always fixed, and it has been difficult to realize sufficient power saving.
【0011】本発明はこのような点に鑑みてなされたも
のであり、システム性能の低下を最小限に抑えつつ十分
なパワーセーブを実現できるようにし、バッテリによる
動作時間を大幅に延長することが可能なコンピュータシ
ステムおよびそのパワーセーブ制御方法を提供すること
を目的とする。SUMMARY OF THE INVENTION The present invention has been made in view of the above points, and it is possible to realize a sufficient power saving while minimizing a decrease in system performance, and to greatly extend an operation time by a battery. It is an object of the present invention to provide a possible computer system and a power saving control method thereof.
【0012】[0012]
【課題を解決するための手段】上述の課題を解決するた
め、本発明は、バッテリ駆動可能なコンピュータシステ
ムにおいて、前記コンピュータシステムのアイドル時
に、前記コンピュータシステムを、動作状態からスリー
プ状態に移行させるスリープ手段と、所定のウェイクア
ップイベントの発生に応答して前記コンピュータシステ
ムが前記スリープ状態から前記動作状態に復帰したと
き、前記コンピュータシステムの処理速度を低レベルか
ら所定の高レベルにまで段階的に上昇させる処理速度制
御手段とを具備することを特徴とする。SUMMARY OF THE INVENTION In order to solve the above-mentioned problems, the present invention relates to a battery-operable computer system, wherein the computer system transitions from an operating state to a sleep state when the computer system is idle. Means for increasing a processing speed of the computer system from a low level to a predetermined high level when the computer system returns from the sleep state to the operation state in response to occurrence of a predetermined wake-up event. And processing speed control means for causing the processing speed to be controlled.
【0013】前記スリープ手段としては、前記コンピュ
ータシステムのCPUを、命令実行可能な動作状態か
ら、命令実行が停止される低消費電力のスリープ状態に
移行させるCPUスリープ手段を使用することが好まし
い。また、前記処理速度制御手段としては、前記CPU
が前記スリープ状態から前記動作状態に復帰したとき、
前記CPUの動作速度を低レベルから所定の高レベルに
まで所定の時間間隔で段階的に上昇させるCPU速度制
御手段を使用することが好ましい。It is preferable to use a CPU sleep unit for shifting the CPU of the computer system from an operation state in which the instruction can be executed to a low power consumption sleep state in which the instruction execution is stopped. Further, the processing speed control means includes the CPU
When returning from the sleep state to the operation state,
It is preferable to use CPU speed control means for increasing the operation speed of the CPU stepwise from a low level to a predetermined high level at predetermined time intervals.
【0014】このコンピュータシステムにおいては、例
えばCPUがスリープ状態に維持されている状態でウェ
イクアップイベントが発生したとき、CPUの動作速度
はすぐにスリープ状態移行前の動作速度に復帰されるの
ではなく、段階的に低レベルから所定の高レベルにまで
上昇される。これにより、システムの処理速度は、段階
的に上昇され、処理速度をすぐにスリープ状態移行前の
処理速度に復帰させる場合に比し、電力消費を少なくす
ることが可能となる。また、動作状態への復帰タイミン
グ自体の遅れはない。したがって、スリープ状態の期間
中にたとえばユーザによってキーボードやマウスの操作
が行われた場合でも、即座にそれに対応する処理を実行
することができる。また、ある一定期間後にはシステム
処理性能は基の性能に復帰される。このため、過大なC
PU負荷を伴う処理などが突然要求されない限りは、ユ
ーザによる体感速度が低下されるといった不具合は一切
生じない。よって、システム性能の低下を最小限に抑え
つつ十分なパワーセーブを実現することができ、バッテ
リによる動作時間を大幅に延長することが可能となる。In this computer system, for example, when a wake-up event occurs while the CPU is kept in the sleep state, the operation speed of the CPU is not immediately restored to the operation speed before the transition to the sleep state. , From a low level to a predetermined high level. As a result, the processing speed of the system is gradually increased, and power consumption can be reduced as compared with a case where the processing speed is immediately returned to the processing speed before the transition to the sleep state. Further, there is no delay in the return timing itself to the operation state. Therefore, even if, for example, the user operates the keyboard or the mouse during the sleep state, it is possible to immediately execute the corresponding process. After a certain period, the system processing performance returns to the original performance. For this reason, excessive C
As long as processing involving a PU load is not suddenly requested, there is no problem such as a decrease in the perceived speed of the user. Therefore, a sufficient power saving can be realized while minimizing the deterioration of the system performance, and the operation time by the battery can be greatly extended.
【0015】また、本発明は、前記CPUがスリープ状
態に維持されているアイドル期間と前記CPUが動作状
態に維持されているウェイク期間との比率に基づいて前
記コンピュータシステムの稼働率が所定のしきい値以下
であるか否かを検出する稼働率検出手段をさらに具備
し、前記CPU速度制御手段による前記段階的な動作速
度制御処理は、前記コンピュータシステムの稼働率が所
定のしきい値以下であることが検出されたときにその実
行が許可されることを特徴とする。Further, according to the present invention, the operation rate of the computer system is determined based on a ratio between an idle period in which the CPU is maintained in a sleep state and a wake period in which the CPU is maintained in an operation state. Operating rate detecting means for detecting whether or not the operating rate is equal to or less than a threshold value, wherein the stepwise operating speed control processing by the CPU speed controlling means is performed when the operating rate of the computer system is equal to or less than a predetermined threshold value. The execution is permitted when it is detected that there is something.
【0016】これにより、システム稼働率が比較的低い
場合にのみ前述の段階的な動作速度制御処理を実行でき
るようになり、システム性能とパワーセーブとのバラン
スをより良好に保つことが可能となる。This makes it possible to execute the above-mentioned stepwise operation speed control processing only when the system operation rate is relatively low, and to maintain a better balance between system performance and power saving. .
【0017】また、前記CPU速度制御手段は、所定の
レジスタに設定されたデューティ制御情報に基づいて、
前記CPUのクロックを制御するためのストップクロッ
ク信号のデューティ比を複数段階に可変設定して前記C
PUに供給するCPUスロットリング制御手段と、前記
デューティ制御情報の更新要求を示す割り込み信号を所
定の時間間隔で前記CPUに発生する手段と、前記CP
Uの動作速度が低レベルから所定の高レベルにまで段階
的に上昇されるように、前記割り込み信号の発生の度に
前記デューティ制御情報を更新する手段とから構成する
ことが好ましい。[0017] The CPU speed control means may be configured to perform a control based on duty control information set in a predetermined register.
The duty ratio of the stop clock signal for controlling the clock of the CPU is variably set in a plurality of stages, and
CPU throttling control means for supplying to the PU; means for generating an interrupt signal indicating a request for updating the duty control information to the CPU at predetermined time intervals;
Preferably, the duty control information is updated every time the interrupt signal is generated so that the operating speed of U is gradually increased from a low level to a predetermined high level.
【0018】このようにCPUへのハードウェア割り込
み信号を利用して、動作状態におけるCPUの性能を段
階的に上昇させることにより、実行中のOSやアプリケ
ーションに影響を与えることなく、CPU性能を効率よ
く段階的に上昇させることが可能となる。As described above, by using the hardware interrupt signal to the CPU to gradually increase the performance of the CPU in the operating state, the CPU performance can be efficiently reduced without affecting the OS or application being executed. It is possible to raise it step by step.
【0019】また、CPUが、第1のスリープ状態と、
この第1のスリープ状態よりも低消費電力の第2のスリ
ープ状態とを有する場合には、前記CPUスリープ手段
は、前記コンピュータシステムの状態が、前記第2のス
リープ状態への移行が許可される所定の条件を満足して
いるか否かを判別する手段と、前記条件が満足されてい
るとき前記CPUを前記第2のスリープ状態に移行さ
せ、前記条件が満足されないとき前記CPUを前記第1
のスリープ状態に移行させる手段とを含む含むことを特
徴とする。[0019] Further, the CPU has a first sleep state,
In the case of having the second sleep state with lower power consumption than the first sleep state, the CPU sleep means is allowed to shift the state of the computer system to the second sleep state. Means for determining whether or not a predetermined condition is satisfied; and when the condition is satisfied, the CPU is shifted to the second sleep state; and when the condition is not satisfied, the CPU is switched to the first sleep state.
Means for shifting to a sleep state.
【0020】このようにコンピュータシステムの状態に
応じて移行すべきスリープ状態を選択することにより、
より適切なスリープ状態を選択できるようになる。さら
に、前記第1のスリープ状態は、前記CPUはキャッシ
ュの整合性を維持することが可能な状態であり、前記第
2のスリープ状態は、前記CPUはキャッシュの整合性
を維持することが不可能な状態である場合においては、
前記コンピュータシステムにおいて前記CPU以外の他
のデバイスがバスマスタ動作しているか否かを、前記第
2のスリープ状態への移行が許可される所定の条件とし
て利用することができる。このように、バスマスタ動作
しているデバイスが存在しないことを条件に第2のスリ
ープ状態に移行することにより、バスマスタ動作してい
るデバイスによる主メモリの書き換えによって主メモリ
とCPUキャッシュの不整合が生じるといった問題の発
生を防止することが出来る。As described above, by selecting the sleep state to be shifted according to the state of the computer system,
A more appropriate sleep state can be selected. Further, the first sleep state is a state in which the CPU can maintain cache coherency, and the second sleep state is a state in which the CPU cannot maintain cache coherence. Is in a state of
Whether or not a device other than the CPU is operating as a bus master in the computer system can be used as a predetermined condition under which the transition to the second sleep state is permitted. As described above, by shifting to the second sleep state on condition that there is no device performing the bus master operation, rewriting of the main memory by the device performing the bus master causes inconsistency between the main memory and the CPU cache. Can be prevented.
【0021】[0021]
【発明の実施の形態】以下、図面を参照して本発明の実
施形態を説明する。図1には、本発明の一実施例に係わ
るコンピュータシステムの構成が示されている。このコ
ンピュータシステムはバッテリ駆動可能なノートブック
タイプのパーソナルコンピュータ(PC)であり、AC
アダプタ181を介して外部電源が供給されている場合
にはその外部電源によって動作すると共に、バッテリ1
82の充電が行われる。一方、モバイル環境で使用され
る場合など、PC本体にACアダプタ181が接続され
てない状態においては、PCはバッテリ182からの電
源によって動作する。Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 shows a configuration of a computer system according to an embodiment of the present invention. This computer system is a notebook-type personal computer (PC) that can be driven by a battery.
When external power is supplied through the adapter 181, the external power supply operates and the battery 1
82 is charged. On the other hand, when the AC adapter 181 is not connected to the PC main body, such as when used in a mobile environment, the PC operates on the power from the battery 182.
【0022】このPC本体には、図示のように、プロセ
ッサバス1、PCIバス2、ISAバス3、CPU1
1、ホスト−PCIブリッジ12、主メモリ13、表示
コントローラ14、PCI−ISAブリッジ15、I/
Oコントローラ16、BIOS−ROM17、電源コン
トローラ18、およびLCD輝度制御ロジック19など
が設けられている。As shown, a processor bus 1, a PCI bus 2, an ISA bus 3, a CPU 1
1, host-PCI bridge 12, main memory 13, display controller 14, PCI-ISA bridge 15, I /
An O controller 16, a BIOS-ROM 17, a power controller 18, an LCD brightness control logic 19, and the like are provided.
【0023】CPU11としては、例えば、米インテル
社により製造販売されているマイクロプロセッサ“Pe
ntium”などが使用される。CPU11はPLL回
路を内蔵しており、このPLL回路は外部クロックCL
Kに基づいてその外部クロックCLKと同一またはそれ
よりも高速の内部クロックCLK2を生成する。このC
PU11は、ストップクロック信号STPCLK#によ
ってそのクロック状態が制御されるように構成されてあ
り、ストップクロック信号STPCLK#によって、3
つのクロックステート、つまり、ノーマルステート(N
ormal State)、ストップグラントステート
(Stop Grant State)、およびストッ
プクロックステート(STOP Clock Stat
e)を有している。As the CPU 11, for example, a microprocessor "Pe" manufactured and sold by Intel Corporation of the United States is used.
The CPU 11 has a built-in PLL circuit, which is connected to an external clock CL.
Based on K, an internal clock CLK2 equal to or faster than the external clock CLK is generated. This C
The PU 11 is configured so that its clock state is controlled by the stop clock signal STPCLK #.
Clock states, namely the normal state (N
normal State, Stop Grant State, and Stop Clock State
e).
【0024】ノーマルステートはCPU11の通常の動
作ステートであり、命令はこのノーマルステートにおい
て実行される。このノーマルステートは電力消費の最も
多いステートであり、その消費電流は〜700mA程度
である。The normal state is a normal operation state of the CPU 11, and an instruction is executed in this normal state. This normal state is the state that consumes the most power, and its current consumption is about 700 mA.
【0025】最も電力消費の少ないのはストップクロッ
クステートであり、その消費電流は〜30μA程度であ
る。このストップクロックステートにおいては、命令の
実行が停止されるだけでなく、外部クロックCLKおよ
び内部クロックCLK2も停止されている。The stop clock state consumes the least amount of power, and its current consumption is about 30 μA. In this stop clock state, not only the execution of the instruction is stopped, but also the external clock CLK and the internal clock CLK2 are stopped.
【0026】ストップグラントステートは、ノーマルス
テートとストップクロックステートの中間の動作ステー
トであり、その消費電流は20〜55mA程度と比較的
少ない。ストップグラントステートにおいては、命令は
実行されない。また、外部クロックCLKおよび内部ク
ロックCLK2は共にランニング状態であるが、CPU
内部ロジック(CPUコア)への内部クロックCLK2
の供給は禁止される。このストップグラントステートは
外部クロックCLKの停止可能なステートであり、この
ストップグラントステートにおいて外部クロックCLK
を停止すると、CPU11はストップグラントステート
からストップクロックステートに移行する。The stop grant state is an operation state intermediate between the normal state and the stop clock state, and its current consumption is relatively small, about 20 to 55 mA. In the stop grant state, no instruction is executed. The external clock CLK and the internal clock CLK2 are both in a running state,
Internal clock CLK2 to internal logic (CPU core)
Supply is forbidden. This stop grant state is a state in which the external clock CLK can be stopped. In this stop grant state, the external clock CLK is stopped.
Is stopped, the CPU 11 shifts from the stop grant state to the stop clock state.
【0027】ノーマルステートとストップグラントステ
ート間の遷移は、ストップクロック(STPCLK#)
信号によって高速に行うことができる。すなわち、ノー
マルステートにおいてCPU11に供給されるSTPC
LK#信号がイネーブルつまりアクティブステートに設
定されると、CPU11は、現在実行中の命令が完了
後、次の命令を実行すること無く、内部のパイプライン
をすべて空にしてから、ストップグラントサイクルを実
行して、ノーマルステートからストップグラントステー
トに移行する。一方、ストップグラントステートにおい
てSTPCLK#信号がディスエーブルつまりインアク
ティブステートに設定されると、CPU11は、ストッ
プグラントステートからノーマルステートに移行し、次
の命令の実行を再開する。The transition between the normal state and the stop grant state is performed by a stop clock (STPCLK #).
It can be performed at high speed by a signal. That is, the STPC supplied to the CPU 11 in the normal state
When the LK # signal is enabled, that is, set to the active state, the CPU 11 empties the internal pipeline after executing the currently executed instruction without executing the next instruction, and then executes the stop grant cycle. Execute and shift from the normal state to the stop grant state. On the other hand, when the STPCLK # signal is disabled or set to the inactive state in the stop grant state, the CPU 11 shifts from the stop grant state to the normal state and resumes execution of the next instruction.
【0028】また、ストップグラントステートからスト
ップクロックステートへの移行は、外部クロックCLK
を停止することによって瞬時に行われる。ストップクロ
ックステートにおいてCPU11への外部クロックCL
Kの供給が再開されると、1ms後にCPU11はスト
ップグラントステートに移行する。このようにストップ
クロックステートからの復帰には時間がかかる問題があ
る。The transition from the stop grant state to the stop clock state is performed by the external clock CLK.
Is done instantly by stopping. The external clock CL to the CPU 11 in the stop clock state
When the supply of K is restarted, the CPU 11 shifts to the stop grant state after 1 ms. As described above, there is a problem that it takes time to return from the stop clock state.
【0029】以上のように、ストップグラントステート
は、ノーマルステートに比べ非常にローパワーであり、
且つSTPCLK#信号によってノーマルステート、つ
まり命令実行状態に高速に復帰できるという特徴を持っ
ている。As described above, the stop grant state has much lower power than the normal state,
In addition, it has a feature that it can be returned to a normal state, that is, an instruction execution state at a high speed by the STPCLK # signal.
【0030】このため、本システムでは、CPU動作速
度を多段階で制御するCPUスロットリング制御機能
を、STPCLK#信号によって、ストップグラントス
テートとノーマルステートとを周期的に切り替えること
によって実現している。この場合、ストップグラントス
テートとノーマルステートとのデューティ比によって、
CPU性能が決定される。For this reason, in this system, the CPU throttling control function for controlling the CPU operating speed in multiple stages is realized by periodically switching between the stop grant state and the normal state by the STPCLK # signal. In this case, depending on the duty ratio between the stop grant state and the normal state,
CPU performance is determined.
【0031】また、CPU11とホスト−PCIブリッ
ジ12の機能により、CPU11はACPI仕様で定義
された前述の4つのCPUパワーステートC0〜C3を
有している。The CPU 11 has the above-described four CPU power states C0 to C3 defined by the ACPI specification by the functions of the CPU 11 and the host-PCI bridge 12.
【0032】パワーステートC0は、命令実行のための
通常の動作状態(ウェイク状態)として使用されるステ
ートである。CPU動作速度を多段階で制御するCPU
スロットリング制御機能は、このパワーステートC0内
で実行される。The power state C0 is a state used as a normal operation state (wake state) for executing an instruction. CPU that controls CPU operation speed in multiple stages
The throttling control function is executed in the power state C0.
【0033】パワーステートC1〜C3は、アイドル時
にCPU11をスリープ状態に設定するために利用され
るステートであり、C0ステートへの復帰までのレイテ
ンシおよびスリープの深さが互いに異なっている。C
1、C2、C3の順で消費電力は小さくなり、C0ステ
ートへの復帰までのレイテンシはC1、C2、C3の順
で大きくなる。C1、C2、C3では、命令は実行され
ない。The power states C1 to C3 are used to set the CPU 11 to a sleep state during idle time, and have different latencies until returning to the C0 state and sleep depths. C
The power consumption decreases in the order of 1, C2, and C3, and the latency until returning to the C0 state increases in the order of C1, C2, and C3. No instruction is executed in C1, C2, and C3.
【0034】C2ではバススヌープ動作によってキャッ
シュの整合性が維持されるが、C3ではスヌープ動作は
何ら実行されず、キャッシュの整合性は維持されない。
ACPI仕様で規定されているCPUパワーステートC
0〜C3とグローバルシステムステートG0〜G2との
関係は図5の通りである。In C2, the cache coherency is maintained by the bus snoop operation, but in C3, no snoop operation is performed and the cache coherency is not maintained.
CPU power state C specified in ACPI specification
The relationship between 0 to C3 and the global system states G0 to G2 is as shown in FIG.
【0035】G0はシステムが動作している状態(つま
りシステムの電源が入っており、ソフトウェアが実行中
の状態)であり、このG0ステートの中でCPU11の
パワーステートC0〜C3は動的に変化される。G0 is a state where the system is operating (that is, a state where the power of the system is turned on and software is being executed). In this G0 state, the power states C0 to C3 of the CPU 11 change dynamically. Is done.
【0036】本実施形態では、OSによってシステムア
イドルが検出された時にCPU11を移行すべきCPU
スリープステートとして、C2およびC3が選択的に利
用される。In the present embodiment, when the system idle is detected by the OS, the CPU 11 to which the CPU 11 is to be shifted is described.
As the sleep state, C2 and C3 are selectively used.
【0037】C0からC2への移行には、ホスト−PC
Iブリッジ12のP_LVL2レジスタ122が用いら
れる。つまり、CPU11によるP_LVL2レジスタ
122のリードによって、C0からC2へのパワーステ
ートの切替が引き起こされる。C2内で、ハードウェア
割り込み(IRQ)やCPUリセットなどのウェイクイ
ベントが発生すると、CPUパワーステートは自動的に
C2からC0に復帰する。To shift from C0 to C2, a host-PC
The P_LVL2 register 122 of the I bridge 12 is used. That is, the reading of the P_LVL2 register 122 by the CPU 11 causes switching of the power state from C0 to C2. When a wake event such as a hardware interrupt (IRQ) or a CPU reset occurs in C2, the CPU power state automatically returns from C2 to C0.
【0038】C0からC3への移行には、ホスト−PC
Iブリッジ12のP_LVL3レジスタ123が用いら
れる。つまり、CPU11によるP_LVL3レジスタ
123のリードによって、C0からC3へのパワーステ
ートの切替が引き起こされる。また、C0からC3への
移行の際には、ARB_DISレジスタ124に“1”
がセットされ、PCIアービタ121によるPCIバス
2のバスアービトレーション動作がディスエーブルされ
る。これにより、あらたなバスアクセス要求は許可され
ない。C3内で、ハードウェア割り込みやCPUリセッ
トなどのウェイクイベントが発生すると、CPUパワー
ステートは自動的にC3からC0に復帰する。The transition from C0 to C3 requires a host-PC
The P_LVL3 register 123 of the I bridge 12 is used. That is, the reading of the P_LVL3 register 123 by the CPU 11 causes the switching of the power state from C0 to C3. In addition, when shifting from C0 to C3, “1” is stored in the ARB_DIS register 124.
Is set, and the bus arbitration operation of the PCI bus 2 by the PCI arbiter 121 is disabled. As a result, a new bus access request is not permitted. When a wake event such as a hardware interrupt or a CPU reset occurs in C3, the CPU power state automatically returns from C3 to C0.
【0039】G1はシステム全体のスリープステートで
あり、G1ステートには、消費電力の異なるシステムス
テートS1〜Sが定義されている。本システムでは、G
1は主にサスペンドやハイバネーション時のシステムス
テートとして利用されている。G1 is a sleep state of the entire system. In the G1 state, system states S1 to S having different power consumptions are defined. In this system, G
Reference numeral 1 is mainly used as a system state during suspend or hibernation.
【0040】G2はオフ状態、つまり全てのソフトウェ
アの実行は終了し、システムの電源が切られている状態
である。さらに、図1のCPU11は、次のようなシス
テム管理機能を備えている。G2 is in an off state, that is, a state in which execution of all software has been completed and the system has been turned off. Further, the CPU 11 of FIG. 1 has the following system management function.
【0041】すなわち、CPU11は、アプリケーショ
ンプログラムやOSなどのプログラムを実行するための
リアルモード、プロテクトモード、仮想86モードの
他、システム管理モード(SMM;System Ma
nagement mode)と称されるシステム管理
または電力管理専用のシステム管理プログラムを実行す
るための動作モードを有している。That is, the CPU 11 includes a real mode, a protect mode, a virtual 86 mode, and a system management mode (SMM; System Ma) for executing programs such as an application program and an OS.
The system has an operation mode for executing a system management program dedicated to system management or power management, which is referred to as “nagement mode”.
【0042】リアルモードは、最大で1Mバイトのメモ
リ空間をアクセスできるモードであり、セグメントレジ
スタで表されるベースアドレスからのオフセット値で物
理アドレスが決定される。プロテクトモードは1タスク
当たり最大4Gバイトのメモリ空間をアクセスできるモ
ードであり、ディスクプリタテーブルと称されるアドレ
スマッピングテーブルを用いてリニアアドレスが決定さ
れる。このリニアアドレスレスは、ページングによって
最終的に物理アドレスに変換される。仮想86モード
は、リアルモードで動作するように構成されたプログラ
ムをプロテクトモードで動作させるためのモードであ
り、リアルモードのプログラムはプロテクトモードにお
ける1つのタスクとして扱われる。The real mode is a mode in which a memory space of at most 1 Mbyte can be accessed, and a physical address is determined by an offset value from a base address represented by a segment register. The protect mode is a mode in which a maximum of 4 GB of memory space can be accessed per task, and a linear address is determined using an address mapping table called a descriptor table. This linear addressless is finally converted to a physical address by paging. The virtual 86 mode is a mode for operating a program configured to operate in the real mode in the protect mode, and a program in the real mode is treated as one task in the protect mode.
【0043】システム管理モード(SMM)は疑似リア
ルモードであり、このモードでは、ディスクプリタテー
ブルは参照されず、ページングも実行されない。システ
ム管理割込み(SMI;System Management Inter
rupt)がCPU11に発行された時、CPU11の動作
モードは、リアルモード、プロテクトモード、または仮
想86モードから、SMMにスイッチされる。SMMで
は、システム管理またはパワーセーブ制御専用のシステ
ム管理プログラムが実行される。The system management mode (SMM) is a pseudo real mode. In this mode, the descriptor table is not referred to and paging is not executed. System management interrupt (SMI; System Management Interrupter)
When (rupt) is issued to the CPU 11, the operation mode of the CPU 11 is switched from the real mode, the protect mode, or the virtual 86 mode to the SMM. In the SMM, a system management program dedicated to system management or power save control is executed.
【0044】SMIはマスク不能割込みNMIの一種で
あるが、通常のNMIやマスク可能割込みINTRより
も優先度の高い、最優先度の割り込みである。このSM
Iを発行することによって、システム管理プログラムと
して用意された種々のSMIサービスルーチンを、実行
中のアプリケーションプログラムやOS環境に依存せず
に起動することができる。このコンピュータシステムに
おいては、前述のCPUパワーステートの切り替えなど
のためにこのSMIを利用している。The SMI is a type of non-maskable interrupt NMI, but is the highest-priority interrupt having a higher priority than a normal NMI or maskable interrupt INTR. This SM
By issuing I, various SMI service routines prepared as a system management program can be started without depending on the application program being executed or the OS environment. In this computer system, the SMI is used for switching the CPU power state described above.
【0045】主メモリ13は、オペレーティングシステ
ム、処理対象のアプリケーションプログラム、およびア
プリケーションプログラムによって作成されたユーザデ
ータ等を格納する。CPU11がSMMに移行する時に
は、CPUステータス、つまりSMIが発生された時の
CPU11のレジスタ等が、主メモリ13の所定のアド
レス空間にマッピングされたSMRAMにスタック形式
でセーブされる。このSMRAMには、BIOS−RO
M17のシステム管理プログラムを呼び出すための命令
が格納されている。この命令は、CPU11がSMMに
入った時に最初に実行される命令であり、この命令実行
によってシステム管理プログラムに制御が移る。The main memory 13 stores an operating system, an application program to be processed, user data created by the application program, and the like. When the CPU 11 shifts to the SMM, the CPU status, that is, the registers and the like of the CPU 11 when the SMI is generated, are saved in the SMRAM mapped to a predetermined address space of the main memory 13 in a stack format. This SMRAM contains a BIOS-RO
Instructions for calling the M17 system management program are stored. This instruction is the first instruction to be executed when the CPU 11 enters the SMM, and the execution of this instruction transfers control to the system management program.
【0046】表示コントローラ14は、画像メモリ(V
RAM)141に描画された表示データを本PC本体に
設けられたLCD142および外部CRT143の一方
に、あるいは双方に表示する。この表示コントローラ1
4はPCIバス2のバスマスタとして動作するすること
ができる。LCD142の輝度は、LCD142のバッ
クライトの輝度を制御するLCD輝度制御ロジック19
によって制御される。The display controller 14 has an image memory (V
The display data drawn on the (RAM) 141 is displayed on one or both of the LCD 142 and the external CRT 143 provided in the PC main body. This display controller 1
4 can operate as a bus master of the PCI bus 2. The brightness of the LCD 142 is determined by the LCD brightness control logic 19 that controls the brightness of the backlight of the LCD 142.
Is controlled by
【0047】PCI−ISAブリッジ15は、PCIバ
ス2とISAバス3とをつなぐブリッジであり、PCI
バス2のバスマスタとして動作することができる。この
PCI−ISAブリッジ15には、SMI発生回路15
1、CPUスロットリング制御回路152、DMAコン
トローラ(DMAC)153などが設けられている。The PCI-ISA bridge 15 is a bridge connecting the PCI bus 2 and the ISA bus 3, and is a PCI-ISA bridge.
It can operate as a bus master of the bus 2. The PCI-ISA bridge 15 includes an SMI generation circuit 15
1, a CPU throttling control circuit 152, a DMA controller (DMAC) 153, and the like are provided.
【0048】SMI発生回路151はCPU11にSM
I信号を発生する。SMI信号の発生要因には、ソフト
ウェアSMI、I/OトラップSMI、電源スイッチ操
作などがある。ソフトウェアSMIは、ソフトウェアに
よってアクセス可能なダウンカウンタなどを利用して発
生される。つまり、ソフトウェアがSMI信号発生まで
の時間に相当する値をSMI発生回路151内のダウン
カウンタにセットすると、タイムアウト時にSMI信号
が発生される。I/OトラップSMIは、予め決められ
たI/Oアドレスを用いてINまたはOUT命令を実行
することによって引き起こされる。The SMI generation circuit 151 has the CPU 11
Generate an I signal. Causes of the generation of the SMI signal include a software SMI, an I / O trap SMI, and a power switch operation. The software SMI is generated using a down counter or the like accessible by software. That is, when the software sets a value corresponding to the time until the generation of the SMI signal in the down counter in the SMI generation circuit 151, the SMI signal is generated at the time of timeout. An I / O trap SMI is triggered by executing an IN or OUT instruction using a predetermined I / O address.
【0049】CPUスロットリング制御回路152は、
ストックロック信号STPCLK#を用いて前述のCP
Uスロットリング制御を実行するためのものであり、P
CI−ISAブリッジ15内のレジスタにセットされた
制御情報に基づいて、CPU11の性能をその最大性能
値に対して所定の割合に設定する。このCPUスロット
リング制御回路152の具体的な構成は図2を参照して
後述する。The CPU throttling control circuit 152
Using the stock lock signal STPCLK #,
For performing U throttling control, and P
Based on control information set in a register in the CI-ISA bridge 15, the performance of the CPU 11 is set to a predetermined ratio with respect to its maximum performance value. The specific configuration of the CPU throttling control circuit 152 will be described later with reference to FIG.
【0050】DMAコントローラ(DMAC)153
は、バスマスタ機能を持たないデバイスと主メモリ13
間のDMA転送を実行するものであり、複数のDMAチ
ャネルを有している。DMA controller (DMAC) 153
Is a device having no bus master function and the main memory 13
It performs DMA transfer between the two, and has a plurality of DMA channels.
【0051】I/Oコントローラ16は、HDD162
などのIDEデバイスを制御するためのバスマスタID
Eコントローラ161を内蔵している。バスマスタID
Eコントローラ161は、HDD162と主メモリ13
との間のデータ転送のためにバスマスタとして動作する
ことができる。また、I/Oコントローラ16は、PC
本体に設けられたUSBポートに接続可能な各種USB
デバイスを制御する機能も有している。The I / O controller 16 has an HDD 162
Bus master ID for controlling IDE devices such as
An E controller 161 is built in. Bus master ID
The E controller 161 includes the HDD 162 and the main memory 13
It can operate as a bus master for data transfer between the two. The I / O controller 16 is a PC
Various USB that can be connected to the USB port provided on the main unit
It also has the function of controlling devices.
【0052】BIOS−ROM17は、システムBIO
S(Basic I/O System )を記憶するためのもの
であり、プログラム書き替えが可能なようにフラッシュ
メモリによって構成されている。システムBIOSは、
リアルモードで動作するように構成されている。このシ
ステムBIOSには、システムブート時に実行されるI
RTルーチンと、各種I/Oデバイスを制御するための
デバイスドライバと、システム管理プログラムが含まれ
ている。システム管理プログラムは、SMMにおいて実
行されるプログラム(SM−BIOS)であり、CPU
スロットリング制御、CPUパワーステートの切り替え
制御、LCD輝度制御などを行う。The BIOS-ROM 17 stores the system BIOS.
This is for storing S (Basic I / O System), and is constituted by a flash memory so that a program can be rewritten. The system BIOS is
It is configured to operate in the real mode. This system BIOS includes an I / O executed at system boot time.
An RT routine, a device driver for controlling various I / O devices, and a system management program are included. The system management program is a program (SM-BIOS) executed in the SMM,
It performs throttling control, CPU power state switching control, LCD brightness control, and the like.
【0053】電源コントローラ18は、本PCのパワー
オン/オフを制御するためのものであり、電源スイッチ
183のオン/オフ、バッテリ182の残存容量、AC
アダプタ181の接続の有無、ディスプレイパネル開閉
検出スイッチのオン/オフなどの状態監視機能を有して
いる。The power controller 18 controls the power on / off of the PC, and turns on / off the power switch 183, the remaining capacity of the battery 182,
It has a status monitoring function such as connection / non-connection of the adapter 181 and ON / OFF of a display panel open / close detection switch.
【0054】図2には、CPUスロットリング制御回路
152の具体的な構成の一例が示されている。CPUス
ロットリング制御回路152には、STPCLK#の発
生制御を行うストップクロック制御回路21、STPC
LK#の発生間隔を制御するストップクロックインター
バルタイマ22、CPU11をストップグラントステー
トに保持する期間を制御するストップクロックホールド
タイマ23、およびCPU11によってプログラム可能
なレジスタ群24が設けられている。レジスタ群24に
は、CPUスロットリング制御の有効/無効を設定する
ための制御フラグ、およびCPUスロットリングレベル
を指定するデューティー制御情報が設定される。FIG. 2 shows an example of a specific configuration of the CPU throttling control circuit 152. The CPU throttling control circuit 152 includes a stop clock control circuit 21 for controlling the generation of STPCLK #, an STPC
A stop clock interval timer 22 for controlling the generation interval of the LK #, a stop clock hold timer 23 for controlling a period for keeping the CPU 11 in the stop grant state, and a register group 24 programmable by the CPU 11 are provided. In the register group 24, a control flag for setting validity / invalidity of CPU throttling control and duty control information for specifying a CPU throttling level are set.
【0055】以下、ストップグラントステートとノーマ
ルステートとをある時間間隔で交互に繰り返すCPUス
ロットリング制御動作について、図3を参照して説明す
る。ストップクロックインターバルタイマ22は、レジ
スタ群126にストップクロックインターバル時間(デ
ューティー幅)がセットされると、その時間毎に定期的
にタイムアウト出力を発生する。このタイムアウト出力
に応答して、ストップクロック制御回路21はSTPC
LK#をアクティブステートに設定する。また、ストッ
プクロックホールドタイマ23は、STPCLK#がア
クティブステートに設定されてから、レジスタ群126
にセットされたホールド時間(クロックオフタイム)だ
け経過した時にタイムアウト出力を発生する。このタイ
ムアウト出力に応答して、ストップクロック制御回路2
1はSTPCLK#をインアクティブステートに戻す。Hereinafter, the CPU throttling control operation in which the stop grant state and the normal state are alternately repeated at certain time intervals will be described with reference to FIG. When the stop clock interval time (duty width) is set in the register group 126, the stop clock interval timer 22 periodically generates a timeout output for each time. In response to the timeout output, the stop clock control circuit 21
LK # is set to the active state. Further, the stop clock hold timer 23 sets the register group 126 after the STPCLK # is set to the active state.
A timeout output is generated when the hold time (clock-off time) set in has elapsed. In response to the timeout output, the stop clock control circuit 2
1 returns STPCLK # to the inactive state.
【0056】STPCLK#がアクティブステートに設
定されると、CPU11はグラントサイクルを実行した
後、ノーマルステートからストップグラントステートに
移行する。そして、STPCLK#がインアクティブス
テートに戻されるまで、ストップグラントステートに維
持される。When STPCLK # is set to the active state, the CPU 11 executes a grant cycle and then shifts from the normal state to the stop grant state. The stop grant state is maintained until STPCLK # is returned to the inactive state.
【0057】従って、CPU11はある時間間隔でスト
ップグラントステートとノーマルステートを交互に繰り
返すので、その平均動作速度は、スロットリング制御を
行わない最大速度の時よりも低下される。この場合、動
作速度の低下の割合は、デューティー制御情報(デュー
ティー幅、クロックオフタイム)によって与えられるス
トップクロックインターバル時間とホールド時間との比
によって決定される。したがって、ディーティー制御情
報によって、STPCLKのデューティー比を図4の様
に可変設定することにより、CPUの性能(稼働率)を
多段階に可変設定することが可能となる。Therefore, the CPU 11 alternately repeats the stop grant state and the normal state at a certain time interval, so that the average operation speed is lower than that at the maximum speed when throttling control is not performed. In this case, the rate of decrease in operating speed is determined by the ratio between the stop clock interval time and the hold time given by the duty control information (duty width, clock off time). Therefore, by setting the duty ratio of STPCLK variably as shown in FIG. 4 according to the duty control information, it is possible to variably set the performance (operating rate) of the CPU in multiple stages.
【0058】次に、本実施形態で用いられるパワーセー
ブ制御方法の原理について説明する。本実施形態では以
下のパワーセーブ機能が提供される。 (1)パワーセーブ1 システムが一定時間以上一定以下の処理しか行っていな
い場合(システム稼働率が低い状態が続いていると
き)、CPU11をスリープ状態からウェイク状態に復
帰させるときに、段階的にCPUスロットリングレベル
を低い方から高い方に一定間隔で上げる(緩慢復帰)こ
とにより、パワーセーブを行う。Next, the principle of the power save control method used in this embodiment will be described. In the present embodiment, the following power saving function is provided. (1) Power Save 1 When the system is performing only processing for a certain time or more and a certain amount or less (while the system operating rate is low), when the CPU 11 is returned from the sleep state to the wake state, it is stepwise. Power saving is performed by raising the CPU throttling level from a lower one to a higher one at regular intervals (slow recovery).
【0059】ここで、「システム稼働率が低い状態が続
いている」ことの判断方法を、図6を参照して説明す
る。 (スリープ時間t1の測定)CPUパワーステートは、
OSからのアイドル要求が発行された時にウェイク状態
(C0)からスリープ状態(C2またはC3)に移行さ
れ、そして、割り込みなどのウェイクイベントが発生し
た時にウェイク状態(C0)に復帰する。Here, a method of judging that “the state where the system operating rate is low continues” will be described with reference to FIG. (Measurement of sleep time t1) The CPU power state is
When the idle request from the OS is issued, the state is shifted from the wake state (C0) to the sleep state (C2 or C3), and the state returns to the wake state (C0) when a wake event such as an interrupt occurs.
【0060】スリープ状態に入る前にタイマを読み、ス
リープ状態から抜け出したらまたタイマを読む。そし
て、差分からスリープ時間t1を得る。ここで、タイマ
としては、システムがG0ステートに維持されている期
間中カウント動作を続けるタイマ、たとえばACPI仕
様で規定されているPMタイマなどを使用すればよい。
このタイマはホスト−PCIブリッジ12またはPCI
−ISAブリッジ15に設けられている。The timer is read before entering the sleep state, and the timer is read again after exiting from the sleep state. Then, the sleep time t1 is obtained from the difference. Here, as the timer, a timer that continues the count operation while the system is maintained in the G0 state, for example, a PM timer defined by the ACPI specification may be used.
This timer is either the host-PCI bridge 12 or the PCI
-Provided in the ISA bridge 15.
【0061】(ウェイク時間t2の測定)スリープ状態
から抜け出したらタイマを読み、再びスリープ状態に入
る前にタイマを読む。差分からウェイク時間t2を得
る。(Measurement of Wake Time t2) When exiting from the sleep state, the timer is read, and before the sleep state is entered again, the timer is read. The wake time t2 is obtained from the difference.
【0062】(低システム稼働率の継続時間t3の測
定)t3は、t1/t2の比率がある一定値(例えば、
1/26)以下となる状態が継続している時間である。
t3のカウントアップは、比率が1/26以下が続いて
いるt1とt2の値を累積していくことなよって行われ
る。(Measurement of low system operation rate duration time t3) t3 is a certain value (for example, a ratio of t1 / t2)
This is the time during which the state of 1/26 or less continues.
The count-up of t3 is performed by accumulating the values of t1 and t2 in which the ratio continues to be 1/26 or less.
【0063】t3が予め決められた時間(t5)を越え
ると、「システム稼働率が低い状態が続いている」と判
断される。つまり、t3がt5を越えたとき、緩慢復帰
処理実行の条件を満たしたとして次回のウェイク時から
緩慢復帰処理を行う。When t3 exceeds a predetermined time (t5), it is determined that "the state where the system operation rate is low continues". That is, when t3 exceeds t5, the condition for executing the slow recovery process is satisfied, and the slow recovery process is performed from the next wake.
【0064】(緩慢復帰)CPU11がスリープ状態に
維持されている状態でハードウェア割り込み(IRQ)
などのウェイクアップイベントが発生したときは、通常
は、図7(A)に示すように、CPU11の動作速度
(CPU稼働率)はすぐにスリープ状態移行前の動作速
度(CPU稼働率)に復帰されるが、緩慢復帰の条件が
満足されているときは、図7(B)に示すように緩慢復
帰処理が実行され、前述のCPUスロットリング制御に
よって所定の時間間隔で段階的にCPU動作速度が低レ
ベルから所定の高レベルにまで徐々に上昇される。(Slow recovery) Hardware interrupt (IRQ) while CPU 11 is kept in the sleep state
When a wake-up event such as occurs, the operating speed of the CPU 11 (CPU operating ratio) usually immediately returns to the operating speed (CPU operating ratio) before the transition to the sleep state, as shown in FIG. However, when the condition of the slow return is satisfied, the slow return process is executed as shown in FIG. 7B, and the CPU operation speed is gradually increased at predetermined time intervals by the CPU throttling control. Is gradually raised from a low level to a predetermined high level.
【0065】これにより、CPU11の動作速度をすぐ
にスリープ状態移行前の動作速度に復帰させる場合に比
し、図7(B)に斜線で示されている分だけ、CPU1
1の電力消費を少なくすることが可能となる。As a result, as compared with the case where the operation speed of the CPU 11 is immediately returned to the operation speed before the transition to the sleep state, the amount of the CPU 1 is reduced by the hatched portion in FIG.
1 can be reduced.
【0066】なお、緩慢復帰処理で最終的に戻されるC
PU性能はスリープ状態移行前の性能までであり、図8
に示すように、バッテリの残存容量やCPU温度などの
条件によって例えばCPU稼働率=50%の性能で動作
している状態からスリープ状態に移行した場合には、緩
慢復帰処理で最終的に戻されるのはCPU稼働率=50
%の性能までとなる。It should be noted that C finally returned in the slow return process
The PU performance is up to the performance before shifting to the sleep state.
As shown in (2), when the state shifts from a state in which the CPU operates at a performance of 50% to a sleep state depending on conditions such as the remaining capacity of the battery and the CPU temperature, the state is finally returned by the slow recovery process. Is CPU utilization = 50
% Performance.
【0067】また、このような緩慢復帰処理を行った場
合でも、C0へのウェイクタイミング自体が遅れること
はない。したがって、スリープ状態の期間中にたとえば
ユーザによってキーボードやマウスの操作が行われた場
合でも、即座にそれに対応する処理を開始することがで
きる。また、ある一定期間後にはCPU性能は、スリー
プ状態に入る前に設定されていた性能に復帰される。こ
のため、過大なCPU負荷を伴う処理が突然要求されな
い限りは、ユーザによる体感速度が低下されるといった
不具合は一切生じない。よって、システム性能の低下を
最小限に抑えつつ十分なパワーセーブを実現することが
でき、バッテリによる動作時間を大幅に延長することが
可能となる。Even when such a slow recovery process is performed, the wake timing itself to C0 is not delayed. Therefore, even when the user operates the keyboard or the mouse during the sleep state, for example, the processing corresponding to the operation can be immediately started. After a certain period of time, the CPU performance returns to the performance set before entering the sleep state. For this reason, unless a process involving an excessive CPU load is suddenly requested, there is no problem such as a decrease in the perceived speed of the user. Therefore, a sufficient power saving can be realized while minimizing the deterioration of the system performance, and the operation time by the battery can be greatly extended.
【0068】なお、一旦、緩慢復帰条件が満たされた後
もt1とt2の測定は続けられる。t1とt2の比率
が、1/26よりも増えた場合には、t3をクリアし、
以後、再び累積されたt3の値がt5を越えるまで、緩
慢復帰処理は実行されない。Note that the measurement of t1 and t2 is continued even after the slow return condition is satisfied. If the ratio between t1 and t2 is greater than 1/26, clear t3,
Thereafter, until the accumulated value of t3 exceeds t5 again, the slow return process is not executed.
【0069】(2)パワーセーブ2 システムが特定の処理(DMACやバスマスタIDEに
よるバスマスタ動作)を行っていない場合には、アイド
ル時に入るCPUステートを、C2ではなくC3に持っ
ていくことにより、パワーセーブを行う。(2) Power Save 2 When the system is not performing a specific process (bus master operation by DMAC or bus master IDE), the CPU state to enter the idle state is transferred to C3 instead of C2 to save power. Make a save.
【0070】すなわち、アイドル時には、そのときのシ
ステム状態がC3への移行条件を満足しているか否かが
判断される。移行条件を満足していれば、より深いスリ
ープステートC3(ディープスリープ)に移行し、移行
条件を満足していなければ、C0への高速復帰が可能な
スリープステートC2(クイックスタート)に移行す
る。That is, at the time of idling, it is determined whether or not the system state at that time satisfies the condition for shifting to C3. If the transition condition is satisfied, the state shifts to the deeper sleep state C3 (deep sleep). If the transition condition is not satisfied, the state shifts to the sleep state C2 (quick start) capable of returning to C0 at high speed.
【0071】C3に移行するための条件は、CPU11
以外の他のデバイスがバスマスタ動作していないことで
ある。前述したようにC3ではCPUキャッシュと主メ
モリ13との間の整合性を維持するためのスヌープ動作
が行われないため、もしバスマスタ動作しているデバイ
スが存在すると、そのバスマスタ動作しているデバイス
による主メモリ13の書き換えによって主メモリ13と
CPUキャッシュの不整合が生じる危険があるためであ
る。The condition for shifting to C3 is as follows.
The other device is not operating as a bus master. As described above, since the snoop operation for maintaining the consistency between the CPU cache and the main memory 13 is not performed in C3, if there is a device that is operating as a bus master, the device that operates as a bus master is not used. This is because rewriting of the main memory 13 may cause inconsistency between the main memory 13 and the CPU cache.
【0072】(3)パワーセーブ3 バッテリ残量がある一定基準以下になったら、CPUス
ロットリングをより深く効かせる(スロットリングレベ
ルを下げる)ことにより、ウェイク状態におけるCPU
性能を下げてパワーセーブを行う。(3) Power Save 3 When the remaining battery power falls below a certain standard, the CPU throttling is made more effective (throttling level is lowered), so that the CPU in the wake state is turned off.
Reduce power and save power.
【0073】(4)パワーセーブ4 バッテリ残量がある一定基準以下になったら、LCDの
輝度をより低くすることにより、パワーセーブを行う。(4) Power Save 4 When the remaining battery power falls below a certain reference, power saving is performed by lowering the brightness of the LCD.
【0074】図9には、OSによってシステムアイドル
が検出されてから、SM−BIOSによってCPUスリ
ープ制御が実行されるまでの流れが示されている。OS
は、CPU11が実行すべきタスクが無くなくなると、
システムアイドル状態(CPUアイドル)であることを
検出し、システムBIOS(またはSM−BIOS)に
対してアイドル要求を発行する。このアイドル要求を受
けて、システムBIOS(またはSM−BIOS)は、
CPU11をウェイク状態からスリープ状態に移行させ
るためのCPUスリープ制御を開始する。FIG. 9 shows the flow from the detection of system idle by the OS to the execution of CPU sleep control by the SM-BIOS. OS
When there are no more tasks to be executed by the CPU 11,
It detects that it is in the system idle state (CPU idle) and issues an idle request to the system BIOS (or SM-BIOS). In response to this idle request, the system BIOS (or SM-BIOS)
CPU sleep control for shifting the CPU 11 from the wake state to the sleep state is started.
【0075】次に、図10のフローチャートを参照し
て、BIOSによる処理手順を説明する。システムBI
OSは、まず、PCがバッテリ駆動中であるか否かを判
断する(ステップS11)。これは、ACアダプタが接
続されているか否かを示す情報を電源コントローラ18
から取得することによって判断される。ACアダプタが
接続されてなければ、バッテリ駆動中である。Next, the processing procedure by the BIOS will be described with reference to the flowchart of FIG. System BI
The OS determines whether the PC is running on a battery (step S11). This means that information indicating whether the AC adapter is connected or not is supplied to the power controller 18.
It is determined by obtaining from. If the AC adapter is not connected, the battery is being driven.
【0076】バッテリ駆動中の場合には、以下のステッ
プS12〜S21の処理に移行する。すなわち、まず、
これまでに累積されている比率1/26以下の“t
1”,“t2”の積み上げ値により時間“t3”を取得
し(ステップS12)、その“t3”がしきい値“t
5”を越えているか否かが判断される(ステップS1
2)。“t3”がしきい値“t5”を越えていれば、シ
ステム稼働率が低い状態が続いていると認識される。こ
の場合には、まず、タイマを読み、前回のウェイク時に
読んだタイマ値との差分から、“t2”を計測する(ス
テップS14)。次いで、次回のウェイク時に緩慢復帰
処理を実行するために、CPUスロットリング制御をイ
ネーブルにすると共に、デューティー制御情報によって
スロットリングレベルを最低レベル(例えば12.5
%)に設定する(ステップS15)。そして、CPUパ
ワーステートをC0から、C2またはC3に切り替える
ためのCPUスリープ処理を実行する(ステップS1
6)。BIOSの処理はこの時点で中断される。If the battery is being driven, the process proceeds to the following steps S12 to S21. That is, first,
"T" of the ratio 1/26 or less that has been accumulated so far
The time “t3” is acquired from the accumulated values of “1” and “t2” (step S12), and “t3” is set to the threshold “t”.
5 "is determined (step S1).
2). If “t3” exceeds the threshold value “t5”, it is recognized that the state where the system operation rate is low continues. In this case, first, the timer is read, and “t2” is measured from the difference from the timer value read during the previous wake (step S14). Next, in order to execute the slow recovery process at the next wake, CPU throttling control is enabled, and the throttling level is set to the lowest level (for example, 12.5
%) (Step S15). Then, CPU sleep processing for switching the CPU power state from C0 to C2 or C3 is executed (step S1).
6). The BIOS processing is interrupted at this point.
【0077】CPUパワーステートがC2またはC3の
状態で、PC内のデバイスからのハードウェア割り込み
(IRQ)などのウェイクイベントが発生すると、CP
Uパワーステートは自動的にC0に復帰する。この場
合、CPU性能はステップS15で設定した最低レベル
(12.5%)に復帰される。そして、C2またはC3
移行前に実行した命令の次の命令から、CPU11は命
令の実行を開始する。これにより、BIOSのステップ
S17から処理が再開される。BIOSは、タイマを読
み、ステップS14で読んだタイマ値との差分から“t
1”を計測する(ステップS17)。次いで、定期的に
CPUスロットリングレベルを更新するために、次回B
IOSを呼び出すまでの時間(t4)を示すタイマ値を
ソフトウェアSMIタイマに設定した後(ステップS1
8)、復帰(リターン)命令を実行して、OSに制御を
戻す。When the CPU power state is C2 or C3 and a wake event such as a hardware interrupt (IRQ) from a device in the PC occurs, the CP
The U power state automatically returns to C0. In this case, the CPU performance is returned to the minimum level (12.5%) set in step S15. And C2 or C3
The CPU 11 starts executing the instruction from the instruction following the instruction executed before the transition. As a result, the process is restarted from step S17 of the BIOS. The BIOS reads the timer and calculates “t” from the difference from the timer value read in step S14.
1 ”is measured (step S17). Next, in order to periodically update the CPU throttling level, the next B
After setting a timer value indicating the time (t4) until calling the IOS in the software SMI timer (step S1)
8) Execute a return instruction to return control to the OS.
【0078】CPU11がウェイク状態(パワーステー
トC0)の期間に、デューティー情報の変更を要求する
ソフトウェアSMIが発生すると、SM−BIOSの緩
慢復帰処理ルーチンが起動される。緩慢復帰処理ルーチ
ンは、図11に示すように、デューティー制御情報を更
新することによりCPUスロットリングレベルを+1レ
ベル上昇させる(ステップS31)。+1レベルアップ
したCPUスロットリングレベルが最終的に戻すべきC
PUスロットリングレベルに到達していない場合には
(ステップS32のNO)、再びソフトウェアSMIの
設定を行う(ステップS33)。これにより、CPUス
ロットリングレベルが、最終的に戻すべきCPUスロッ
トリングレベルに到達するまで、ソフトウェアSMIに
よって緩慢復帰処理ルーチンが定期的に呼び出されるこ
とになる。When the software SMI requesting the change of the duty information is generated during the period when the CPU 11 is in the wake state (power state C0), the SM-BIOS slow recovery processing routine is started. As shown in FIG. 11, the slow return processing routine increases the CPU throttling level by +1 level by updating the duty control information (step S31). The CPU to which the CPU throttling level raised by +1 level should finally return
If it has not reached the PU throttling level (NO in step S32), the software SMI is set again (step S33). As a result, until the CPU throttling level finally reaches the CPU throttling level to be returned, the slow return processing routine is periodically called by the software SMI.
【0079】図10に戻り、ステップS13で、“t
3”がしきい値“t5”以下であった場合、つまり緩慢
復帰実行の条件が満たされない場合には、ステップS1
9,S20,S21が実行される。ステップS19,S
20,S21は前述のステップS14,S16,S17
にそれぞれ対応している。すなわち、前述のステップS
15、およびステップS18がスキップされることにな
る。この場合には、通常復帰処理となる。Returning to FIG. 10, at step S13, "t
If “3” is equal to or smaller than the threshold “t5”, that is, if the condition for executing the slow recovery is not satisfied, step S1
9, S20 and S21 are executed. Step S19, S
Steps S20, S21 correspond to steps S14, S16, S17 described above.
Respectively. That is, the aforementioned step S
15 and step S18 are skipped. In this case, a normal return process is performed.
【0080】また、ステップS11でAC駆動中である
ことが検出された場合には(ステップS11のNO)、
CPUスリープ処理(ステップS22)のみが実行され
る。なお、AC駆動中の場合でも、“t1”,“t2”
の計測を行うようにしても良い。If it is detected in step S11 that AC driving is being performed (NO in step S11),
Only the CPU sleep processing (step S22) is executed. Note that even during the AC drive, “t1”, “t2”
May be measured.
【0081】次に、図12のフローチャートを参照し
て、ステップS16,S20,S22で実行されるCP
Uスリープ処理の手順を説明する。CPUスリープ処理
では、まず、現在のシステムの状態、つまり、DMAチ
ャネルの設定されているか否か、バスマスタIDEがア
クティブであるか否か、バスマスタリクエストが発生し
ているか否か、などをその設定のために使用されるレジ
スタの値を参照してそれぞれ確認し(ステップS4
1)、CPU11以外の他のデバイスがバスマスタ動作
しているか否かによって、C3への移行条件を満たすか
否かを判断する(ステップS42)。なお、この条件
に、バッテリ駆動されていること、USBデバイスが接
続されてないこと、等を加えても良い。この場合、移行
条件を満たすか否かの判断処理は、図13のステップS
51〜S55で行われることになる。Next, referring to the flowchart of FIG. 12, the CP executed in steps S16, S20, S22
The procedure of the U sleep process will be described. In the CPU sleep process, first, the current system state, that is, whether or not the DMA channel is set, whether or not the bus master IDE is active, whether or not a bus master request is generated, and the like are set. Each value is checked with reference to the value of the register used for this (step S4).
1) It is determined whether or not the condition for shifting to C3 is satisfied based on whether or not a device other than the CPU 11 is operating as a bus master (step S42). It should be noted that the condition may be added that a battery is driven, a USB device is not connected, and the like. In this case, the process of determining whether or not the transition condition is satisfied is performed in step S in FIG.
This is performed in steps S51 to S55.
【0082】図12のステップS4にて、C3への移行
条件を満たしていると判断されると、CPUパワーステ
ートはC0からC3に切り替えられる(ステップS4
3)。この場合、前述したようにバスアービトレーショ
ンも禁止される。一方、C3への移行条件が満足してい
ない場合には、CPUパワーステートはC0からC2に
切り替えられる(ステップS44)。If it is determined in step S4 of FIG. 12 that the condition for shifting to C3 is satisfied, the CPU power state is switched from C0 to C3 (step S4).
3). In this case, bus arbitration is also prohibited as described above. On the other hand, if the condition for shifting to C3 is not satisfied, the CPU power state is switched from C0 to C2 (step S44).
【0083】このように、BIOSの制御の下で、シス
テム状態に応じてスリープステートを動的に切り替える
ことにより、ACPI−OSのない環境下でも最適なパ
ワーセーブを実現できる。As described above, by dynamically switching the sleep state according to the system state under the control of the BIOS, it is possible to realize the optimum power saving even in an environment without the ACPI-OS.
【0084】なお、バスマスタ動作の有無は、特定のド
ライバが動作しているか否かを調べることによってもチ
ェックすることができる。また、システム稼働率が低い
状態が続いていることを、C3への移行条件に加え、シ
ステム稼働率が低い状態が続いている場合にのみ、C3
へ移行するための他の条件を満たすか否かを判断しても
良い。The presence or absence of the bus master operation can also be checked by checking whether a specific driver is operating. Further, in addition to the condition for shifting to C3, the fact that the state where the system operation rate is low is added to the condition for shifting to C3.
It may be determined whether or not another condition for shifting to is satisfied.
【0085】さらに、システム性能を段階的に低レベル
から高レベルに上昇させるという本発明の緩慢復帰処理
は、システム性能を即座に基の状態に戻すのではなく、
段階的に戻すことでパワーセーブを図ることが肝要であ
るので、CPU速度を段階的に上昇させる制御のみなら
ず、例えば、CPU以外の他の各デバイスのパワーステ
ート制御やクロックの断続的な供給制御を行うことによ
ってそれらデバイスの平均動作速度を段階的に上昇させ
る制御を行ったり、あるいはキャッシュの有効/無効の
断続的な制御や、HDDのモータオン/オフの断続的な
制御などを行っても良い。Furthermore, the slow return processing of the present invention, which gradually raises the system performance from a low level to a high level, does not immediately return the system performance to the original state.
Since it is important to save power by returning the power stepwise, not only control for increasing the CPU speed stepwise, but also, for example, power state control of each device other than the CPU and intermittent supply of clocks Even if control is performed to increase the average operation speed of those devices step by step, intermittent control of cache validity / invalidity, intermittent control of HDD motor on / off, etc. good.
【0086】また、OSからアイドル要求を受けた場合
のみならず、キー入力が一定期間以上無い場合にシステ
ムアイドルと判断して前述のCPUスリープ制御を行う
ようにしても良い。Further, not only when an idle request is received from the OS, but also when no key input is made for a certain period or more, it may be determined that the system is idle and the above-described CPU sleep control may be performed.
【0087】[0087]
【発明の効果】以上説明したように、本発明によれば、
システム性能の低下を最小限に抑えつつ、十分なパワー
セーブを実現できるようになり、バッテリによる動作時
間を大幅に延長することが可能となる。As described above, according to the present invention,
Sufficient power saving can be realized while minimizing the deterioration of the system performance, and the operating time by the battery can be greatly extended.
【図1】本発明の一実施形態に係るコンピュータシステ
ムの構成を示すブロック図。FIG. 1 is a block diagram showing a configuration of a computer system according to an embodiment of the present invention.
【図2】同実施形態のコンピュータシステムに設けられ
たCPUスロットリング制御回路の構成を示すブロック
図。FIG. 2 is an exemplary block diagram showing a configuration of a CPU throttling control circuit provided in the computer system of the embodiment.
【図3】同実施形態で用いられるCPUスロットリング
制御動作を説明するためのタイミングチャート。FIG. 3 is a timing chart for explaining a CPU throttling control operation used in the embodiment.
【図4】同実施形態のCPUスロットリング制御動作で
使用されるストップクロック信号のデューティーとCP
U性能との関係を示す図。FIG. 4 is a diagram showing the duty and CP of the stop clock signal used in the CPU throttling control operation of the embodiment.
The figure which shows the relationship with U performance.
【図5】同実施形態で用いられるCPUパワーステート
を説明するための状態遷移図。FIG. 5 is a state transition diagram for explaining a CPU power state used in the embodiment.
【図6】同実施形態におけるシステム稼働率判断処理の
原理を説明するための図。FIG. 6 is an exemplary view for explaining the principle of a system operation rate determination process in the embodiment.
【図7】同実施形態で用いられる緩慢復帰処理の原理を
説明するための図。FIG. 7 is an exemplary view for explaining the principle of a slow recovery process used in the embodiment;
【図8】同実施形態で用いられる緩慢復帰処理の原理を
説明するための別の図。FIG. 8 is another view for explaining the principle of the slow return process used in the embodiment.
【図9】同実施形態においてOSによってシステムアイ
ドルが検出されてからBIOSによってCPUスリープ
制御が実行されるまでの流れを説明するための図。FIG. 9 is an exemplary view for explaining the flow from the detection of system idle by the OS to the execution of CPU sleep control by the BIOS in the embodiment.
【図10】同実施形態においてBIOSによって実行さ
れるCPUパワーセーブ処理の手順を示すフローチャー
ト。FIG. 10 is an exemplary flowchart illustrating the procedure of a CPU power save process executed by the BIOS in the embodiment.
【図11】同実施形態においてBIOSによって実行さ
れる緩慢復帰処理の手順を示すフローチャート。FIG. 11 is an exemplary flowchart illustrating the procedure of a slow recovery process executed by the BIOS in the embodiment.
【図12】同実施形態においてBIOSによって実行さ
れるCPUスリープ処理の手順を示すフローチャート。FIG. 12 is an exemplary flowchart illustrating the procedure of CPU sleep processing executed by the BIOS in the embodiment.
【図13】図12のCPUスリープ処理内で実行される
C3ステートへの移行条件判別処理の一例を示すフロー
チャート。FIG. 13 is a flowchart illustrating an example of a transition condition determination process to a C3 state executed in the CPU sleep process of FIG. 12;
11…CPU 12…ホスト−PCIブリッジ 13…主メモリ 15…PCI−ISAブリッジ 17…BIOS−ROM 121…PCIアービタ 151…SMI発生回路 152…CPUスロットリング制御回路 153…DMAコントローラ 21…ストップクロック制御回路 22…ストップクロックインターバルタイマ 23…ストップクロックホールドタイマ DESCRIPTION OF SYMBOLS 11 ... CPU 12 ... Host-PCI bridge 13 ... Main memory 15 ... PCI-ISA bridge 17 ... BIOS-ROM 121 ... PCI arbiter 151 ... SMI generation circuit 152 ... CPU throttling control circuit 153 ... DMA controller 21 ... Stop clock control circuit 22: Stop clock interval timer 23: Stop clock hold timer
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B011 DA02 EA04 LL08 LL10 LL11 5B062 AA05 DD05 HH02 HH06 HH07 JJ10 5B079 BA01 BB02 BC01 DD02 DD20 ──────────────────────────────────────────────────続 き Continued on the front page F term (reference) 5B011 DA02 EA04 LL08 LL10 LL11 5B062 AA05 DD05 HH02 HH06 HH07 JJ10 5B079 BA01 BB02 BC01 DD02 DD20
Claims (11)
ムにおいて、 前記コンピュータシステムのアイドル時に、前記コンピ
ュータシステムを、動作状態からスリープ状態に移行さ
せるスリープ手段と、 所定のウェイクアップイベントの発生に応答して前記コ
ンピュータシステムが前記スリープ状態から前記動作状
態に復帰したとき、前記コンピュータシステムの処理速
度を低レベルから所定の高レベルにまで段階的に上昇さ
せる処理速度制御手段とを具備することを特徴とするコ
ンピュータシステム。1. A battery-powered computer system, comprising: a sleep unit for causing the computer system to transition from an operating state to a sleep state when the computer system is idle; and a computer responsive to a predetermined wake-up event A computer system comprising: a processing speed control means for stepwise increasing a processing speed of the computer system from a low level to a predetermined high level when the system returns from the sleep state to the operation state. .
システムのCPUを、命令実行可能な動作状態から、命
令実行が停止される低消費電力のスリープ状態に移行さ
せるCPUスリープ手段を含み、 前記処理速度制御手段は、前記CPUが前記スリープ状
態から前記動作状態に復帰したとき、前記CPUの動作
速度を低レベルから所定の高レベルにまで所定の時間間
隔で段階的に上昇させるCPU速度制御手段を含み、 前記CPUがスリープ状態に維持されているアイドル期
間と前記CPUが動作状態に維持されているウェイク期
間との比率に基づいて、前記コンピュータシステムの稼
働率が所定のしきい値以下であるか否かを検出する稼働
率検出手段をさらに具備し、 前記CPU速度制御手段による前記段階的な動作速度制
御処理は、前記コンピュータシステムの稼働率が所定の
しきい値以下であることが検出されたときにその実行が
許可されることを特徴とする請求項1記載のコンピュー
タシステム。2. The CPU according to claim 2, wherein the sleep unit includes a CPU sleep unit that shifts a CPU of the computer system from an operation state in which instructions can be executed to a low power consumption sleep state in which instruction execution is stopped. The means includes CPU speed control means for increasing the operation speed of the CPU stepwise from a low level to a predetermined high level at predetermined time intervals when the CPU returns from the sleep state to the operation state, Based on a ratio between an idle period in which the CPU is kept in a sleep state and a wake period in which the CPU is kept in an operation state, whether or not the operation rate of the computer system is equal to or less than a predetermined threshold value Operating rate detecting means for detecting the step-by-step operating speed control processing by the CPU speed control means. 2. The computer system according to claim 1, wherein execution of the computer system is permitted when it is detected that the operation rate of the computer system is lower than a predetermined threshold.
システムのCPUを、命令実行可能な動作状態から、命
令実行が停止される低消費電力のスリープ状態に移行さ
せるCPUスリープ手段を含み、 前記処理速度制御手段は、前記CPUが前記スリープ状
態から前記動作状態に復帰したとき、前記CPUの動作
速度を低レベルから所定の高レベルにまで所定の時間間
隔で段階的に上昇させるCPU速度制御手段を含み、 前記CPU速度制御手段は、 所定のレジスタに設定されたデューティ制御情報に基づ
いて、前記CPUのクロックを制御するためのストップ
クロック信号のデューティ比を複数段階に可変設定して
前記CPUに供給するCPUスロットリング制御手段
と、 前記デューティ制御情報の更新要求を示す割り込み信号
を所定の時間間隔で前記CPUに発生する手段と、 前記CPUの動作速度が低レベルから所定の高レベルに
まで段階的に上昇されるように、前記割り込み信号の発
生の度に前記デューティ制御情報を更新する手段とを具
備することを特徴とする請求項1記載のコンピュータシ
ステム。3. The CPU according to claim 1, wherein the sleep unit includes a CPU sleep unit that shifts a CPU of the computer system from an operation state in which instructions can be executed to a low power consumption sleep state in which instruction execution is stopped. The means includes CPU speed control means for increasing the operation speed of the CPU stepwise from a low level to a predetermined high level at predetermined time intervals when the CPU returns from the sleep state to the operation state, The CPU speed control means variably sets a duty ratio of a stop clock signal for controlling a clock of the CPU in a plurality of steps based on duty control information set in a predetermined register, and supplies the duty ratio to the CPU. Throttling control means, and an interrupt signal indicating a request for updating the duty control information Means for generating the CPU at intervals, and updating the duty control information each time the interrupt signal is generated such that the operation speed of the CPU is stepwise increased from a low level to a predetermined high level. 2. The computer system according to claim 1, further comprising means.
システムのCPUを、命令実行可能な動作状態から、命
令実行が停止される低消費電力のスリープ状態に移行さ
せるCPUスリープ手段を含み、 前記処理速度制御手段は、前記CPUが前記スリープ状
態から前記動作状態に復帰したとき、前記CPUの動作
速度を低レベルから所定の高レベルにまで所定の時間間
隔で段階的に上昇させるCPU速度制御手段を含み、 前記CPUは、第1のスリープ状態と、この第1のスリ
ープ状態よりも低消費電力の第2のスリープ状態とを有
し、 前記CPUスリープ手段は、 前記コンピュータシステムの状態が、前記第2のスリー
プ状態への移行が許可される所定の条件を満足している
か否かを判別する手段と、 前記条件が満足されているとき前記CPUを前記第2の
スリープ状態に移行させ、前記条件が満足されないとき
前記CPUを前記第1のスリープ状態に移行させる手段
とを含む含むことを特徴とする請求項1記載のコンピュ
ータシステム。4. The CPU according to claim 1, wherein the sleep unit includes a CPU sleep unit that shifts a CPU of the computer system from an operation state in which an instruction can be executed to a low power consumption sleep state in which instruction execution is stopped. The means includes CPU speed control means for increasing the operation speed of the CPU stepwise from a low level to a predetermined high level at predetermined time intervals when the CPU returns from the sleep state to the operation state, The CPU has a first sleep state and a second sleep state that consumes lower power than the first sleep state. The CPU sleep unit is configured to switch the state of the computer system to the second sleep state. Means for determining whether or not a predetermined condition for permitting a transition to a sleep state is satisfied; and The PU is shifted to the second sleep state, the computer system according to claim 1, characterized in that it comprises and means for shifting said CPU to said first sleep state when said condition is not satisfied.
がキャッシュの整合性を維持することが可能な状態であ
り、前記第2のスリープ状態は、前記CPUがキャッシ
ュの整合性を維持することが不可能な状態であり、 前記CPUスリープ手段は、 前記コンピュータシステムにおいて前記CPU以外の他
のデバイスがバスマスタ動作しているか否かに基づい
て、前記第2のスリープ状態への移行が許可される所定
の条件を満足しているか否かを判定することを特徴とす
る請求項4記載のコンピュータシステム。5. The CPU according to claim 1, wherein the first sleep state is set to the CPU.
Is a state in which the coherency of the cache can be maintained, the second sleep state is a state in which the CPU cannot maintain the coherency of the cache, and the CPU sleep means is In the computer system, it is determined whether or not a predetermined condition for permitting the transition to the second sleep state is satisfied based on whether or not a device other than the CPU operates as a bus master. The computer system according to claim 4, wherein:
ムにおいて、 命令実行が停止される第1のスリープ状態と、命令実行
が停止され、且つ前記第1のスリープ状態よりも低消費
電力の第2のスリープ状態とを有するCPUと、 前記コンピュータシステムのアイドル時に、前記CPU
を、命令実行可能な動作状態から、前記第1および第2
のスリープ状態のいずれか一方のスリープ状態に移行さ
せるCPUスリープ手段とを具備し、 このCPUスリープ手段は、 前記コンピュータシステムの状態が、前記第2のスリー
プ状態への移行が許可される所定の条件を満足している
か否かを判別する手段と、 前記条件が満足されているとき、前記CPUを前記第2
のスリープ状態に移行させ、前記条件が満足されないと
き前記CPUを前記第1のスリープ状態に移行させる手
段とを含むことを特徴とするコンピュータシステム。6. A computer system capable of being driven by a battery, wherein a first sleep state in which instruction execution is stopped, and a second sleep state in which instruction execution is stopped and which consumes less power than the first sleep state. When the computer system is idle, the CPU
From the operating state in which the instruction can be executed,
CPU sleep means for shifting to any one of the sleep states of the above, wherein the CPU sleep means includes a predetermined condition that the state of the computer system is allowed to shift to the second sleep state. Means for determining whether or not the condition is satisfied; and when the condition is satisfied, the CPU
Means for shifting to the first sleep state when the condition is not satisfied.
がキャッシュの整合性を維持することが可能な状態であ
り、前記第2のスリープ状態は、前記CPUがキャッシ
ュの整合性を維持することが不可能な状態であり、 前記CPUスリープ手段は、 前記コンピュータシステムにおいて前記CPU以外の他
のデバイスがバスマスタ動作しているか否かに基づい
て、前記第2のスリープ状態への移行が許可される所定
の条件を満足しているか否かを判定することを特徴とす
る請求項6記載のコンピュータシステム。7. The CPU according to claim 1, wherein the first sleep state is the CPU
Is a state in which the coherency of the cache can be maintained, the second sleep state is a state in which the CPU cannot maintain the coherency of the cache, and the CPU sleep means is In the computer system, it is determined whether or not a predetermined condition for permitting the transition to the second sleep state is satisfied based on whether or not a device other than the CPU operates as a bus master. The computer system according to claim 6, wherein:
御方法であって、 前記コンピュータシステムのアイドル時に、前記コンピ
ュータシステムを動作状態からスリープ状態に移行させ
るステップと、 所定のウェイクアップイベントの発生に応答して前記コ
ンピュータシステムが前記スリープ状態から前記動作状
態に復帰したとき、前記コンピュータシステムの処理速
度を、低レベルから所定の高レベルにまで段階的に上昇
させるステップとを具備することを特徴とするパワーセ
ーブ制御方法。8. A power saving control method for a computer system, comprising: when the computer system is idle, transitioning the computer system from an operating state to a sleep state; and responding to the occurrence of a predetermined wake-up event. When the computer system returns from the sleep state to the operation state, gradually increasing the processing speed of the computer system from a low level to a predetermined high level. Method.
らスリープ状態に移行させるステップは、前記コンピュ
ータシステムのCPUを、命令実行可能な動作状態か
ら、命令実行が停止される低消費電力のスリープ状態に
移行させるステップを含み、 前記処理速度を段階的に上昇させるステップは、前記C
PUが前記スリープ状態から前記動作状態に復帰したと
き、前記CPUの動作速度を低レベルから所定の高レベ
ルにまで所定の時間間隔で段階的に上昇させるステップ
を含み、 前記CPUがスリープ状態に維持されているアイドル期
間と前記CPUが動作状態に維持されているウェイク期
間との比率に基づいて、前記コンピュータシステムの稼
働率が所定のしきい値以下であるか否かを検出するステ
ップをさらに具備し、 前記コンピュータシステムの稼働率が所定のしきい値以
下であることが検出されたとき、前記CPUの動作速度
を、低レベルから所定の高レベルにまで所定の時間間隔
で段階的に上昇させることを特徴とする請求項8記載の
パワーセーブ制御方法。9. The step of causing the computer system to transition from an operation state to a sleep state includes causing the CPU of the computer system to transition from an operation state capable of executing instructions to a low power consumption sleep state in which instruction execution is stopped. And the step of increasing the processing speed step by step comprises:
When the PU returns from the sleep state to the operation state, the operation speed of the CPU is gradually increased from a low level to a predetermined high level at predetermined time intervals, and the CPU is maintained in the sleep state. Detecting whether the operation rate of the computer system is equal to or less than a predetermined threshold based on a ratio between the idle period being set and a wake period during which the CPU is kept operating. When it is detected that the operation rate of the computer system is equal to or less than a predetermined threshold value, the operation speed of the CPU is increased stepwise from a low level to a predetermined high level at predetermined time intervals. The power save control method according to claim 8, wherein:
状態と、命令実行が停止され、且つ前記第1のスリープ
状態よりも低消費電力の第2のスリープ状態とを有する
CPUを備えたコンピュータシステムのパワーセーブ制
御方法であって、 前記コンピュータシステムのアイドル時に、前記コンピ
ュータシステムの状態が、前記第2のスリープ状態への
移行が許可される所定の条件を満足しているか否かを判
別し、 前記条件が満足されているとき、前記CPUを、命令実
行可能な動作状態から前記第2のスリープ状態に移行さ
せ、前記条件が満足されないとき前記CPUを前記動作
状態から前記第1のスリープ状態に移行させることを特
徴とするパワーセーブ制御方法。10. A computer comprising a CPU having a first sleep state in which instruction execution is stopped, and a second sleep state in which instruction execution is stopped and consuming less power than the first sleep state. A power saving control method for a system, comprising: determining whether a state of the computer system satisfies a predetermined condition that allows a transition to the second sleep state when the computer system is idle. When the condition is satisfied, the CPU shifts from the operation state in which the instruction can be executed to the second sleep state; and when the condition is not satisfied, the CPU is changed from the operation state to the first sleep state. A power save control method characterized by shifting to (1).
Uがキャッシュの整合性を維持することが可能な状態で
あり、前記第2のスリープ状態は、前記CPUがキャッ
シュの整合性を維持することが不可能な状態であり、 前記コンピュータシステムにおいて前記CPU以外の他
のデバイスがバスマスタ動作しているか否かに基づい
て、前記第2のスリープ状態への移行が許可される所定
の条件を満足しているか否かを判定することを特徴とす
る請求項10記載のパワーセーブ制御方法。11. The method according to claim 11, wherein the first sleep state is the CP.
U is in a state where it is possible to maintain cache coherency, and the second sleep state is a state in which the CPU is unable to maintain cache coherence. Determining whether or not a predetermined condition for permitting the transition to the second sleep state is satisfied, based on whether or not another device other than the device performs a bus master operation. A power save control method according to claim 10.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10206637A JP2000039937A (en) | 1998-07-22 | 1998-07-22 | Computer system and power save control method thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP10206637A JP2000039937A (en) | 1998-07-22 | 1998-07-22 | Computer system and power save control method thereof |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JP2000039937A true JP2000039937A (en) | 2000-02-08 |
Family
ID=16526666
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP10206637A Pending JP2000039937A (en) | 1998-07-22 | 1998-07-22 | Computer system and power save control method thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP2000039937A (en) |
Cited By (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2003022145A (en) * | 2001-07-05 | 2003-01-24 | Fujitsu Ltd | Clock control apparatus and clock control method |
| US6751741B1 (en) * | 1999-02-09 | 2004-06-15 | International Business Machines Corporation | Computer power management apparatus and method for optimizing CPU throttling |
| JP2004348573A (en) * | 2003-05-23 | 2004-12-09 | Renesas Technology Corp | Clock generation circuit and system including it |
| US6986070B2 (en) | 2000-12-28 | 2006-01-10 | Denso Corporation | Microcomputer that cooperates with an external apparatus to be driven by a drive signal |
| JP2006092230A (en) * | 2004-09-24 | 2006-04-06 | Fuji Xerox Co Ltd | Data processor |
| JP2006096342A (en) * | 2004-09-29 | 2006-04-13 | Robert Bosch Gmbh | Locking method for control device, excessive temperature circuit, computer program having program coding means and computer program product |
| WO2007105270A1 (en) * | 2006-03-10 | 2007-09-20 | Fujitsu Limited | Information processing device, operation mode control program, and computer readable recording medium with the program recorded therein |
| CN100380282C (en) * | 2006-03-02 | 2008-04-09 | 威盛电子股份有限公司 | Power saving method and system for CPU |
| JP2008511912A (en) * | 2004-09-03 | 2008-04-17 | インテル コーポレイション | Coordinating idle state transitions in multi-core processors |
| US7500114B2 (en) | 2004-10-27 | 2009-03-03 | Lg Electronics Inc. | Apparatus and method for controlling power management |
| JP2009116398A (en) * | 2007-11-01 | 2009-05-28 | Nec Computertechno Ltd | Node controller, distributed shared memory type information processor, and cache coherency control method |
| JP2010507869A (en) * | 2006-10-27 | 2010-03-11 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | Computer device power management system and method |
| JP2012503233A (en) * | 2008-09-19 | 2012-02-02 | インテル コーポレイション | Processor power consumption control and voltage drop by bandwidth throttling of microarchitecture |
| JP2012174142A (en) * | 2011-02-23 | 2012-09-10 | Toshiba Corp | Noise reduction circuit, electronic equipment, and noise reduction method |
| JP2013061857A (en) * | 2011-09-14 | 2013-04-04 | Toshiba Corp | Information processing device and program |
| JP2013516710A (en) * | 2010-01-11 | 2013-05-13 | クアルコム,インコーポレイテッド | System and method for sampling data in a central processing unit |
| JP2014509032A (en) * | 2011-03-24 | 2014-04-10 | インテル・コーポレーション | Acquisition of power profile information with reduced overhead |
| JP2015153236A (en) * | 2014-02-17 | 2015-08-24 | ソニー株式会社 | Semiconductor device and control method thereof |
| JP2017520850A (en) * | 2014-06-27 | 2017-07-27 | インテル コーポレイション | Emulation of system standby state with fast restart |
-
1998
- 1998-07-22 JP JP10206637A patent/JP2000039937A/en active Pending
Cited By (22)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6751741B1 (en) * | 1999-02-09 | 2004-06-15 | International Business Machines Corporation | Computer power management apparatus and method for optimizing CPU throttling |
| US6986070B2 (en) | 2000-12-28 | 2006-01-10 | Denso Corporation | Microcomputer that cooperates with an external apparatus to be driven by a drive signal |
| JP2003022145A (en) * | 2001-07-05 | 2003-01-24 | Fujitsu Ltd | Clock control apparatus and clock control method |
| JP2004348573A (en) * | 2003-05-23 | 2004-12-09 | Renesas Technology Corp | Clock generation circuit and system including it |
| JP2008511912A (en) * | 2004-09-03 | 2008-04-17 | インテル コーポレイション | Coordinating idle state transitions in multi-core processors |
| JP2006092230A (en) * | 2004-09-24 | 2006-04-06 | Fuji Xerox Co Ltd | Data processor |
| JP2006096342A (en) * | 2004-09-29 | 2006-04-13 | Robert Bosch Gmbh | Locking method for control device, excessive temperature circuit, computer program having program coding means and computer program product |
| US7500114B2 (en) | 2004-10-27 | 2009-03-03 | Lg Electronics Inc. | Apparatus and method for controlling power management |
| CN100380282C (en) * | 2006-03-02 | 2008-04-09 | 威盛电子股份有限公司 | Power saving method and system for CPU |
| WO2007105270A1 (en) * | 2006-03-10 | 2007-09-20 | Fujitsu Limited | Information processing device, operation mode control program, and computer readable recording medium with the program recorded therein |
| JP2010507869A (en) * | 2006-10-27 | 2010-03-11 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー. | Computer device power management system and method |
| JP2009116398A (en) * | 2007-11-01 | 2009-05-28 | Nec Computertechno Ltd | Node controller, distributed shared memory type information processor, and cache coherency control method |
| JP2012503233A (en) * | 2008-09-19 | 2012-02-02 | インテル コーポレイション | Processor power consumption control and voltage drop by bandwidth throttling of microarchitecture |
| JP2013516710A (en) * | 2010-01-11 | 2013-05-13 | クアルコム,インコーポレイテッド | System and method for sampling data in a central processing unit |
| KR101499303B1 (en) * | 2010-01-11 | 2015-03-05 | 퀄컴 인코포레이티드 | System and method of sampling data within a central processing unit |
| JP2012174142A (en) * | 2011-02-23 | 2012-09-10 | Toshiba Corp | Noise reduction circuit, electronic equipment, and noise reduction method |
| JP2014509032A (en) * | 2011-03-24 | 2014-04-10 | インテル・コーポレーション | Acquisition of power profile information with reduced overhead |
| JP2013061857A (en) * | 2011-09-14 | 2013-04-04 | Toshiba Corp | Information processing device and program |
| US8806078B2 (en) | 2011-09-14 | 2014-08-12 | Kabushiki Kaisha Toshiba | Information processing device and program product |
| JP2015153236A (en) * | 2014-02-17 | 2015-08-24 | ソニー株式会社 | Semiconductor device and control method thereof |
| JP2017520850A (en) * | 2014-06-27 | 2017-07-27 | インテル コーポレイション | Emulation of system standby state with fast restart |
| KR101915006B1 (en) * | 2014-06-27 | 2018-11-06 | 인텔 코포레이션 | System standby emulation with fast resume |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3943665B2 (en) | Sleep control method and event notification method | |
| US8112647B2 (en) | Protocol for power state determination and demotion | |
| JP2000039937A (en) | Computer system and power save control method thereof | |
| US8156362B2 (en) | Hardware monitoring and decision making for transitioning in and out of low-power state | |
| US6125450A (en) | Stop clock throttling in a computer processor through disabling bus masters | |
| US7610497B2 (en) | Power management system with a bridge logic having analyzers for monitoring data quantity to modify operating clock and voltage of the processor and main memory | |
| US8112648B2 (en) | Enhanced control of CPU parking and thread rescheduling for maximizing the benefits of low-power state | |
| US6266776B1 (en) | ACPI sleep control | |
| US7596709B2 (en) | CPU power management based on utilization with lowest performance mode at the mid-utilization range | |
| CN106155265B (en) | Power efficient processor architecture | |
| US7430673B2 (en) | Power management system for computing platform | |
| US6829713B2 (en) | CPU power management based on utilization with lowest performance mode at the mid-utilization range | |
| US8762757B2 (en) | Power management method and device thereof | |
| JP5427775B2 (en) | Data processing device with low power cache access mode | |
| EP3440531B1 (en) | Enhanced dynamic clock and voltage scaling (dcvs) scheme | |
| US20080028240A1 (en) | System and method for controlling processor low power states | |
| US20100162256A1 (en) | Optimization of application power consumption and performance in an integrated system on a chip | |
| JP2013117981A (en) | Method and apparatus for providing intelligent power management | |
| CN101010655A (en) | Coordinating idle state transitions in multi-core processors | |
| JP5764150B2 (en) | Method and computer for transition from power-on state to power-saving state | |
| US8452995B1 (en) | Universal serial bus low power idle mode | |
| US7886177B2 (en) | Method and apparatus of collecting timer ticks | |
| WO2021188106A1 (en) | Feature modification in standby mode based on power source capacity | |
| TW546560B (en) | Method of achieving computer power saving through memory throttling | |
| CN101320347B (en) | Computer system and method for controlling processor thereof |