JPH0689130A - コンピュータシステムの状態監視方法および節電制御装置 - Google Patents

コンピュータシステムの状態監視方法および節電制御装置

Info

Publication number
JPH0689130A
JPH0689130A JP3345560A JP34556091A JPH0689130A JP H0689130 A JPH0689130 A JP H0689130A JP 3345560 A JP3345560 A JP 3345560A JP 34556091 A JP34556091 A JP 34556091A JP H0689130 A JPH0689130 A JP H0689130A
Authority
JP
Japan
Prior art keywords
address
cpu
time
learning
accessed
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.)
Granted
Application number
JP3345560A
Other languages
English (en)
Other versions
JPH0695303B2 (ja
Inventor
Osamu Ikeda
治 池田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dia Semicon Systems Inc
Original Assignee
Dia Semicon Systems Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dia Semicon Systems Inc filed Critical Dia Semicon Systems Inc
Priority to JP3345560A priority Critical patent/JPH0695303B2/ja
Priority to PCT/JP1992/000218 priority patent/WO1993013480A1/ja
Priority to US07/886,649 priority patent/US5430881A/en
Priority to EP92906159A priority patent/EP0573651A1/en
Publication of JPH0689130A publication Critical patent/JPH0689130A/ja
Publication of JPH0695303B2 publication Critical patent/JPH0695303B2/ja
Priority to US08/417,028 priority patent/US5475848A/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Power Sources (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 監視対象となるコンピュータシステムが実行
するソフトウェアに手を加えず、またソフトウェアを限
定せず、システムバスの信号を監視することで、CPU
が小ループのプログラム処理を繰返していて実質的な仕
事の起動を待っている状態(実質休止状態)になってい
る可能性大であることを検出する。 【構成】 一定時間内にCPUがアクセスしたアドレス
を記憶する動作と、一定時間内にCPUが前記の記憶し
たアドレス以外のアドレスをアクセスするか否かを監視
する処理とを適宜に繰返し、CPUが小ループのプログ
ラム処理を繰返していることを検出する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明はコンピュータシステム
の状態監視方法および節電制御装置に関し、特に、CP
Uが小ループのプログラム処理を繰返していて実質的な
仕事の起動を待っている状態(これを実質休止状態と定
義する)になっていることを高確率で検出するための状
態監視方法と、この方法に従って実質休止状態でのCP
Uの電力消費を低減させるための節電制御装置に関す
る。
【0002】
【従来の技術】例えば特開平2−178818号公報に
見られるように、コンピュータシステムの各部の動作状
態に応じて、実質的な仕事を行っていない休止状態にな
っている部分への給電を停止することで、システム全体
の消費電力を減らすという技術があり、様々な形態で具
体的に実施されている。特にバッテリー駆動の可搬型パ
ーソナルコンピュータについては、小型・軽量のバッテ
リーでできるだけ長時間動作できるようにするために、
この種の節電技術が盛んに研究されている。
【0003】従来のある種のパーソナルコンピュータで
はレスト・モードとスリープ・モードと呼ぶ2種類のス
タンバイ機能を備えている。レスト・モードは、一定時
間CPUが動作しないと、自動的に動作周波数を16M
Hzから1MHzに下げる機能である。さらに一定時間
が経過すると自動的にスリープ・モードに入る。スリー
プ・モードでは電源供給が停止する。どちらのモードで
動作していても、任意のキーを押すことで通常のモード
に復帰する。スタンバイ・モードに入る時間はユーザが
任意に設定することができる。
【0004】ここで「一定時間CPUが動作しない」こ
とが節電状態(前記のスタンバイ・モード)に移行する
条件となっている。具体的には、キーボードからの入力
や通信コントローラからの入力など、CPUの仕事を起
動する外部要因が一定時間以上発生しなかった時に、節
電状態に移行するようになっている。
【0005】
【発明が解決しようとする課題】「CPUの仕事を起動
する要因が一定時間以上発生しない」ことをもってCP
Uが実質休止状態にあると判定して節電モードに移行す
る従来の技術では、一般的なパーソナルコンピュータに
ついては、前記の「一定時間」を数10秒以上に設定す
る必要があり、充分な節電効果が得られないという問題
がある。
【0006】例えばワードプロセッサのソフトウェアを
使用している状態を想定する。この場合、キーボードか
らの入力のひとつひとつがCPUの仕事の起動要因とな
り、CPUが入力信号に応じて、1文字をディスプレイ
に表示する非常に簡単な仕事や、かな漢字変換や文書の
移動といった少し時間のかかる処理や、ファイルの整理
のようにさらに時間のかかる仕事などを実行することに
なる。オペレーターが文書を考えながらキー入力する場
合、キー入力速度よりもCPUの処理速度の方が圧倒的
に速い場合が多く、あるキー入力から次のキー入力まで
の間で数十ミリ秒から数秒程度の実質休止時間を生じる
機会が非常に多い。
【0007】だからといって前述の従来の節電方法にお
ける「一定時間」を例えば1秒〜数秒程度に設定したの
では、少し時間のかかる文書の移動やファイルの整理な
どの仕事を行っている最中に節電状態に移行してしま
う。そこで充分な安全度を見込んで「一定時間」を充分
に長くして数10秒〜数分間に設定する必要がある。そ
うすると頻繁に発生している短時間の実質休止状態に対
しては節電機能が働かず、充分な節電効果は得られな
い。
【0008】この問題の解決手段として、CPUが実質
休止状態になったとき、CPU自身がその都度外部回路
(節電制御回路)に節電可能であることを宣言するよう
に構成することが考えられる。こうするにはCPUが実
行するソフトウェアにその機能を盛り込まなければなら
ない。既存のソフトウェアにこのような機能を付け加え
ることは甚しく面倒なことである。この発明は既存のソ
フトウェアに手を加えないということを一つの条件にし
ており、前記の対策はこの条件に当てはまらない。
【0009】また、コンピュータシステムがある一つの
ソフトウェアしか実行しないのであれば、そのソフトウ
ェアの内容を予め解析し、CPUがある特定のアドレス
群しかアクセスしない小ループを繰返している状態を検
知し、CPUの実質休止状態を適確につかむことができ
る。しかし様々なソフトウェアを対象とした場合、この
手法ですべてのソフトウェアに対応するというのは現実
的に困難である。
【0010】この発明は以上のような技術的背景の下に
なされたもので、対象とするソフトウェアに手を加え
ず、また対象ソフトウェアを固定せずに、コンピュータ
システムのシステムバスの信号を外部から監視すること
で、CPUが小ループのプログラム処理を繰返していて
実質的な仕事の起動を待っている実質休止状態になった
ことを高確率で検出することができるようにした状態監
視方法を提供することを目的とする。また、その方法に
従ってCPUの節電制御を効果的に行うことができるよ
うにした節電制御装置を提供することを目的とする。
【0011】
【課題を解決するための手段】そこで第1の発明の方法
では、所定時間Tx内にCPUがアクセスしたアドレス
を適宜なアドレスブロックに区分して記憶する処理Aと
(ここで記憶したアドレス群またはアドレスブロック群
を学習アドレスとする)、その直後に前記時間Txに応
じて定まる所定時間Ty内に前記CPUが前記学習アド
レス以外のアドレスをアクセスしたか否かを監視する処
理Bとを、前記時間TxとTyを適宜範囲内で適宜に変
化させながら繰返し、前記時間Ty内に前記学習アドレ
ス以外がアクセスされないという状態を生じる前記時間
Txのできるだけ小さな値Tx(min )を適宜なアルゴ
リズムにより適宜な分解能で検出し、そのTx(min )
を検出したときに前記CPUがTx(min )以下の周期
で小ループのプログラム処理を繰返していて実質休止状
態になっている可能性が大であると判定する。
【0012】また第2の発明の方法においては、前記時
間TxとTyを下限値から上限値に向けて漸増させなが
前記処理Aと処理Bを繰返し、前記Tx(min )を検出
する。
【0013】また第3の発明では、システムバスの信号
を次のように監視してCPUが実質休止状態である可能
性大と判定する。
【0014】(処理1) 一定時間Ta内にCPUがア
クセスしたアドレスを適宜なアドレスブロックに区分し
て記憶する。ここで記憶したアドレス群またはアドレス
ブロック群を学習アドレスとする。
【0015】(処理2) 一定時間Tb内にCPUが学
習アドレス以外のアドレスをアクセスしたか否かを監視
する。
【0016】(処理3) 処理2において前記学習アド
レス以外がアクセスされなかった場合、前記時間Taと
Tbのうちの少くともTaを適宜に短くして処理1と処
理2を再度行い、処理2において前記学習アドレス以外
へのアクセスが検出されるまで時間Taを短縮しながら
処理1と処理2を繰返す。
【0017】(処理4) 処理2において前記学習アド
レス以外へのアクセスが検出された場合、そのときの時
間Taに応じて設定されたTaより適宜に長い一定時間
Tc内にCPUが前記学習アドレス以外のアドレスをア
クセスしたか否かを監視し、前記学習アドレス以外がア
クセスされなかった場合にCPUが前記実質休止状態に
なっている可能性が大であると判定する。
【0018】また第4の発明の方法では、適宜に設定し
た一定時間Tx内にCPUがアクセスしたアドレスを適
宜なブロックに区分して記憶する処理Aと(ここで記憶
したアドレス群またはアドレスブロック群を学習アドレ
スとする)、適宜に設定した一定時間Ty内に前記CP
Uが前記学習アドレス以外のアドレスをアクセスしたか
否かを監視する処理Bとを繰返し、前記時間Ty内に学
習アドレス以外のアドレスがアクセスされなかったとき
に前記CPUが前記Tx以下の周期で小ループのプログ
ラム処理を繰返していて実質休止状態になっている可能
性が大であると判定する。
【0019】また第5の発明の装置は、CPUを高消費
電力の通常モードで動作させるか低消費電力の節電モー
ドで動作させるかを切換え制御する手段aと、所定時間
Tx内にCPUがアクセスしたアドレスを適宜なアドレ
スブロックに区分して記憶する手段bと(ここで記憶し
たアドレス群またはアドレスブロック群を学習アドレス
とする)、この手段bの動作に続いて前記時間Txに応
じて定まる所定時間Ty内に前記CPUが前記学習アド
レス以外のアドレスをアクセスしたか否かを監視する手
段cと、前記CPUが前記通常モードで動作している状
態において前記時間TxとTyを適宜範囲内で適宜に変
化させながら前記手段bとcの動作を繰返し、前記時間
Ty内に前記学習アドレス以外がアクセスされないとい
う状態を生じる前記時間Txのできるだけ小さな値Tx
(min )を適宜なアルゴリズムにより適宜な分解能で検
出する手段dと、この手段dにより前記Tx(min )を
検出したときに別に設定した除外条件が成立していなけ
れば前記CPUを前記節電モードで動作させる手段e
と、前記CPUが前記節電モードで動作しているときに
前記学習アドレス以外のアドレスをアクセスすることを
検出する手段fと、この手段fにより前記学習アドレス
以外のアクセスが検出されたときに前記CPUを前記通
常モードで動作させる手段gとを備えている。
【0020】また第6の発明の装置は、CPUを高消費
電力の通常モードで動作させるか低消費電力の節電モー
ドで動作させるかを切換え制御する手段aと、所定時間
Tx内にCPUがアクセスしたアドレスを適宜なアドレ
スブロックに区分して記憶する手段bと(ここで記憶し
たアドレス群またはアドレスブロック群を学習アドレス
とする)、この手段bの動作に続いて所定時間Ty内に
前記CPUが前記学習アドレス以外のアドレスをアクセ
スしたか否かを監視する手段cと、前記CPUが前記通
常モードで動作している状態において前記手段bとcと
の動作を繰返し、前記時間Ty内に前記学習アドレス以
外のアクセスが検出されなかったときに別に設定した除
外条件が成立していなければ前記CPUを前記節電モー
ドで動作させる手段eと、前記CPUが前記節電モード
で動作しているときに前記学習アドレス以外のアドレス
をアクセスすることを検出する手段fと、この手段fに
より前記学習アドレス以外のアクセスが検出されたとき
に前記CPUを前記通常モードで動作させる手段gとを
備えている。
【0021】
【作用】コンピュータシステムがある周期をもつループ
性のプログラムを実行している場合、そのループを構成
する命令群の格納されているメモリアドレスは、ほとん
どの命令において固有のものである。したがってループ
を繰返している状態では、CPUはある限られたアドレ
ス群を繰返しアクセスすることになる。その繰返し周期
をT0 とすると、第1および第2の発明においては、前
記時間TxがT0より小さいと前記処理Bにおいて学習
アドレス以外へのアクセスが検出されるが、TxがT0
より大きいと処理Bにおいて学習アドレス以外へのアク
セスが検出されなくなる。前述のTx(min )はT0 よ
り大きくてできるだけ小さい値である。このTx(min
)を検出したということは、それより小さい周期のル
ープ性プログラムを繰返しているものと判定することが
できる。特に第2の発明では、より高速にTx(min )
を検出することができる。なお、Txに応じて定めるT
yは、Txより少し小さい値からTxの数倍程度の範囲
で適宜に選定する。
【0022】第5の発明の装置では、第1の発明の方法
に従って前記Tx(min )を検出したときに節電モード
になり、その後学習アドレス以外がアクセスされたとき
に通常モードに戻る。
【0023】また第3の発明の方法では、ループ性プロ
グラムの繰返し周期をT0 とすると、前記時間TaがT
0 より大きいと、処理2において学習アドレス以外への
アクセスは検出されない。したがって時間Taが徐々に
短縮され、TaがT0 とほぼ等しくなると、処理2にお
いて学習アドレス以外へのアクセスが検出される。この
時のTaに応じてTcが決定される。そしてTc内に学
習アドレス以外がアクセスされなかった場合に実質休止
状態の可能性大と判定する。なお、Taの初期値は実質
休止状態となり得るループ性プログラムの繰返し周期の
ほぼ最大値に合わせて決定しておく。
【0024】また第4の発明の方法では、前記時間Tx
は比較的小さい適切な値に固定されており、そのTxよ
り小さな周期で繰返されるループ性プログラムを検出す
ることになる。第6の発明の装置では、第4の発明の方
法に従って実質休止状態を検出して節電モードに入り、
前記学習アドレス以外がアクセスされたときに通常モー
ドに戻る。
【0025】
【実施例】図1は前記第3の発明の状態監視方法に基づ
く節電制御装置を付加したコンピュータシステムの概略
構成を示している。監視対象であるコンピュータシステ
ム1のシステムバス2に状態判定・節電コントローラ3
が接続されるとともに、このコントローラ3の制御のも
とで動作するアドレス記憶・比較回路4がアドレスバス
とコマンドバスに接続される。コンピュータシステム1
はいくつかの機能部分に分かれ、各部分に対してそれぞ
れ給電スイッチ回路6を介して電源から動作電力が供給
される。コントローラ3は以下のようにしてコンピュー
タシステム1のCPUが実質休止状態であると判定した
ときに、CPUに給電するスイッチ回路6をオフにし、
また必要に応じて再びオンにする。
【0026】図2、図3、図4は状態判定・節電コント
ローラ3の制御手順を示している。初期設定処理100
に続く最初のステップ101ではアドレス記憶・比較回
路4をクリアした後、一定時間Taだけアドレス記憶モ
ードで動作させる。これにより時間Ta内にCPUがア
クセスしたアドレスがアドレス記憶・比較回路4に記憶
される。なお、時間Taの初期値は《Taの初期値につ
いて》の項の説明のように決定する。また、アドレス記
憶・比較回路4で記憶するアドレス情報は必ずしも1番
地単位ではなく、《アドレスブロックの区分について》
のように適宜なブロック単位でアクセスされたか否かを
判定する。ステップ101で記憶したアドレス群を以下
では学習アドレスとする。
【0027】次にコントローラ3はステップ102に進
み、アドレス記憶・比較回路4を一定時間Tb(この実
施例ではTaと同じとする)だけアドレス比較モードで
動作させる。するとアドレス記憶・比較回路4は、その
一定時間Ta内にCPUがアクセスするアドレスと前記
学習アドレスとを逐次比較し、学習アドレス以外のアド
レスがアクセスされたときに不一致信号を出力してコン
トローラ3に与える。ステップ102にて学習アドレス
以外がアクセスされなかった場合(不一致信号が出力さ
れなかった場合)、ステップ103に進み、前記の時間
TaをΔtだけ短縮してステップ101に戻る。したが
って、ステップ102で学習アドレス以外のアドレスが
アクセスされたことを検出するまでは、時間Taを少し
ずつ短縮しながらステップ101と102を繰返す。
【0028】ステップ101、102、103の繰返し
は周期サーチ・アドレス学習処理であり、CPUが小ル
ープのプログラムを繰返している場合に、その繰返し周
期T0 とほぼ等しくなるまで時間Taを短縮するととも
に、そのループ繰返しによってアクセスされているアド
レス群を記憶する。つまりTaがT0 にほぼ等しくなる
と、ステップ102にて学習アドレス以外のアクセスが
検出され、その時ステップ200に進む。
【0029】ステップ200は状態監視処理であり、周
期サーチ・アドレス学習処理100、101、102、
103で決定された時間Taの2倍の時間Tc内にCP
Uが学習アドレス以外のアドレスをアクセスしたか否か
を監視する。つまりアドレス記憶・比較回路4を時間T
cだけアドレス比較モードで動作させ、その間に不一致
信号が出力されるか否かを監視する。CPUが小ループ
を繰返し実行しているのでない場合は、ステップ200
にて学習アドレス以外のアクセスが検出され、その場合
は最初のステップ100に戻ってTaを初期値に戻し、
再び周期サーチ・アドレス学習処理101、102、1
03を行う。
【0030】CPUが小ループを繰返し実行している場
合、ステップ200では学習アドレス以外のアクセスが
検出されず、その場合にステップ210に進む。このよ
うにしてCPUが小ループを繰返し実行していることを
検出する。CPUが小ループのプログラム処理を繰返し
ているのは、多くの場合、実質的な仕事の起動を待って
いる実質休止状態である。ただし実質休止状態といえな
い場合もある。ステップ210では《除外条件につい
て》で説明するように、コンピュータシステム1の各種
内部情報から実質休止状態とは判定しない除外条件が成
立するかどうかをチェックする。除外条件が成立しない
場合、一応実質休止状態と判定してステップ220に進
む。除外条件が成立した場合はステップ211で時間R
1だけ遅延して最初のステップ100に戻る。遅延時間
R1についても《除外条件について》に説明している。
【0031】CPUが実質休止状態であると判定した場
合はステップ220において、CPUに対してパワーダ
ウン要求信号を出力し、必要なデータを退避させるなど
のパワーダウン準備処理をCPUに促し、ステップ23
0でCPUからパワーダウン準備完了の応答が来るのを
待つ。
【0032】CPUからパワーダウン準備完了の応答が
あったなら、以下に説明する復帰タイマの起動条件が成
立しているか否かをチェックし(ステップ240)、成
立していれば復帰タイマを起動(ステップ250)して
からステップ300に進み、給電スイッチ回路6を制御
してCPUに対する動作電源の供給を停止する。
【0033】その後状態判定・節電コントローラ3はス
テップ400に進み、《復帰信号について》で説明する
ように、CPUの実質的な仕事を起動するキー入力信号
などが発生するかどうかをチェックする。復帰信号が発
生すればステップ500に進み、CPUに動作電源を供
給して再スタートさせる。また復帰信号がなくても、先
のステップ250で復帰タイマを起動した場合はステッ
プ410から411に進み、復帰タイマがタイムアップ
したときステップ500に進んで再スタート制御を実行
する。なお再スタート制御は、まず給電スイッチ回路6
を制御してCPUに動作電源を供給した後、CPUに対
してリセット信号群と再スタート信号を供給する。
【0034】再スタート後の次のステップ600では、
再スタートが復帰タイマによってなされたのかキー入力
などの復帰信号によってなされたのかをチェックし、復
帰信号によって再スタートしたのであれば、ステップ6
10で時間R2だけ遅延し、状態監視処理200に戻
る。また復帰タイマにより再スタートしたのであれば、
ステップ620で時間R3だけ遅延し、最初のステップ
100に戻って周期サーチ・アドレス学習処理101、
102、103を最初からやり直す。R2、R3の遅延
処理についてはそれぞれ《遅延時間R2について》《遅
延時間R3について》で説明する。またステップ240
における復帰タイマの起動条件は《復帰タイマの起動条
件について》に説明する。
【0035】《Taの初期値について》Taの初期値は
コントローラ3内にて保持され、この初期値の設定はシ
ステムバス2を経由してコンピュータシステム1のCP
U動作により行われる。検出目的とする小ループ周期よ
り大きな周期が値として使用されるが、大きすぎると処
理101、102、103のループ回数が多くなり、実
質的に節電の効果が低下する。このことを考慮し、節電
の効果が最良となるように設定する。
【0036】《アドレスブロックの区分について》最良
の小ループ検出確度を得るためには、アドレス記憶・比
較回路4で記憶するアドレス単位にて1番地単位である
ことが必要であるが、実装上これを適宜なブロック情報
は記憶することが必要である。このブロック単位量は、
検出しようとする小ループの処理のために発生する番地
の連続性を考慮することにより1番地単位とした場合に
近似する検出確度を得ることが可能である。
【0037】《除外条件について》CPUの実質的な仕
事の起動の待ちの判定処理を含む小ループが検出しよう
とする小ループである。したがって、処理210の除外
条件は、処理200の処理中にこの実質的な仕事の待ち
の判定処理が行われなかった場合に除外条件成立であ
る。また、検出しようとする目的小ループにありえない
事象の発生が処理200の処理中に発生した場合も除外
条件成立である。除外条件が成立した場合でも小ループ
は今後実行される可能性が大と考え、この時間の再検出
処理は無効であると判断し遅延時間R1を使用する。
【0038】《復帰信号について》CPUの実質的な仕
事の起動の待ちの判定処理を含む小ループが起動判定成
立と判断するための信号である。この信号により実質的
に検出した小ループは消滅する。このため、コンピュー
タシステム1は、新しい仕事の実行を開始する必要があ
る。したがって、起動判定成立の要因事象が復帰信号と
なる。
【0039】《遅延時間R2について》復帰信号の発生
により検出した小ループの実行処理より復帰信号に対応
した実行処理に移行する。この実行処理終了後、再度前
回検出した小ループを実行する可能性が大と判断する。
この復帰信号に対応した実行処理は、処理200にて学
習アドレス以外をアクセスする可能性が大である。した
がって、この実行処理予想時間に相当する処理再開始ま
での遅延時間をR2にて設定する。
【0040】《遅延時間R3について》復帰タイマの起
動条件が成立した場合、検出中の小ループは、誤認識の
可能性を残していると判断する。処理で復帰タイマがタ
イムアップした場合、検出した小ループは誤認識した可
能性が大であると判断する。この場合検出した小ループ
と同一のループが再度実行される可能性があり、これを
再度誤認識することは節電効果の低下を引きおこす。し
たがってこのループが消滅する予想時間に相当する遅延
時間をR3にて設定する。
【0041】《復帰タイマの起動条件について》前回の
状態監視処理200の結果がYESであった場合、条件
成立である。また、前サイクルで復帰タイマにより再ス
タートを実行した場合も条件成立である。
【0042】以上の説明で明らかなように、このシステ
ムにおいては、状態監視処理200でYESと判定され
て最初のステップ100に戻るという動作を繰返してい
る状態から、状態監視処理200で初めてNOと判定さ
れ、しかも除外条件が成立していないと、復帰タイマを
起動してパワーダウン制御を実行し、CPUへの給電を
停止する。その後復帰タイマがタイムアップするまでキ
ー入力などの復帰信号がなければ、復帰タイマがタイム
アップした時点で再スタート制御を実行し、CPUへの
給電を再開してパワーダウン前の処理を再開させる。ま
たコントローラ3は最初のステップ100から処理をや
り直す。その動作サイクルにおける状態監視処理200
でやはりNOと判定され(除外条件は不成立とする)、
しかも復帰タイマがタイムアップするまで復帰信号がな
い場合、やはりタイムアップした時点で再スタート制御
を実行する。状態が変化しなければ以上の処理を繰返す
ことになり、復帰タイマの設定時間に相当するパワーダ
ウン期間が間欠的に生じる。
【0043】パワーダウン制御を実行し、復帰タイマが
タイムアップする前にキー入力などの復帰信号が発生す
ると、その時点で再スタート制御を実行し、パワーダウ
ン前の処理を再開させる。この場合はステップ500→
600→610→200と進み、周期サーチ・アドレス
学習処理100、101、102、103は行わず、先
に決定されている時間Tc=2×Taのままで状態監視
処理200を行う。ここでやはりNOと判定された場合
(除外条件は不成立とする)、今度は復帰タイマの起動
条件は成立しないので、復帰タイマを起動せずにパワー
ダウン制御を実行する。すると復帰タイマによる再スタ
ートは行われず、キー入力などの復帰信号があって始め
て再スタート制御が行われる。
【0044】なお以上の実施例では、Tb=Taとし、
またTc=2×Taとしたが、本発明はこれに限定され
るものではない。TbはTaより適宜に大きく設定し、
Taに応じて短縮するようにしてもよいし、固定してお
いてもよい。また、TcはTaに応じて変化する時間で
あるが、Taにある一定値を足した値でもよいし、Ta
の例えば1.5倍でもよいし、Taの1.5倍に一定値
を足した値など、小ループ状態を適切に検出できるよう
に選択する。
【0045】次にこの発明の他の実施例について説明す
る。
【0046】図5のハードウェア構成では、コンピュー
タシステム1のCPUに与えるCPUクロック信号の周
波数を変えることで、CPUを高消費電力の通常モード
(高速モード)で動作させるか、低消費電力の節電モー
ド(低速モード)で動作させるかを切換えるようになっ
ている。つまり図5において、高速クロック発生回路5
1は例えば50MHzのクロック信号を出力する。低速
クロック発生回路52は例えば4MHzのクロック信号
を出力する。両クロック信号の一方が切換回路53で選
択されてCPUに供給される。切換回路53は、状態判
定・節電コントローラ3からの制御信号によって以下の
ように切換えられる。
【0047】また図5の実施例では、システムバス2の
信号を監視し、CPUがある特定のアドレスをアクセス
したのを検出して状態判定・節電コントローラ3に伝え
るためのアドレス検出回路54が付加されている。一般
に広く使用されているMS−DOSを備えたコンピュー
タシステム1の場合、どのようなアプリケーションプロ
グラム(リアルモードで動作する)を動作させていて
も、割り込みベクタテーブルは特定のアドレスに割り当
てられている。この割り込みベクタテーブル中にはキー
ボードセンシングのソフトウェア割り込み機能が設定さ
れている。したがって、前記のアドレス検出回路54で
割り込みベクタテーブル中の特定アドレスがアクセスさ
れるのを検出するように構成することで、キーボード1
が操作されたのをすばやく検出することができる。この
アドレス検出信号を以下のように節電制御に役立てる。
【0048】図6は前記第5の発明の実施例の主要な制
御手順を示すフローチャートであり、図5のハードフェ
ア構成に基づいた実施例である。
【0049】図6において、ステップ601では学習時
間Txを下限値100μsecに設定する。次ぎのステ
ップ602ではアドレス記憶・比較回路4をクリアした
後、学習時間Txだけアドレス記憶モードで動作させ
る。これにより時間Tx内にCPUがアクセスしたアド
レスブロックがアドレス記憶・比較回路4に記憶される
(これが学習アドレスである)。
【0050】次のステップ603では、学習時間Txに
応じて設定される監視時間Ty=2.5×Txのタイマ
をスタートし、アドレス記憶・比較回路4をアドレス比
較モードで動作させる。そして前記Tyタイマにより、
時間Ty内にCPUが前記学習アドレス以外をアクセス
するか否かを監視する(ステップ604、605)。時
間Ty内に学習アドレス以外がアクセスされると、その
時点でステップ604→607と進み、学習時間Txに
100μsecを加えた値を新たな学習時間Txとし、
ステップ608で学習時間Txが上限値10msecを
超えているか否かをチェックす。Txが10msec以
内であればステップ602に戻って学習処理を実行し、
Txが10msecを超えていればステップ601に戻
ってTxを下限値100μsecにしてからステップ6
02に進む。
【0051】以上のステップ601〜608では、学習
時間Txと監視時間Tyを下限値から上限値に向けて漸
増させなから、ステップ602の学習処理と、ステップ
603、604、605の監視処理を繰り返し、「時間
Ty内に学習アドレス以外がアクセスされない」という
状態を生じる時間Txのできるだけ小さな値Tx(min
)を100μsecの分解能で検出することになる。
【0052】「時間Ty内に学習アドレス以外がアクセ
スされない」という状態が検出されると、ステップ60
5から609に進み、別に設定した除外条件が成立して
いるか否かを判定し、除外条件が成立していてれば最初
のステップ601に戻るが、そうでなければステップ6
10に進み、前記切換回路53を切換えて低速クロック
発生回路52からの4MHzのクロック信号によりCP
Uを節電モードで動作させる。
【0053】そして節電モードでの動作中は、CPUが
前記学習アドレス以外をアクセスするか否かをチェック
するとともに(ステップ611)、前記アドレス検出回
路54によりキーボードが操作されたか否かをチェック
する処理(ステップ612)を繰り返し、学習アドレス
以外がアクセスされるか、あるいはキーボードが操作さ
れると、ステップ613に進む。ステップ613では、
切換回路53を切換えて高速クロック発生回路51から
の50MHzのクロック信号によりCPUを通常モード
で動作させる。なお、ステップ612の処理を行なわな
くても、キーボードから新たな入力があったことでプロ
グラム処理がループから抜け出し、「学習アドレス以外
がアクセスされる」ことになるが、ステップ612を行
うことで通常モードへの復帰をより高速にすることがで
きる。
【0054】図6の実施例ではTx、Tyを漸増させな
がらTx(min )を検出している。これに対して先に説
明した図2〜図4の実施例ではTx、Tyを漸減させな
がらTx(min )を検出しているのである。Tx(min
)をできるだけ短時間で検出するという点では図6の
実施例の方が優れている。またTx、Tyを所定のアル
ゴリズムに従ってランダムに変化させながら学習と監視
を繰返し、Tx(min )を検出することも可能である。
【0055】以上説明したすべての実施例は、TxとT
yを変化させながら学習と監視を繰返し、「時間Ty内
に学習アドレス以外がアクセスされない」という状態を
生じる学習時間Txのできるだけ小さな値Tx(min )
を適宜なアルゴリズムで検出している。次に述べる実施
例はこれと異なる。学習時間Txと監視時間Ty=2×
Tx±αを適宜に選定した比較的小さな値に固定してお
き、図7のフローチャートに示すように、時間Txの学
習の後、時間Tyの監視で「学習アドレス以外がアクセ
スされない」状態であったとき(別の除外条件が成立し
ていないとする)、CPUが実質休止状態であると判定
して節電モード(低速クロックモード)に移行する。こ
のような簡単な制御でも、Txの値が適切であれば、コ
ンピュータシステム1の実使用上の能力低下を来すこと
なく、相当大きな節電効果を上げることができる。
【0056】また以上では、CPUを低消費電力で動作
させるモードとして、適切な間隔でCPUを間欠的に動
作させる制御方式と、CPUクロックを低速に切換える
制御方式とを説明したが、この他にも電源電圧を低くす
るとか、CPUのアクセススレートをさげるなどの方法
も考えられる。
【0057】図8はアドレス記憶・比較回路4の具体的
な構成例を示している。図8において、CPUのアドレ
ス信号はアドレスデコーダ81でデコードされ、アドレ
スデコーダ81の多数の出力のうちの1つのみが“1”
となる。アドレスデコーダ81の各出力には同じ構成の
回路セル82が接続される。
【0058】回路セル82において、アドレスデコーダ
81からの入力が“1”になると、オアゲート83の出
力が“1”になる。ここで、前述のアドレス記憶モード
であると、前記状態判定・節電コントローラ3からのラ
イト信号に同期してオアゲート83の出力“1”がフリ
ップフロップ85に記憶される。アドレスデコーダ81
からの入力が“0”である他の回路セル82では、フリ
ップフロップ85には“0”が記憶される(“0”にリ
セットされたままである)。
【0059】次にアドレス比較モードになると、ライト
信号は供給されず、フリップフロップ85の内容は変わ
らない。アドレスデコーダ81からの入力が“1”とな
るある1つの回路セル82において、フリップフロップ
85の出力が“1”であれば、アンドゲート84の出力
が“1”となり、したがってオアゲート86の出力が
“1”となる。この回路セル82のフリップフロップ8
5の出力が“0”であれば、オアゲート86の出力が
“0”である。一方、アドレスデコーダ81からの入力
が“0”である他のすべての回路セル82においては、
オアゲート86の出力は“1”となる。そして、すべて
の回路セル82のオアゲート86の出力がアンド回路8
7で論理積をとられ、その結果が比較出力となり、状態
判定・節電コントローラ3に供給される。
【0060】つまり、アドレス記憶モードの時間Tx内
に幾つかの回路セル82のフリップフロップ85には
“1”が記憶される。そしてアドレス比較モードにな
り、学習アドレス以外がアクセスされなければアンド回
路87の出力は“1”に保たれるが、学習アドレス以外
がアクセスされるとアンド回路87の出力が“0”にな
る。
【0061】なお、アドレス記憶・比較回路4の構成は
前述した構成に限定されるものではない。例えば、アド
レス記憶モードでCPUがアクセスしたアドレスに
“1”を書き込むようにしたRAMを設け、アドレス比
較モードで前記RAMから“0”が出力されると「学習
アドレス以外がアクセスされた」と判定する構成でもよ
い。
【0062】
【発明の効果】この発明によるコンピュータシステムの
状態監視方法によれば、コンピュータシステムが実行す
るソフトウェアに特別な手を加えるのではなく、またコ
ンピュータシステムが実行するソフトウェアを予め解析
しておくのではなく、コンピュータシステムが何らかの
不特定のソフトウェアを実行している実動作中に、CP
Uが小ループのプログラム処理を繰返していて実質的な
仕事の起動を待っている状態、すなわち実質休止状態に
なっている可能性が大であることを相当高い確率で検出
することができる。
【0063】この方法を用いて実質休止状態を検出し、
CPUのパワーダウン制御を行うようにすれば、CPU
が次のキー入力を待っているほんの数ミリ秒から数秒程
度の実質休止状態に対してもパワーダウンを実施するこ
とができ、従来のパワーダウン制御方法に比べて節電効
果は極めて大きなものとなる。
【0064】なお本発明の状態監視方法の応用としてパ
ワーダウン制御について説明したが、この方法を他の目
的にも応用することができる。
【図面の簡単な説明】
【図1】第3の発明の状態監視方法を応用した節電制御
装置を付加したコンピュータシステムの概略構成図。
【図2】図1における状態判定・節電コントローラ3の
処理手順を示すフローチャートその1。
【図3】同上フローチャートその2。
【図4】同上フローチャートその3。
【図5】第2の発明の状態監視方法を応用した第5の発
明の節電制御装置を付加したコンピュータシステムの概
略構成図。
【図6】図5における状態判定・節電コントローラ3の
処理手順を示すフローチャート。
【図7】第4の発明の状態監視方法を応用した第6の発
明の節電制御装置の処理手順を示すフローチャート。
【図8】アドレス記憶・比較回路の具体例を示す回路
図。
【符号の説明】
3 状態判定・節電コントローラ 4 アドレス記憶・比較回路

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 所定時間Tx内にCPUがアクセスした
    アドレスを適宜なアドレスブロックに区分して記憶する
    処理Aと(ここで記憶したアドレス群またはアドレスブ
    ロック群を学習アドレスとする)、その直後に前記時間
    Txに応じて定まる所定時間Ty内に前記CPUが前記
    学習アドレス以外のアドレスをアクセスしたか否かを監
    視する処理Bとを、前記時間TxとTyを適宜範囲内で
    適宜に変化させながら繰返し、前記時間Ty内に前記学
    習アドレス以外がアクセスされないという状態を生じる
    前記時間Txのできるだけ小さな値Tx(min )を適宜
    なアルゴリズムにより適宜な分解能で検出し、そのTx
    (min )を検出したときに前記CPUがTx(min )以
    下の周期で小ループのプログラム処理を繰返していて実
    質休止状態になっている可能性が大であると判定するこ
    とを特徴とするコンピュータシステムの状態監視方法。
  2. 【請求項2】 請求項1の方法において、前記時間Tx
    とTyを下限値から上限値に向けて漸増させなが前記処
    理Aと処理Bを繰返し、前記Tx(min )を検出するこ
    とを特徴とするコンピュータシステムの状態監視方法。
  3. 【請求項3】 コンピュータシステムのシステムバスの
    信号を以下のように監視し、CPUが小ループのプログ
    ラム処理を繰返していて実質的な仕事の起動を待ってい
    る実質休止状態になっている可能性が大であると判定す
    ることを特徴とするコンピュータシステムの状態監視方
    法。(処理1) 一定時間Ta内にCPUがアクセスし
    たアドレスを適宜なアドレスブロックに区分して記憶す
    る。ここで記憶したアドレス群またはアドレスブロック
    群を学習アドレスとする。(処理2) 一定時間Tb内
    にCPUが学習アドレス以外のアドレスをアクセスした
    か否かを監視する。(処理3) 処理2において前記学
    習アドレス以外がアクセスされなかった場合、前記時間
    TaとTbのうちの少くともTaを適宜に短くして処理
    1と処理2を再度行い、処理2において前記学習アドレ
    ス以外へのアクセスが検出されるまで時間Taを短縮し
    ながら処理1と処理2を繰返す。(処理4) 処理2に
    おいて前記学習アドレス以外へのアクセスが検出された
    場合、そのときの時間Taに応じて設定されたTaより
    適宜に長い一定時間Tc内にCPUが前記学習アドレス
    以外のアドレスをアクセスしたか否かを監視し、前記学
    習アドレス以外がアクセスされなかった場合にCPUが
    前記実質休止状態になっている可能性が大であると判定
    する。
  4. 【請求項4】 適宜に設定した一定時間Tx内にCPU
    がアクセスしたアドレスを適宜なブロックに区分して記
    憶する処理Aと(ここで記憶したアドレス群またはアド
    レスブロック群を学習アドレスとする)、適宜に設定し
    た一定時間Ty内に前記CPUが前記学習アドレス以外
    のアドレスをアクセスしたか否かを監視する処理Bとを
    繰返し、前記時間Ty内に学習アドレス以外のアドレス
    がアクセスされなかったときに前記CPUが前記Tx以
    下の周期で小ループのプログラム処理を繰返していて実
    質休止状態になっている可能性が大であると判定するこ
    とを特徴とするコンピュータシステムの状態監視方法。
  5. 【請求項5】 CPUを高消費電力の通常モードで動作
    させるか低消費電力の節電モードで動作させるかを切換
    え制御する手段aと、所定時間Tx内にCPUがアクセ
    スしたアドレスを適宜なアドレスブロックに区分して記
    憶する手段bと(ここで記憶したアドレス群またはアド
    レスブロック群を学習アドレスとする)、この手段bの
    動作に続いて前記時間Txに応じて定まる所定時間Ty
    内に前記CPUが前記学習アドレス以外のアドレスをア
    クセスしたか否かを監視する手段cと、前記CPUが前
    記通常モードで動作している状態において前記時間Tx
    とTyを適宜範囲内で適宜に変化させながら前記手段b
    とcの動作を繰返し、前記時間Ty内に前記学習アドレ
    ス以外がアクセスされないという状態を生じる前記時間
    Txのできるだけ小さな値Tx(min )を適宜なアルゴ
    リズムにより適宜な分解能で検出する手段dと、この手
    段dにより前記Tx(min )を検出したときに別に設定
    した除外条件が成立していなければ前記CPUを前記節
    電モードで動作させる手段eと、前記CPUが前記節電
    モードで動作しているときに前記学習アドレス以外のア
    ドレスをアクセスすることを検出する手段fと、この手
    段fにより前記学習アドレス以外のアクセスが検出され
    たときに前記CPUを前記通常モードで動作させる手段
    gとを備えたことを特徴とするコンピュータシステムの
    節電制御装置。
  6. 【請求項6】 CPUを高消費電力の通常モードで動作
    させるか低消費電力の節電モードで動作させるかを切換
    え制御する手段aと、所定時間Tx内にCPUがアクセ
    スしたアドレスを適宜なアドレスブロックに区分して記
    憶する手段bと(ここで記憶したアドレス群またはアド
    レスブロック群を学習アドレスとする)、この手段bの
    動作に続いて所定時間Ty内に前記CPUが前記学習ア
    ドレス以外のアドレスをアクセスしたか否かを監視する
    手段cと、前記CPUが前記通常モードで動作している
    状態において前記手段bとcとの動作を繰返し、前記時
    間Ty内に前記学習アドレス以外のアクセスが検出され
    なかったときに別に設定した除外条件が成立していなけ
    れば前記CPUを前記節電モードで動作させる手段e
    と、前記CPUが前記節電モードで動作しているときに
    前記学習アドレス以外のアドレスをアクセスすることを
    検出する手段fと、この手段fにより前記学習アドレス
    以外のアクセスが検出されたときに前記CPUを前記通
    常モードで動作させる手段gとを備えたことを特徴とす
    るコンピュータシステムの節電制御装置。
JP3345560A 1990-12-28 1991-12-26 コンピュータシステムの状態監視方法および節電制御装置 Expired - Lifetime JPH0695303B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP3345560A JPH0695303B2 (ja) 1990-12-28 1991-12-26 コンピュータシステムの状態監視方法および節電制御装置
PCT/JP1992/000218 WO1993013480A1 (en) 1991-12-26 1992-02-27 Condition monitor method for computer system and power saving controller
US07/886,649 US5430881A (en) 1990-12-28 1992-05-20 Supervisory control method and power saving control unit for computer system
EP92906159A EP0573651A1 (en) 1991-12-26 1993-07-20 Condition monitor method for computer system and power saving controller
US08/417,028 US5475848A (en) 1990-12-28 1995-04-05 Supervisory control method and power saving control unit for computer system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP41556790 1990-12-28
JP2-415567 1990-12-28
JP3345560A JPH0695303B2 (ja) 1990-12-28 1991-12-26 コンピュータシステムの状態監視方法および節電制御装置

Publications (2)

Publication Number Publication Date
JPH0689130A true JPH0689130A (ja) 1994-03-29
JPH0695303B2 JPH0695303B2 (ja) 1994-11-24

Family

ID=26578051

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3345560A Expired - Lifetime JPH0695303B2 (ja) 1990-12-28 1991-12-26 コンピュータシステムの状態監視方法および節電制御装置

Country Status (1)

Country Link
JP (1) JPH0695303B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0944377A (ja) * 1995-07-27 1997-02-14 Nec Niigata Ltd 無限ループ検出装置
JP2007272581A (ja) * 2006-03-31 2007-10-18 Fujitsu Ltd 監視プログラム、監視方法、および、監視装置
JP2013250962A (ja) * 2012-05-01 2013-12-12 Semiconductor Energy Lab Co Ltd 半導体装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0944377A (ja) * 1995-07-27 1997-02-14 Nec Niigata Ltd 無限ループ検出装置
JP2007272581A (ja) * 2006-03-31 2007-10-18 Fujitsu Ltd 監視プログラム、監視方法、および、監視装置
JP2013250962A (ja) * 2012-05-01 2013-12-12 Semiconductor Energy Lab Co Ltd 半導体装置
US9703704B2 (en) 2012-05-01 2017-07-11 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
JP2018088256A (ja) * 2012-05-01 2018-06-07 株式会社半導体エネルギー研究所 半導体装置

Also Published As

Publication number Publication date
JPH0695303B2 (ja) 1994-11-24

Similar Documents

Publication Publication Date Title
US5430881A (en) Supervisory control method and power saving control unit for computer system
JP3058986B2 (ja) コンピュータシステムの節電制御装置
JP3090767B2 (ja) コンピュータシステムの節電制御装置
US5586332A (en) Power management for low power processors through the use of auto clock-throttling
EP0749060B1 (en) A clock system
EP1653331A2 (en) An apparatus and method for entering and exiting low power mode
US8522054B2 (en) Stand-by mode management method for use in a stand-by mode of a computer system with stand-by mode management module
JP2002163045A (ja) コンピュータシステム及びその待機モード制御方法
US6694442B2 (en) Method for saving power in a computer by idling system controller and reducing frequency of host clock signal used by system controller
CN105353864A (zh) 电子设备静态功耗管理方法和系统
TWI485623B (zh) 快速喚醒電腦系統方法與電腦系統
US7219248B2 (en) Semiconductor integrated circuit operable to control power supply voltage
US20050108585A1 (en) Silent loading of executable code
JPH0689130A (ja) コンピュータシステムの状態監視方法および節電制御装置
WO1993013480A1 (en) Condition monitor method for computer system and power saving controller
WO2012126345A1 (zh) 计算机的启动方法、启动装置、状态转换方法和状态转换装置
TWI489260B (zh) 待機管理方法及其相關待機管理模組及電腦系統
JP4659627B2 (ja) 電子機器
JPH10333789A (ja) コンピュータ
IL99027A (en) Control supervision method for computer system
JPH06124150A (ja) マイクロプロセッサの駆動制御装置
JP3490037B2 (ja) コマンドパケット自動受信シーケンス回路
JPH0883133A (ja) コンピュータシステム及びそのクロック制御方法
JP3047534B2 (ja) 電力低消費システム
JPH0588775A (ja) クロツク切替え方式