JPH07507406A - システム・クロック速度コントローラ - Google Patents

システム・クロック速度コントローラ

Info

Publication number
JPH07507406A
JPH07507406A JP3516290A JP51629091A JPH07507406A JP H07507406 A JPH07507406 A JP H07507406A JP 3516290 A JP3516290 A JP 3516290A JP 51629091 A JP51629091 A JP 51629091A JP H07507406 A JPH07507406 A JP H07507406A
Authority
JP
Japan
Prior art keywords
clock
frequency
signal
software
interrupt
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
Application number
JP3516290A
Other languages
English (en)
Inventor
バレット,デーヴィッド・エム
ルトゥールネオー,メアリー
マーティン,パトリシア・エイ
マクナリー,マイケル・ジェイ
Original Assignee
ウォング・ラボラトリーズ・インコーポレーテッド
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 ウォング・ラボラトリーズ・インコーポレーテッド filed Critical ウォング・ラボラトリーズ・インコーポレーテッド
Publication of JPH07507406A publication Critical patent/JPH07507406A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3215Monitoring of peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/08Clock generators with changeable or programmable clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • 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

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)
  • Information Transfer Systems (AREA)
  • Control Of Eletrric Generators (AREA)
  • Control Of Electric Motors In General (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるため要約のデータは記録されません。

Description

【発明の詳細な説明】 システム・クロック速度コントローラ 発明の背景 「ラップトツブ」コンピュータと呼ばれているポータプル・コンピュータの持運 び容易性は、いうまでもな(、そのコンピュータの全体寸法と総重量とに左右さ れる。この数年来、ラップトツブ・コンピュータの生産者にとっての至上命題は 、新たに製造するコンピュータ重量を間断なく軽量化し続けると共に、しかもそ のコンピュータの計算機としての能力は、一定の水準に維持するか、或いはむし ろ更に向上させねばならないということであった。事実、ラップトツブ・コンピ ュータにおける小型軽量化、計算速度の高速化、及び情報記憶容量の増大に関す る最近の進歩の速度には目を見張るものがある。また、間断なく続いた全体寸法 の小型化の結果、最も新しいハンドベルト型の製品は、その名も「ノートブック 型」コンピュータと呼ばれるまでになっている。
コンピュータの総重量のうち、電源、即ちバッテリが占める割合は決して小さく ない。かつては数ポンド(1ボンド=約450グラム)の重さのバッテリでも普 通に使用されていたが、現在ではバッテリの重量は、ボンド単位ではなくオンス 単位(1オンス=約28グラム)で計られる程度のものでなければならなくなっ ている。つい最近までのバッテリは、そのバッテリの重量だけで、現在のコンピ ュータのバッテリまでも含めた総重量を超えていた。現在では、ノートブック型 コンピュータを製造するならば、その製品の総重量を約6ポンド(約2.7キロ グラム)程度に抑えることが望まれており、そのうち、電源の重量に当てること ができるのは、僅か1ボンド(約450グラム)に過ぎない。
一般的に、バッテリの容量は、そのバッテリの寸法に左右される。従って、バッ テリ寸法を小さくすれば、その電源容量が低下せざるを得ない。典型的な例では 、コンピュータ・システムをバッテリで駆動する際の可能な駆動時間は、連続使 用の場合で約2時間程度までである。コンピュータ・システムの消費電力を小さ くすれば、バッテリを交換ないし再充電せずにコンピュータ・システムを駆動す ることのできる時間を延長することができる。そのため、この数十年来、ディジ タル・エレクトロニクスの小型化及び高集積化が急速に進められており、その結 果、ディジタル回路の消費電力は著しく小さなものとなってる。
ポータプル・コンピュータの小型化及び軽量化は間断なく続いているが、−通り の構成要素を装備しておかねばならないことには変わりはない。装備しておくべ き構成要素には、例えば、ハードディスク・ドライブ、フロッピーディスク・ド ライブ、ディスプレイ、キーボード、それにプロセッサ等がある。これら構成要 素はいずれも、多かれ少なかれ電力を消費する。従来の省電力のための方式には 、これら構成要素のうちの1つないし幾つかについて、その構成要素が使用され ていないときには、その構成要素への電力の供給を停止するようにした方式が多 々見られたが、実際に使用したときの問題として、それら構成要素のうちのある もの(例えばディスプレイ等)については、コンピュータの使用中は動作状態の ままに維持しておくことが、ユーザにとって必要である。
ポータプル・コンピュータにおいては、また特にノートブック型コンピュータで は、以上に加えて更に、放散せねばならない熱の量を減らすことも望まれている 。ロジック素子から発生する熱の量をできる限り減らすためには、そのロジック 素子をCMO5形のものとすれば良く、なぜならばCMO3形のロジック素子は 、TTL形やECL形のロジック素子のように電流が連続的に流れておらず、ス イッチング時にしか電流が流れないからである。ただし、6MO8形のロジック 素子を使用した場合でも、熱の発生を完全に回避できる訳ではない。発生した熱 を放散するために従来はヒート・シンクや冷却ファン等のデバイスを使用してお り、それによって動作可能温度を維持するようにしていた。しかしながら、その 種のデバイスを使用すれば、コンピュータの全体寸法及び総重量がその分増大せ ざるを得ない。のみならず、冷却ファン等のデバイスを使用した場合には、更に そのデバイス自体がシステムのバッテリの電力を消費するため、バッテリが充電 状態でいられる時間が更に短縮されてしまう。
電力消費量及び熱発生量を小さく抑えるためには、システム・クロックのクロッ ク速度を低下させれば良い。しかしながら、フォアグラウンド処理とバックグラ ウンド処理とを含めた全てのプロセッサ機能の処理速度と、プロセッサの入出力 の帯域幅とは、システム・タロツク速度に左右される。それゆえ、システム・ク ロック速度を低下させるという方法を採用することには問題があり、それは、シ ステム・クロック速度を低下させることによって、性能が劣化するからである。
例えば、情報処理のタスクを完了するまでにかかる時間は、クロック速度に比例 している。ユーザに、可能な最大限の性能を提供するためには、システムが可能 な最高の速度で動作するようにしておかねばならない。更には、バックグラウン ド処理のうちには、例えば通信プログラムやファクシミリ・スプーラ−等のよう に、システム・クロック速度を低下させたならば、正常に動作できなくなるもの もある。
ポータプル・コンピュータの必要電力量を低く抑えるための従来の方式の1つに 、ソフトウェアに然るべき信号を発生させ、その信号によって、そのソフトウェ アが現在、ユーザからの入力を待っている待ち状態にあり、システム・クロック 速度を低下させるべきであるということとを表示させるようにした方式があった 。
この方式では、例えばキーの押下等の待ち事象が発生したならば、そのソフトウ ェアが、クロック速度を高速化する処理を開始する。このときのクロック速度を 高速化する処理は、ユーザに気付かれずに行なうことができる。ただし、クロ・ ツク速度を低下させることによって通信等のその他のバックグラウンド・タスク に悪影響が及ぶおそれがあるため、一般的に、そのシステムがネットワークに接 続されているときには、プロセッサの動作速度を低下させないでおくことが奨め られている。そうしておかねばならないとしても、それによって不都合が生じる ことは一般的になく、なぜならば、システムがネットワークに接続されていると きは、通常そのシステムは、壁の電源コンセントに接続できる状況にあるからで ある。
実際に、様々なシステムのうちには、そのシステムがバッテリ電源で駆動されて いるときにだけ、即ち、バッテリで駆動されていることからそのシステムがネッ トワークに接続されていないと推定されるときにだけ、クロック速度を低下させ るようにしたものもある。
発明の概要 たとえ使用可能な電力の大きさに制約がない場合であっても、クロ・ツク周波数 を低速化し得るようなシステムとしてお(ことが望ましく、それは、それによっ てシステムが発生する熱をできる限り少なくすることができるからである。発生 熱量をできる限り少なくすることによって冷却ファンの必要性が低下し、場合に よっては冷却ファンを不要化することもでき、また、交流−直流変換電源の寸法 を小型化することもできるため、装置の全体寸法を小型化し総重量を軽減するこ とが可能になる。本発明では、システムが待ち状態にある間は常にシステム・ク ロック周波数を低下させておき、ただしその間に、より高いクロック周波数が必 要であることを示す何らかの状況が生じたならば、クロック制御回路がその状況 に応答して即座に、そのシステム・クロック周波数を元の通常周波数へ復帰させ るようにしている。
本発明によれば、処理装置が、メモリに格納されているソフトウェア・ルーチン を実行し、その実行の際の周波数は、クロック制御回路が発生しているシステム ・クロックによって定められる通常周波数である。クロック制御回路は、処理装 置の中で実行されているソフトウェア・ルーチンに応答してシステム・クロック を低速化する回路部を含んでいる。システム・クロ・ツクを低下させておくのは 、例えば、アプリケーション・ソフトウェアがキーの押下を待っている間等であ る。
クロック制御回路は更に、処理装置への割込みに応答して、いかなるソフトウェ ア・ルーチンとも無関係にシステム・クロックを通常周波数へ復帰させる回路部 を含んでいる。好適実施例においては、クロック制御回路は、処理装置が発する 割込み肯定応答(acknowledge)を表わすシステム・バス上の信号を デコードしたならば、システム・クロックを通常周波数へ復帰させるようにして いる。
好ましくは、アプリケーション・ソフトウェアが、基本人出カシステム(BiO 2)ソフトウェアのルーチンの中の待ちサイクルを開始させ、そしてこのBIO Sソフトウェアのルーチンが、周期的にシステム・クロックを低速周波数にセッ トさせるようにしておくのが良い。また、このBIOSソフトウェアを、待ち事 象が発生したならば、クロック制御回路に、システム・クロ・ツクを通常周波数 へ復帰させるものとしておくのが良い。
ハードウェア条件を緩和するためには、システムが周波数を変更する際に、周波 数を段階式に変更して行くようにしておけば良い。第1回の段階的な周波数の変 更と第2回の段階的な周波数の変更とは、処理装置が発する割込み肯定信号に応 答する信号がデコードされたならば開始されるようにしておくことができる。
それらに続いて更に段階的な周波数の変更を行なう場合には、その段階的な周波 数の変更が、遅延させた割込み肯定信号によって開始されるようにしておくこと ができる。
好ましくは、システム・クロックが第1クロツク信号とこの第1クロツク信号の 2倍の周波数の第2クロツク信号とを発生するようにしておき、また、クロック 制御回路が、現在の第1クロツク信号と、現在の第2クロツク信号と、新たな第 2クロツク信号とのタイミングによって制御される時に、新たな第2周波数選択 信号をラッチするようにしてお(のが良い。
本発明の具体的な一実施例においては、クロック・ソースが、システム・クロッ クとして使用可能な全てのクロック信号を発生するようにしている。また、選択 回路が、それら使用可能なりロック信号のうちの1つをシステム・クロックとし て選択するようにしている。この選択回路は、処理装置の中で実行されているソ フトウェア・ルーチンから新たなシステム・クロック周波数を選択するためのデ ータ入力を受け取るようにしたソフトウェア応答回路を含んでいる。この選択回 路は更に、現在のシステム周波数と通常クロック周波数とに応じた新たなシステ ム・クロック周波数を選択するようにした割込み応答回路を含んでいる。これら ソフトウェア応答回路と割込み応答回路との一方から発せられた新システム・ク ロック選択信号は、周波数レジスタへ供給されてラッチされる。周波数レジスタ の中に新システム・クロック選択信号をラッチするラッチ動作は、現在のシステ ム・クロックと選択されたシステム・クロックとの間の位相関係を適切に確立し てクロックのデユーティ・サイクルを適切に維持するための回路によって、同期 が取られるようにしである。
通常クロック周波数は、処理装置の中で実行されているソフトウェア・ルーチン がその値をレジスタの中へ書き込み、その書き込まれた値を、割込み応答回路が 読み取るようにしても良い。またソフトウェアが、低速周波数の表示をレジスタ の中に格納するようにしても良い。また、割込み応答回路を然るべ(イネーブル することにより、第1の割込み肯定信号に応答して周波数における第1の段階が 行なわれ、必要ならば第2の割込み肯定信号に応答して第2の段階が行なわれ、 更に必要ならば遅延させた割込み肯定信号に応答して第3の段階が行なわれるよ うにすることもできる。好ましくは、システムが第1システム・クロック信号と この第1システム・クロック信号の2倍の周波数の第2システム・クロック信号 とを発生するようにしておき、また、クロック制御回路が、クロック周波数の切 換動作を、現在の第1システム・クロック信号と、現在の第2システム・クロッ ク信号と、新たな第2システム・クロック信号とに同期させる。
図面の簡単な説明 本発明の以上の目的、特徴、及び利点、並びにその他の目的、特徴、及び利点が 、以下に提示する、添付図面に示した本発明の好適実施例についてのより詳細な 説明から明らかになる。尚、添付図面においては、異なった図に示されていても 同一の構成要素であれば同一の引用符号を付しである。
図1は、入力デバイスとしてスタイラスを備えたラップトツブ・コンピュータの 斜視図である。
図2は、図1に示したコンピュータの、電子回路の部分のシステム・ブロック図 である。
図3は、本発明を構成しているソフトウェアの概要を示した模式図である。
図4は、図2中のシステム・クロック制御回路ブロック図である。
図5は、図3中のBIOSソフトウェアの待ちループ・ルーチン並びにBiO2 の高速化ルーチンのフローチャートである。
図6は、図4中のクロックMUX制御回路の概略図である。
図7は、図6の回路の、割込み肯定応答サイクルに対する応答を例示したタイミ ング・チャートである。
図8は、図6中の周波数/位相デコーダのロジック図である。
図9は、図6中の周波数レジスタ/シンクロナイザ並びに図4中のクロック・マ ルチプレクサの概略図である。
図10Aは、周波数を16MHzから8MHzへ低速化するときの動作を例示し たタイミング・チャートであり、図10Bは、周波数を8MHzから16MHz へ高速化するときの動作を例示したタイミング・チャートである。
好適実施例の説明 図1には、本発明の実施例にかかるポータプル・コンピュータであるラップトツ ブ・コンピュータを示した。ハウジング12は、その全体寸法を12X12X1 ゜5インチ(約305X305X38ミリメートル)に納まる寸法にしである。
ハウジング12の中には、マイクロプロセッサを使用したコンピュータのフル・ システムと、ハードディスク・ドライブとが収容されている。ユーザ・インター フェースは、液晶ディスプレイ14とスタイラス16とによって提供されるよう にしである。即ち、ディスプレイ14に対するスタイラス16の相対的な位置が 、ディスプレイ14に重ねられている透明テンプレートによって検出されるよう にしである。更に、このシステムにキーボードを接続するためのボートも装備さ れている(示さず)。このシステムは、壁のコンセントから電源を取ることもで き、また、4個のC形二ノカド電池を組合せたバッテリを電源とすることもでき るようにしである。バッテリは、その中の各々のニッカド電池を定格電圧が約1 .5ボルトのものとし、このバッテリの全体では最大電圧が5.7〜6.6ボル トとなるようにし、この電圧を5.5ボルトにクランプする。このバッテリの重 量は、約1ポンド(約450グラム)であり、一方、このバッテリを含めたシス テムの総重量は約5ボンド(約2.3キログラム)である。
図2は、システム・ブロック図を示している。中央処理装置(CPU)18には 、例えばインテル社製の「80386SX」型マイクロプロセッサ等を用いるこ とが好ましい。CPU18は、システム・バス・アダプタ20を介して、システ ムの中のその他の構成要素との間で通信を行なう。システム・バス・アダプタ2 0には、ウェスタン・ディジタル・チップセットのものを使用することができ、 rWD6000J、rWD6010J、rWD6020J、それに「WD 30 36」等の型番のものがある。システム・バス・アダプタ20は、バス仲裁(a rbitration)回路と、割込みコントローラと、直接メモリ・アクセス ・コントローラ(DMAコントローラ)とを含んでいる。CPU18は、このシ ステム・バス・アダプタ20を介して、システム・メモリ22、BIO5用プロ グラマブル・リード・オンリ・メモリ(FROM)21、直並列通信コントロー ラ23、及びシステム・バス24との間で通信を行なう。システム・バス24の 上には、システム・クロック制御回路26が置かれている。後に詳述するが、こ のシステム・クロック制御回路26は、クロック・ソース28から64MHz( メガヘルツ)のクロック信号を受け取って、クロック信号CLKと、このクロッ ク信号CLKの2倍の周波数のクロック信号CLK2とを発生する。また、本発 明のこの実施例では、クロック信号CLK2を、4MHz、8MHz、16MH z、及び32MHzのうちの任意の周波数に設定し得るようにしである。
システム・バス24の上には更に、ディジタル信号処理装置(DSP)サブシス テム30と、ビデオ・グラフィックス・アダプタ(VGA)46と、システム・ バス・インターフェース32とが置かれている。これらのうち、システム・バス ・インターフェース32は、小規模コンピュータ・システム・インターフェース ・デバイス(SC3Iデバイス)34、ハード・メモリ・ディスク36、及びユ ーザ・インターフェース38との間の通信を可能にしている。5CSIデバイス 34は、例えば、システムに外部メモリ・ディスク・ドライブを接続するときな どに使用される。ユーザ・インターフェース38は、このシステムに接続されて いるディスプレイ装置電子回路40やスタイラスのタブレット42、そしてキー ボード44へのインターフェースを提供する。ディスプレイ装置40は、ユーザ ・インターフェース38を介してビデオ・グラフィックス・アダプタ46と共用 されている。構成要素の全ては、電源47から電力を得ており、この電源47の 中にはバッテリが含まれている。
図3は、システム・クロックの低速化及び高速化の手順の概要を示した図である 。アブリケーンヨン・ソフトウェア48を処理(プロセッシング)しているとき には、システムは通常周波数で動作しており、この通常周波数は、ユーザがソフ トウェアを介して設定されるか、またはCLK2に対する32MHzのデフオー ルド周波数である。一方、このシステムが、プロセッシングを更に進めるために 何らかの事象、例えばキーの押下やスタイラス16の移動操作等、が発生するの を待たねばならない状況になったならば、FROM21は待ちループ50に入る 。BIOSソフトウェアは、この待ちループの中にある間、周期的にシステム・ クロック制御回路26に対して要求を発して、システム・クロック周波数を、ユ ーザが予め設定したか或いはデフオールドで規定された最低クロック周波数に、 低速化させる。キーの押下等の待ち事象が発生し、それがBIOSソフトウェア によって検出されたならば、BIOSソフトウェアは高速化ルーチン52へ入る 。
この高速化ルーチンの中へ入ったならば、BIOSソフトウェアは、システム・ クロック制御回路26へ向けて信号を送出して、クロック速度を通常動作周波数 に高速化させる。この後システムは、アプリケーション・ソフトウェア48ヘリ ターンして、その待ち事象に対して然るべき応答をする。
本発明が解決する問題は、待ち事象以外の事象もまた発生し得るという問題であ る。更に詳しくは、その待ち事象以外の事象が、即座にシステム・クロックを高 速化しなければ情報が失われてしまう種類の事象であることもあり得るという問 題である。例えば、直並列通信コントローラ23を介してデータが到着し始めた ときに、もしシステムが即座に通常動作周波数に復帰しなかうたならば、そのデ ータが失われてしまう可能性が大きい。
本発明のこの実施例では、システム・クロック制御回路26にシステムを監視さ せ、そこに発生する割込みを検出させるようにしている。割込みが検出されたな らば、このシステム・クロック制御回路26のハードウェアが、いかなるソフト ウェアのルーチンとも無関係に、即座にCLK及びCLK2をそれらの通常周波 数に復帰させる。従って、割込み処理機構54がその割込みに対する応答をする 時点では、既にシステムは通常周波数で動作している。この割込み処理機構のル ーチンが終了するまで、/ステムはそのまま通常動作周波数に維持される。そし て、次に、このルーチンに割り込まれたために中断されていたルーチン、この場 合はBIO8の待ちループ50、ヘリターンする。この待ちループ50には、周 期的に実行されるクロック周波数の低速化の手順を組み込んであるため、現時点 でのクロック周波数の状態の如何にかかわらず、この後システムは速やかに、低 速周波数で動作する状態へ復帰する。
図4は、システム・クロック制御回路26のブロック図である。図示の回路は4 個のレジスタ56.58.60、及び62を含んでおり、それらはシステム・バ ス24に接続されている。それらのレジスタの中に、アプリケーション・ソフト ウェア48がデータを書き込めるようにしてあり、その書き込んだデータを、B IOSソフトウェアが低速化ないし高速化の手順を実行する際に利用したり、シ ステム・クロック制御回路26のハードウェアが高速化の手順を実行する際に利 用するようにしている。より詳しく説明すると、レジスタ56は、2個のビット の中に、ユーザまたはデフオールドによって選択された最低クロック周波数を記 憶する。それら2個のビットは、CLK2の4通りの周波数、4MHz、8MH Z s 16 MHz 、及び32MHzのうちの1つを符号化して表わしてい る。B■○Sソフトウェアは、システムの低速化を実行するときには、レジスタ 56に示されている周波数にまで低下させる。レジスタ58は、BIOSソフト ウェアが認識している現在クロック周波数を記憶する。この周波数は、BIOS ソフトウェアが周波数の低速化または高速化を実行したときには、その都度設定 し直されるが、一方、割込みに応答して高速化が実行されたときには影響されな い。速度切換イネーブル・レジスタ60は、BIOSソフトウェアが利用するレ ジスタであり、BIOSソフトウェアのルーチンがソフトウェアによる低速化な いし高速化を実行している間に、システム・クロック制御回路26が割込み高速 化を実行することがないように、それを防止するためのレジスタである。通常ク ロック周波数レノスタ62は、BIOSソフトウェアと、割込み高速化を行なう ハードウェアとの両方が利用するレジスタであり、通常動作周波数を設定してお くレジスタである。
クロック・ソース28から入力信号として64MHzのクロック信号を受け取っ ているクロック分周回路64が、クロック信号CLK2をその4通りの可能な周 波数で常時送出しており、従って、4通りの周波数のクロック信号CLK2が常 時使用可能となっている。そして、それら4通りの周波数のクロック信号のうち の1つが、クロック・マルチプレクサ(クロックMUX)66を介して選択され ることにより、CLK2線上へ送出される信号が決定される。更に、CLK2信 号をフリップフロップ68の中で2分の1に分周することによって、CLK信号 を発生させている。尚、適当な1つの周波数を選択させているのは、クロックM UX制御回路70である。
より単純な回路素子等を使用して周波数の切換を簡明に行なえるようにするため に、クロックMUX制御回路70は、現在の周波数を2倍にすること及び2分の 1にすることだけができる、段階的な周波数の変更のみが可能な回路にしである 。そのため、例えばシステムが現在4MHzで動作しており、この動作周波数を 、通常動作周波数である32MHzへ復帰させるという場合には、このクロック MUX制御回路70は、クロックMUX66を通じて先ず8MHz、そして16 MHzを選択して、復帰させる。また、全ての信号のデユーティ・サイクルと位 相とを適切に維持するためには、周波数を変更するタイミングも重要である。
これらの機能はいずれも、クロックMUX制御回路70が果たしている。
図5は、BIO3の待ちループ50及び高速化ルーチン52のフローチャートで ある。ステップ250から低速化ルーチンが始まる。ステップ251では、速度 切換イネーブル・レジスタ60をセットして、低速化ルーチンを実行している間 、ハードウェアによる速度切換割込みが発生しないように、その割込みをディス エーブルする。この待ちループのサイクルの間に割込みがはいり、高速化が実行 されていることもあり得るため、システムは、この待ちルーチンの前回のループ においてCLK2信号のクロック周波数を低速化した状態であっても、このCL K2信号が32MHzになっているものと想定する。ステップ252では、最低 クロック周波数が32MHzよりも低い周波数に設定されているか否かを判定す る。もしそうであったならば、ステップ254において、クロックMUX制御回 路70に、CLK2信号の周波数を16MHzへ低下させ、その新たな周波数を 現在クロック周波数レジスタ58の中へ書き込む。続いてステップ256におい て、システムは、レジスタ56に格納しである最低クロック周波数と16MHz とを比較する。もし最低クロック周波数が、それより低い周波数であったならば 、クロックMUX制御回路70によって更に周波数を8MHzに低下させ、その 8MHzという周波数を現在クロック周波数レジスタ58の中へ書き込む。最後 に、ステップ260において、最低クロック周波数と8MHzとを比較し、もし 最低クロック周波数が8MHzよりも低かったならば、ステップ262でシステ ムを4MHzにセットさせる。一方、以上の比較ステップ252.256.26 0のうちのいずれかにおいて、現在クロック周波数と最低クロック周波数とが等 しいと判定されたならば、システムは、そこからステップ264を実行すること になる。ステップ264では、速度切換イネーブル・レジスタ60をリセットす ることによって、速度切換及び割込みをイネーブルにする。
続いてシステムは、メモリに記憶させであるステータス・ビットを調べて、待ち 事象が発生したか否かを判定する。もし待ち事象が発生していたならば、システ ムは高速化ルーチン52へ移行する。一方、待ち事象が発生していなかったなら ば、BIOSソフトウェアは、所定時間の待ちステップ267を経て戻り、再び ステップ250から低速化ルーチンを開始する。ただし、速度切換イネーブルの ステップ264と速度切換ディスエーブルのステップ251との間の任意の時間 に、割込み高速化が実行されている可能性もあるため、BIOSシステムは、各 ループで低速化ルーチンへ入った時点で、そのときのクロック周波数が、レジス タ58に示されている現在クロック周波数となっているのか、それとも、割込み 高速化が行なわれたために通常クロック周波数とされているのかを、知ることが できない。そのためBIOSシステムは、低速化ルーチンを実行して行(際に、 システムが高い周波数で動作しているものと想定した処理を実行するようにして いるのである。そのため、例えば、システムのクロック周波数が既に8MHzで あっても、ステップ254を実行するときに短時間ではあるが、その周波数を1 6MHzという周波数に増加してしまう。しかしながら、このようにクロック周 波数が上昇してしまっても、その高いクロック周波数が持続する時間は極めて短 く無視することができる。更に、クロックMUX制御回路70は、一度にクロッ ク周波数を1段階しか変更させることができない。システムが4MHzで動作し ており、BIOSルーチンがその周波数をステップ254で16MHzにセット すべきことを示しても、その命令は、クロックMUX制御回路70によって無視 される。従って、ステップ254を実行しようとしたときにシステムが4MHz で動作していたという、最もちぐはぐな状況においては、ステップ254ではク ロック周波数の変更は行なわれず、ステップ258でその4MHzのクロック周 波数が8MHzへ上昇させられることになるが、しかしながら、この周波数も、 極めて短時間のうちにステップ262で4MHzへ低下させられる。
待ち事象が発生したときには、通常、それが発生したこと自体によって割込みが 発生する。例えばキーが押下されると、それによって割込みが発生する。すると 、割込み処理機構が、その事象の発生をBIOSソフトウェアに知らせるために 、あるビットをセットする。システムはこれを行い、その割込みを放置する。
そして、BIOSルーチンが、ステップ266において、割込みルーチンによっ てセットされたそのビットをノートする。従って、待ち事象が発生したならば、 システムは、その待ち事象の発生に関わる割込みに応答して、結局は高速化され ることになる。ただし、その割込みが発生したのが、事象の発生の有無をステッ プ266でチェックした後であった場合には、そのキーの押下に対応した処理が 実際にBIOSソフトウェアによって実行される前に、システムは再び低速化さ れてしまう。しかしながら、この低速化の期間は極めて短いため、ユーザがそれ に気付(ことはない。
図5には更に、BrO3の高速化ルーチン52も図示しである。先ず、レジスタ 60の中のビットをセットすることによりて、速度切換及び割込みをディスエー ブルする。ステップ270で、現在クロック周波数と通常クロック周波数とを比 較する。そして、もし現在クロック周波数が、通常クロック周波数と等しいか或 いはそれよりも高かったならば、ステップ272において、クロック周波数は既 に回復しているものと解釈し、続いてステップ284で割込みをイネーブルする 。一方、現在クロック周波数が通常動作周波数よりも低かったならば、クロック MUX制御回路70を通じて現在クロック周波数を8MHzにセットさせ、この 新たなりロック速度を現在クロック周波数レジスタ58に書き込む。この場合、 それまでの現在クロック周波数が4MHzであったものと想定しているからであ り、従って、ここで現在クロック周波数を8MHzにセットすることによってク ロック周波数を上昇させることになると推定しているのである。しかしながら、 もしそれまでの現在クロック周波数が、実際には8MHzであったならば、周波 数の切換は行なわれない。また、それまでの現在クロック周波数が16MHzで あったならば、この処理によってクロック周波数が一時的に8MHzへ低下する ことになるが、ただしそのクロック周波数の低下は極めて短時間しか持続しない ため無視することができる。更に、もしそれまでの現在クロック周波数が32M Hzであったならば、このシステムは一度に2段階ないしそれ以上のクロック周 波数の変更を行なえないため、このときのクロック周波数の変更命令は、クロッ クMUX制御回路70によって無視されることになる。続いてステップ276で も、現在クロック周波数と通常動作周波数とを比較し、もし現在クロック周波数 が、通常動作周波数と等しいか或いはそれよりも小さがったならば、ステップ2 78において現在クロック周波数を16MHzにセットする。更にステップ28 0でも、もう1度クロック周波数の比較を行ない、もしまだ通常動作周波数に達 していなかったならば、ステップ282において32MHzにセットする。
図6は、クロックMUX制御回路70の回路の概略図である。
システム・バス24からレジスタ72の中へ、ADLflllll信号の制御の 下に4種類の制御信号が周期的にクロックド(clocked) している。制 御信号デコーダ74は、CKC3制御信号、SO制御信号、s11制御信、及び M/10制御信号に応答して動作して、BIOSソフトウェアが速度を変更すべ きことを命じる信号を送出したときに、信号WRITEを送出する。CKC3制 御信号がロー、M/10制御信号信号がロー、SO制御信号がロー、そして、8 1制御信号がハイとなることによって、ソフトウェア速度変更を行なうべきこと が表示される。
また、新たなりロック速度は、複数本のデータ線のうちの2本のデータ線上に示 される。WRITE信号は、ソフトウェア速度選択デコーダ76をイネーブルし て、それら2本のデータ線の信号をデコードさせる。
一方、ADL制御信号の立下りの時点で、sO制御信号、31制御信号、及びM /IO制御信号がローであったならば、それは、CPU18への割込みが発生し 、それに対してCPU18が割込み肯定信号を送出し、その割込み肯定信号がシ ステム・バス・アダプタ20によって変換されてそれら3つの制御信号をローに したということを表わしている。CPU18からの割込み肯定信号を直接、クロ ック制御回路がモニタするようにするのも1つの方法ではあるが、システム・バ ス24をモニタする方式とすることによって、クロック制御回路の、特定のCP Uプロセッサへの依存性を緩和することができるのである。上記の3つの制御信 号は、制御信号デコーダ74によってデコードされ、それによって内部割込み肯 定信号INTACKが発生される。この信号によって、割込み高速化が開始され る。
CPU18が発する割込み肯定信号のその1回のサイクルの間に、5O1s1、 M/!0の制御信号がローになる有効割込み肯定状態は、2回にわたって発生す る。図7に示したように、これら2回の有効割込み肯定状態は、夫々、ADL制 御信号の立下り79の時点と立下り81の時点とに、レジスタ72の中ヘクロツ クトされる。制御信号デコーダ74から送出されるこれら有効INTACK出力 によって、割込み速度選択デコーダ78をイネーブルすることができる。しかし ながら、クロック周波数を変更する3つの段階を、3回に亙って実行しなければ ならない。割込み速度選択デコーダ78をイネーブルする第3回目の信号を得る ために、INTACK信号を、ADL制御信号でクロックドされるフリップフロ ップ80にラッチする。そして、遅延された信号とINTACK信号との間のO Rをゲート82で取るようにしている。こうすることによって、図7に84で示 したADL制御信号の次回の立下りの時点、即ち、5O1S1、M/10の3つ の制御信号のデコードによって有効INTACK信号を得ることができない時点 でも、立下り81のときに得られたINTACK信号によって、もう1度、割込 み速度選択デコーダ78をイネーブルする。
割込み速度選択デコーダ78は、MUX選択信号が示している現在クロック周波 数と、図4のレジスタ62に格納されている通常クロック周波数とを比較する。
レジスタ60の中のビットによって速度切換がイネーブルされているときには、 割込み速度選択デコーダ78は、その3本の出力線のうちの1本に、8MHz。
16MHz、32MHzの3通りの周波数のうち、CLK2を次にその周波数へ 切り替えるべき1つの周波数を示す信号を創出する。例えば、MUX選択信号が 現在8MHzにセットされており、通常動作周波数が32MHzであるならば、 割込み速度選択デコーダ78は、次の周波数として16MHzを選択する。
新しい選択(select)信号出力は、デコーダ76と78との、いずれか一 方からしか送出されないようにしである。また、それら2つのデコーダ76と7 8の出力のORを取っており、これはゲート84.86.88によって行なって いる。
そして新しい選択のビットを、レジスタ90に格納しておく。レジスタ90の中 のそれらビットは、それらビットのうちの1つだけがハイ状態であり、それらビ ットは周波数レジスタ/シンクロナイザ92の中ヘクロンクトされる。このレジ スタは、新局波数を保持し、従ってクロックMUX66への入力とすべき選択信 号入力を保持している。ただし、このMUX選択出力の出力を変更するタイミン グを適切にすることが、クロック信号CLK及びクロック信号CLK2の位相と デユーティ・サイクルとを適切に維持するため重要である。そのため、このレジ スタ90の出力を、32MHzのクロックに合わせてレジスタ92の中ヘクロッ クトするようにしており、しかもレジスタ92が周波数/位相デコーダ94によ ってイネーブルされた直後にそれを行なうようにしている。クロック周波数を変 更する適切なタイミングは、WASラッチ96に格納されているそれまでのクロ ック周波数(旧クロック周波数)と、レジスタ90の出力から受け取った新しい クロック周波数(新クロック周波数)と、クロック分周回路64から常時受は取 っている4通りのクロック信号とによって定められる。
周波数/位相デコーダ94の詳細なロジックを図8に示した。新クロック周波数 への切換の後に適切な位相及びデユーティ・サイクルを維持できるようにするた めには、旧CLK信号と、旧CLK2信号と、新CLK2信号のサイクルの中の 適切な時点で周波数変更信号を発するようにすれば良い。尚、新CLK信号は、 新CLK2信号から直接得られるため、そのため図8のロジック回路でそのタイ ミングを考慮する必要はない。また、クロック周波数を一段階低下させると、新 CLK2信号と旧CLK信号とが同一の信号になる。従って、2種類のCLK信 号を考慮するだけで、タイミングとデユーティ・サイクルとを適切に維持するこ とができる。
16MHzのクロック信号がインバータ98を介して入力しており、この16M Hzのクロック信号は、ゲート100.102.106、及び108に対しては 必要なCLK信号ないしCLK2信号を提供するものであるが、それと共に、図 8のロジック回路の全てのゲートを駆動している。この信号は、全てのゲートの 出力を同期させることにより、ORゲート112、D型フリップフロップ124 及び126を通じて全ての信号が互いに同期関係を保つようにする。
周波数を32MHzから16MHzへ一段階低下させるときには、位相を32〜 IHzクロック信号に合わせると共に16MHzクロック信号にも合わせねばな らないため、15MHzクロック信号をインバータ98とゲート100とを通じ てゲーティングするようにしている。周波数を16MHzから8MHzへ一段階 低下させるときには、16MHzクロック信号と8MHzクロック信号との両方 をNANDゲート102でゲーティングするようにしている。周波数を8MHz から4MHzへ一段階低下させるときには、8MHzクロック信号と4MHzク ロック信号とをゲート104で、16MHz信号によってゲーティングするよう にしている。また、周波数を16MHzから32MHzへ一段階上昇させるとき には、8MHzクロック信号と16MHzクロック信号とをゲート106でゲー ティングするようにしている。周波数を8MHzから16MHzへ一段階上昇さ せるときには、4MHz、8MHz、及び16MHzのクロック信号をゲート1 08でゲーティングするようにしている。そして、周波数を4MHzから8MH zへ一段階上昇させるときには、2MHz、4MHz、及び8MHzのクロック 信号をゲート110で、16MHzクロック信号によってゲーティングするよう にしている。NANDゲートからの反転出力はORゲート112において、それ ら出力のORが取られ、フリップフロップ124及び126を通過してクロック ドされ、周波数変更信号が送出される。この周波数変更信号は、周波数レジスタ /シンクロナイザ92に対して、MUX選択信号を32MHzクロック信号の次 の立上りの時点で変更すべきことを示す。
ORゲート112から出力が送出されるのは、WAS信号入力に示されている現 在クロック周波数に関連する5ELECT信号によって、レジスタ90から、一 段階の周波数の変更をめる要求があった場合に限られる。それ以外の要求は全て デコーダ94によって無視される。
こうして出力された周波数変更信号は、図6の周波数レジスタ/シンクロナイザ 92へ入力する。この信号が入力すると、MUX選択選択山号出力旧クロック周 波数から、レジスタ90からの選択信号入力に示されている新クロック周波数に 変化する。この周波数レジスタ/シンクロナイザ92と、図4に示したクロック ・マルチプレクサ(クロックMUX)66の、詳細構造を図9に示した。
周波数変更信号を受け取る以前は、旧クロック周波数が、フリップフロップ13 0及び132にラッチされていると共に、マルチプレクサ134のD1人力へフ ィードバックされている。この状態にあるときに、周波数変更信号がインバータ 136を介して供給され、マルチプレクサ134の選択入力へ入力したならば、 レジスタ90からの選択信号がマルチプレクサのDo大入力選択される。それら の選択信号のうちの1つだけがハイ状態となっており、どの選択信号がハイ状態 となっているかは、新たに選択されるクロック周波数に応じて決まっている。3 2MHzタロツクは号の立下りの時点で、それら選択信号はフリップフロップ1 30にラッチされる。更に、32MHzクロック信号の次の立上りの時点で、そ れら新たな選択信号は夫々のフリップフロップ132の中にラッチされる。フリ ップフロップ130の出力とフリップフロップ132の出力とはORゲート13 8に入力している。以上の説明から明らかなように、新たな選択信号がフリップ フロップ130の中にラッチされた時点では、以前の信号は、まだフリップフロ ップ132の出力で残っている。そして、上記の32MHzクロック信号の次の 立上りの時点で、新たな選択信号が、夫々のフリップフロップ132の中にラッ チされ、そしてマルチプレクサ134を介してフィードバックされて、夫々のフ リップフロップ130にラッチされる。従って、32MHzクロック信号の先の 立下と立上りの間は、旧クロック周波数に対応している1個のゲート138が、 対応したフリップフロップ132から選択信号を送出し、そのORゲートとは別 の、新クロック周波数に対応している1個のゲート138が、フリップフロップ 130から選択信号を送出している。上記の32MHzクロック信号の次の立上 りの後に、旧クロック周波数に対応したゲート138は、もはや選択信号を送出 していない。従って、旧選択信号が除去される前に、新クロック周波数に対応し た選択信号が発せられるという、オーバーラツプが存在する。4個のORゲート 138から送出されている4つの選択信号ビットは、マルチプレクサ66へ供給 されている。このマルチプレクサ66は、NANDゲート140を含んでおり、 それらNANDゲート140の出力は、反転入力ORゲート142に結合されて いる。
図9A及び図9Bは、周波数の切換動作の具体例を示したものである。図9Aに おいて、システムのCLK2周波数は、16MHzから8MHzへ変更されてい る。32MHzクロック信号の立下り144の時点で、夫々の選択信号が夫々の フリップフロップ130の中ヘラッチされている。より詳しくは、フリップフロ ップ130cの反転出力はハイ状態へ変化しており、一方、フリップフロップ1 30bの反転出力はロー状態へ変化している。これに対して、フリップフロップ 132cの出力はロー状態のままであり、フリップフロップ132bの出力はハ イ状態のままである。従って、32MHzクロック信号の、これに続く次の半サ イクルの間は、3MHzクロック信号と16MHzクロック信号との両方が、ゲ ート138cとゲート138bとを介して選択された状態となる。これら両方の クロック信号がハイ状態にあるため、ゲート142からの実際の出力は、それら いずれかのクロック信号と同一の状態にある。続いて、32MHzクロック信号 の次の立上り146の時点で、新たな夫々の選択信号は、夫々のフリップフロッ プ132にもラッチされる。その結果、8MHzクロック信号は選択された状態 のままであるが、ゲー1−138bからの選択信号は除去される。この後、シス テムは8MHzで動作し続ける。同様にして、図9Bからは、新たな選択信号が 、立下り148の時点でフリップフロップ130の中へ、そして立上り150の 時点でフリップフロップ132の中へ、ラッチされることが分かる。この場合は 、ゲーH38cから出力されている選択信号はフリップフロップ132Cによっ て維持されており、一方、フリップフロップ138bから出力されている選択信 号はフリップフロップ130bによってイネーブルされる。立上り150の時点 では、ゲート138Cから出力されていた選択信号が除去される。
以上、本発明をその好適実施例に即して具体的に図示し説明してきたが、当業者 には理解されるように、ここ開示した実施例は、その形態及び細部に対して、本 発明の概念から逸脱することなく、また添付の請求の範囲に示した本発明の範囲 から逸脱することな(、様々な変更を加え得るものである。
例えば、割込みに応答してハードウェアがシステムの速度を変更するときには、 現在の速度のビットの更新も併せて行なうように、そのハードウェアを設計して おいても良い。そうすれば、図5に示したソフトウェアのアルゴリズムを簡明化 することができる上、図5のループ50を1回実行する度に、システム・クロッ ク速度が短時間とはいえ一時的に上昇するのを防止することができるようになる 。
更にまた、CPU18は、以上に開示したようにハードウェア割込みに応答する と共に、更にソフトウェア割込みにも応答するように、プログラムしておくのも 良い。ソフトウェア割込みは、外部のハードウェア事象によって開始される割込 みではなく、ソフトウェアの割込み命令によって開始される割込みである。従つ て、ソフトウェア割込みの場合には、CPU18がシステム・バス上に割込み肯 定応答サイクルを走らせず、そのためデコーダ78で検出することができない。
そこで、システムがソフトウェア割込みに応答できるようにするためには、割込 み処理機構の中に、通常速度への復帰を行なわせるソフトウェア割込みの各々に 対する速度切換アルゴリズムを組み込んでおけば良い。割込み処理機構がデコー ダ76を介して、高速化の手順を開始するようになる。
ソフトウェア割込みは、ソフトウェアが実行されていないときには、発生するこ とはない。従って、システムは、殆ど常に、事象の発生を待っているのではなく 、既に通常動作速度で実行を行なっていなければならないことになる。以上に説 明したシステムでは、システムを高速化することを必要とする迅速性を重視する 事象は全てハードウェア事象であった。しかしながら、例えばマルチタスク環境 等においては、ソフトウェア割込みがより重要なものとなる可能性がある。
%Pi’シ(内゛dに変更なし) FIG、 I FIG、 7 1モ4 瞭 q 手続補正害 1.事件の表示 PCT/US91106930 2、発明の名称 システム・クロック速度コンI・ローラ′3.補11をする名 ’II件との関係 特、7,1.出願人住所 名 tfl・ ウォンク・ラボラトリーズ・インコーホレーテッド4、代理人 住 所 東京都千代口1区人手町二丁112番1号新大手町ビル 206区 電話3270−6641〜6− 氏名(2770)弁理士湯浅恭手\ 1−Ww、−A−一−N・ ρCT/US 91106930フロントページの 続き (72)発明者 ルトウールネオー、メアリーアメリカ合衆国ニューハンプシャ ー州 03467 、ウェストモアランド、ルート1゜ボックス 321 (72)発明者 マーティン、パトリシア・エイアメリカ合衆国マサチューセッ ツ州01450゜グロトン、ハイデン・ロード 120 (72)発明者 マクナリー、マイケル・ジェイアメリカ合衆国ニューハンプシ ャー州 03038 、プリー、ナツト・メドウ・レーン

Claims (23)

    【特許請求の範囲】
  1. 1.データ処理システムにおいて、 メモリと、 メモリ内に格納されているソフトウェア・ルーチンを、システム・クロックによ って定められた通常周波数で処理する処理装置と、前記処理装置に応答してシス テム・クロックを低速化し更にその後にそのシステム・クロックを前記通常周波 数へ復帰させるための回路を備えた、システム・クロックを発生するためのクロ ック制御回路と、割込みに応答して、前記クロック制御回路に、システム・クロ ックを前記通常周波数へ復帰させる手段と、 を備えたことを特徴とデータ処理システム。
  2. 2.前記クロック制御回路が、 システム・クロックを低速周波数へ低速化する、前記処理装置の中で処理されて いるソフトウェア・ルーチンに応答するための回路と、前記処理装置への割込み に応答して、いかなるソフトウェア・ルーチンとも無関係にシステム・クロック を前記通常周波数へ復帰させるための回路と、を備える、 ことを特徴とする請求の範囲第1項に記載のデータ処理システム。
  3. 3.前記クロック制御回路が、前記処理装置からの割込み肯定応答を表わしてい るシステム・バス上の信号をデコードすることによって割込みを検出する、こと を特徴とする請求の範囲第2項に記載のデータ処理システム。
  4. 4.システム・クロックを低速化させるように処理される前記ソフトウェア・ル ーチンが、アプリケーション・ソフトウェアによって開始される基本入出力シス テム(BIOS)ソフトウェアを備え、核B10Sソフトウェアは、前記アプリ ケーション・ソフトウェアがその発生を待っていた事象が発生したときに、前記 クロック制御回路に、クロック周波数を前記通常周波数へ復帰させるようにさせ る、ことを特徴とする請求の範囲第2項に記載のデータ処理システム。
  5. 5.前記BI°Sソフトウェアが、前記事象の発生を待っている間、周期的に前 記クロック制御回路にシステム・クロックを前記低速周波数にセットさせるよう する、ことを特徴とする請求の範囲第4項に記載のデータ処理システム。
  6. 6.システム・クロックを低速化させるように処理される前記ソフトウェア・ル ーチンが、ある事象の発生を待っている間、周期的に前記クロック制御回路にシ ステム・クロックを前記低速周波数にセットさせるようにする、ことを特徴とす る請求の範囲第2項に記載のデータ処理システム。
  7. 7.前記クロック制御回路によって、クロック周波数が前記低速周波数を低速化 するとき及び前記通常周波数へ復帰するときに、周波数が段階的に変更して行く 、ことを特徴とする請求の範囲第1項に記載のデータ処理システム。
  8. 8.周波数における第1段階が第1の割込み肯定信号に応答して行なわれ、必要 ならば、周波数における第2段階が第2の割込み肯定信号に応答して行なわれ、 必要にならは、周波数における第3段階が、遅延された割込み肯定信号に応答し て行なわれる、ことを特徴とする請求の範囲第7項に記載のデータ処理システム 。
  9. 9.前記クロック制御回路が、第1システム・クロック信号と、該第1システム ・クロック信号の2倍の周波数の第2システム・クロック信号とを発生し、前記 クロック制御回路が、クロック周波数の切換動作を、現在の第1クロック信号と 、現在の第2クロック信号と、新たな第2クロック信号とに同期させる、ことを 特徴とする請求の範囲第1項に記載のデータ処理システム。
  10. 10.前記クロック制御回路が、システム・クロック信号として使用可能な全て のクロック信号を発生するクロック・ソースと、それら使用可能なクロック信号 のうちの1つをシステム・クロック信号として選択する選択回路とを含んでおり 、該選択回路が、 前記処理装置の中で実行されているソフトウェア・ルーチンからデータ入力を受 け取って新たなシステム・クロック周波数を選択するようにしてあるソフトウェ ア応答回路と、 割込みに応答して、現在のシステム・クロック周波数と通常クロック周波数とに 応じた新たなシステム・クロック周波数を選択するようにしてある割込み応答回 路と、 前記ソフトウェア応答回路と前記割込み応答回路とのいずれか一方から新システ ム・クロック選択信号を受け取ってラッチする周波数レジスタと、現在のシステ ム・クロックと選択されたシステム・クロックとの間の適切な位相関係を確立す ることによって、前記新システム・クロック選択信号を前記周波数レジスタにお いてラッチするラッチ動作を同期させ、もってクロックのデューティ・サイクル を適切に維持するための回路と、を備える、 ことを特徴とする請求の範囲第1項に記載のデータ処理システム。
  11. 11.前記処理装置によって処理されるソフトウェア・ルーチンは、通常クロッ ク周波数の表示を格納するためのレジスタであって、格納された値は前記割込み 応答回路によって読み出される、レジスタを更に備える、ことを特徴とする請求 の範囲第10項に記載のデータ処理システム。
  12. 12.周波数における第1段階が第1の割込み肯定信号に応答して行なわれ、必 要ならば、周波数における第2段階が第2の割込み肯定信号に応答して行なわれ 、必要ならば、周波数における第3段階が、遅延させた割込み肯定信号に応答し て行なわれる、ことを特徴とする請求の範囲第11項に記載のデータ処理システ ム。
  13. 13.前記クロック制御回路が、第1システム・クロック信号と該第1システム ・クロック信号の2倍の周波数の第2システム・クロック信号とを発生し、前記 クロック制御回路が、クロック周波数の切換動作を、現在の第1クロック信号と 、現在の第2クロック信号と、新たな第2クロック信号とに同期させる、ことを 特徴とする請求の範囲第12項に記載のデータ処理システム。
  14. 14.前記クロック制御回路は、レジスタであって、前記処理装置において処理 されるソフトウェア・ルーチンがその中に前記通常周波数の表示を格納する、レ ジスタを備える、ことを特徴とする請求の範囲第1項に記載のデータ処理システ ム。
  15. 15.レジスタであって、前記処理装置において処理されるソフトウェア・ルー チンがその中に前記低速周波数の表示を格納する、レジスタを備える、ことを特 徴とする請求の範囲第1項に記載のデータ処理システム。
  16. 16.データ処理システムのシステム・クロックを制御する方法において、処理 装置の中で処理されるソフトウェア・ルーチンに応答して前記システム・クロッ クを低速周波数へ低速化するステップと、前記処理装置への割込みに応答して、 前記システム・クロックを通常周波数へ復帰させるステップと、 を備えることを特徴とする方法。
  17. 17.前記処理装置からの割込み肯定応答を表わしているシステム・バス上の信 号をデコードすることによって割込みを検出するステップを更に備えることを特 徴とする請求の範囲第16項に記載の方法。
  18. 18.あるソフトウェアがその発生を待っていた事象が発生したときに、該ソフ トウェアのルーチンによってクロック周波数を前記通常周波数へ復帰させるステ ップを更に備えることを特徴とする請求の範囲第16項に記載の方法。
  19. 19.前記ソフトウェアが前記事象の発生を待っている間、該ソフトウェアが周 期的にクロック制御回路に、システム・クロックを前記低速周波数にセットさせ るようにする、ことを特徴とする請求の範囲第18項に記載の方法。
  20. 20.前記ソフトウェアが前記事象の発生を待っている間、該ソフトウェアが周 期的に前記クロック制御回路に、システム・クロックを前記低速周波数にセット させるようにする、ことを特徴とする請求の範囲第16項に記載の方法。
  21. 21.クロック周波数は、周波数の段階において、前記低速周波数へ低速化し、 そして前記通常周波数へ復帰する、ことを特徴とする請求の範囲第16項に記載 の方法。
  22. 22.第1システム・クロック信号と、該第1システム・クロック信号の2倍の 周波数の第2システム・クロック信号とが発生され、クロック周波数の切換動作 を、現在の第1クロック信号と、現在の第2クロック信号と、新たな第2クロッ ク信号とに同期させる、ことを特徴とする請求の範囲第16項に記載の方法。
  23. 23.前記割込みがハードウェア割込みであることを特徴とする請求の範囲第1 6項に記載の方法。
JP3516290A 1990-11-09 1991-09-24 システム・クロック速度コントローラ Pending JPH07507406A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US61199090A 1990-11-09 1990-11-09
US611,990 1990-11-09
PCT/US1991/006930 WO1992009028A1 (en) 1990-11-09 1991-09-24 System clock speed controller

Publications (1)

Publication Number Publication Date
JPH07507406A true JPH07507406A (ja) 1995-08-10

Family

ID=24451242

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3516290A Pending JPH07507406A (ja) 1990-11-09 1991-09-24 システム・クロック速度コントローラ

Country Status (6)

Country Link
EP (1) EP0556198B1 (ja)
JP (1) JPH07507406A (ja)
AU (1) AU659104B2 (ja)
CA (1) CA2092172A1 (ja)
DE (1) DE69112220T2 (ja)
WO (1) WO1992009028A1 (ja)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369771A (en) * 1991-12-23 1994-11-29 Dell U.S.A., L.P. Computer with transparent power-saving manipulation of CPU clock
EP0574177B2 (en) * 1992-06-12 2003-08-20 Texas Instruments Incorporated Method and apparatus for changing processor clock rate
ES2113498T3 (es) * 1992-12-28 1998-05-01 Advanced Micro Devices Inc Circuito de microprocesador con dos señales de temporizacion.
EP0607667A1 (en) * 1993-01-22 1994-07-27 Advanced Micro Devices, Inc. Apparatus for controlling a clock driver signal
GB2287555A (en) * 1994-02-25 1995-09-20 Motorola Gmbh An adjustable clock generator system.
US5845139A (en) * 1995-06-07 1998-12-01 Advanced Micro Devices, Inc. System for providing a host computer with access to a memory on a PCMCIA card in a power down mode
CN1159021A (zh) * 1996-03-06 1997-09-10 三菱电机株式会社 系统时钟确定装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4381552A (en) * 1978-12-08 1983-04-26 Motorola Inc. Stanby mode controller utilizing microprocessor
JP2570845B2 (ja) * 1988-05-27 1997-01-16 セイコーエプソン株式会社 情報処理装置
US4965524A (en) * 1988-06-09 1990-10-23 National Semiconductor Corp. Glitch free clock select
EP0363567B1 (en) * 1988-10-14 1994-11-30 International Business Machines Corporation A computer with interrupt controlled clock speed and its method of operation

Also Published As

Publication number Publication date
CA2092172A1 (en) 1992-05-10
AU659104B2 (en) 1995-05-11
EP0556198B1 (en) 1995-08-16
DE69112220T2 (de) 1996-03-21
AU8655791A (en) 1992-06-11
EP0556198A1 (en) 1993-08-25
WO1992009028A1 (en) 1992-05-29
DE69112220D1 (de) 1995-09-21

Similar Documents

Publication Publication Date Title
US5560017A (en) System with clock frequency controller responsive to interrupt independent of software routine and software loop repeatedly executing instruction to slow down system clock
JP3580630B2 (ja) 消費電力を管理するシステム及び電源を管理する方法
US6657634B1 (en) Dynamic graphics and/or video memory power reducing circuit and method
JP3526920B2 (ja) コンピュータシステム、ならびに周辺バスクロック信号を制御するためのシステムおよび方法
US6990549B2 (en) Low pin count (LPC) I/O bridge
US5781780A (en) Power management supply interface circuitry, systems and methods
US6601178B1 (en) System power management partitioned across a serial bus
US5848253A (en) Computer system and an electronic circuit utilizing a single DMA controller and additional communication circuit to manage DMA transfers between memory and I/O devices
US5729720A (en) Power management masked clock circuitry, systems and methods
TW394871B (en) System, apparatus, and method for managing power in a computer system
JP2838375B2 (ja) Scsiディスクドライブパワーダウン装置
EP0242010A1 (en) Clock circuit for a data processor
EP0718747A2 (en) Clock control circuits, systems and methods
JPH08263466A (ja) 集積プロセッサ、集積コンピュータシステムおよびコンピュータシステム
JPH08278827A (ja) クロック制御装置
US5867717A (en) Dynamic system clocking and address decode circuits, methods and systems
JPH0511898A (ja) 周辺制御装置およびscsiバス制御装置
US7210054B2 (en) Maintaining processor execution during frequency transitioning
JPH08292936A (ja) マルチプレクサ、集積プロセッサ、および信号マルチプレクサ
US5771373A (en) Power management masked clock circuitry, systems and methods
JPH07507406A (ja) システム・クロック速度コントローラ
JPH0276056A (ja) 情報処理装置
EP0426156B1 (en) Floppy disk controller with DMA verify operations
JP2005209230A (ja) 記憶装置
JP3401221B2 (ja) 記憶装置