(57)【要約】【課題】　マイクロプロセッサのパワー消費を減らし、マイクロプロセッサの機能を向上させること。【解決手段】　データ処理装置は、複数のサブ回路３６、３８と、これに対してクロック信号を発生させるクロックパルス発生回路８４とを有する。検出回路は制御信号のアサーションを検出し、ディスエーブル回路は、この制御信号に応じてサブ回路３６、３８の１つ以上へのクロック信号をディスエーブルする。また、ピンを切り離して所望のマイクロプロセッサ・アーキテクチャとの両立性を与えることができるように、一つ以上のサブ回路を付随の入出力ピンと選択的に切り離すための回路が設けられる。【選択図】　　　　　図２
2004005747.tif 000002
【特許請求の範囲】
【請求項１】
　マイクロプロセッサであって、
　外部ピン、命令実行ユニットを含むパイプライン、命令デコーダ、マイクロプロセッサが前記デコーダによって新しい命令の出力を禁止する命令を実行している間外部信号によって前記外部ピンのアサーションに応答する手段、及び現在実行している命令の終わりにマイクロプロセッサの実行を停止するために、前記パイプラインにおける現在の命令の実行を完了するための手段を有することを特徴とするマイクロプロセッサ。
【請求項２】
　外部ピン、命令の各々がデコーダによってデコードされている一連の命令を実行する実行ユニットを有するパイプライン化されたマイクロプロセッサを動作する方法であって、
　前記マイクロプロセッサがデコードされた命令を実行している間、外部信号のアサーションによって外部ピンをアサートするステップと、
　前記デコーダによって新しい命令の出力を禁止するステップと、
　パイプラインにおける現在の命令を実行して、現在実行している命令の終わりにマイクロプロセッサの実行を停止するステップと、
を有することを特徴とする方法。
【請求項３】
　マイクロプロセッサを有する装置であって、
　外部の制御信号源からアサーション及びデアサーション状態を有する入力する外部制御信号を伝える制御インタフェース端子及び外部のクロック信号源から入力する外部クロック信号を伝えるクロックインタフェース端子を有する複数の外部インタフェース端子と、
　第１の内部制御信号及び第２の内部制御信号を有する、それぞれのアサーション及びデアサーション状態を有する複数の内部制御信号を与えることによって、少なくとも前記外部制御信号に応答する、前記制御インタフェース端子に結合された制御回路と、前記第１の内部制御信号は、前記外部制御信号のアサーション状態に応答して前記アサーション状態をとり、
　前記第２の内部制御信号のデアサーション及びアサーション状態にそれぞれ対応するイネーブル及びディスエーブルされた状態を有する少なくとも第１の内部クロック信号を与えることによって、前記外部のクロック信号及び前記複数の内部制御信号の第２の信号に応答する、前記クロックインターフェース端子及び前記制御回路に結合されたクロック回路と、
　データ処理のための命令を実行することによって前記第１の内部クロック信号のイネーブル状態に応答するパイプライン及び前記パイプラインのサブ回路に結合され、前記パイプラインの動作の停止を制御することによって前記複数の内部制御信号の第１の信号に応答する例外プロセッサを含む、前記外部インタフェース端子、前記制御回路及び前記クロック回路の少なくともいずかに結合された複数のサブ回路と、
を有し、
　前記第１の内部制御信号のアサーション状態に応答して、前記パイプラインは、前記アサーション状態の前記第１の内部制御信号によるアサンプション以前に開始された現在の命令の実行を完了し、且つ
　前記現在の命令の前記実行のパイプラインによる完了に続いて、前記例外プロセッサは、前記アサーション状態における前記第１の内部制御信号の、制御回路による準備を開始することを特徴とする装置。
【発明の詳細な説明】
【技術分野】
【０００１】
　この発明は、集積回路に関し、特にハードウェア制御パワー管理機能を有すると共に、選択可能な入出力ピンとを有するマイクロプロセッサに関する。
【背景技術】
【０００２】
　電子回路製造者は、その回路基板のパワー消費を少なくする必要にますます迫られている。パワーの保存は、電気コンセントを利用できない状態で用いるために特別に製品が設計されているラップトップ型やノートブック型のコンピューターなどの携帯用電子装置において特に重要である。ラップトップ型やノートブック型のコンピューターは、長い時間にわたって内部の電池又は充電可能な電池を使って作動しなければならないので、電池のパワーの保存は大切なこととなる。
【０００３】
　ラップトップ又はノートブック型のコンピューターでは、パワーを最も多く使うのはディスプレイである。ディスプレイが消費するパワーの割合は、使われている技術により変化する。よって、ラップトップ及びノートブック型のコンピューターの製造者は、作動していない間はディスプレイへのパワーを切っていた。電源からのディスプレイの切離しは、かなり簡単な回路により達成出来る。
【０００４】
　ラップトップ型又はノートブック型のコンピューターにおいて、次に多くのパワーを消費するのはＣＰＵ母板マイクロプロセッサである。従来、コンピューター製造者は、作動していないときのマイクロプロセッサのパワー消費を少なくするために一ないし二の技術を使っている。一つの技術は、システムクロックの速度を、不作動時に通常作動周波数の数分の一に減少させる。マイクロプロセッサのパワー消費は周波数に比例するので、システムクロックの周波数を減らせばマイクロプロセッサのパワー消費も少なくなる。インテル (Intel)８０３８６ＤＸマイクロプロセッサ（カリフォルニア州サンタクララ市のインテル社により製造される）においては、作動周波数を３３ＭＨz から４ＭＨz に低下させることにより、マイクロプロセッサの典型的作動電流が４００ミリアンペアから約１００ミリアンペアに減らされる。それにもかかわらず、１００ミリアンペアの作動電流はなお電池に大きなパワー漏れを強いている。
【０００５】
　パワーを減少させる第二の技術は、不作動時にシステムクロックをオフにする。システムクロックをオフにすると、母板上の全ての回路に影響が及ぶ。その結果として、システムクロックを作動不能にする回路は、マイクロプロセッサ及び付随のボード論理中の全ての関連情報を保存すると共に、作動再開時には、システムクロックの再開後にコンピューターの状態がシステムクロック停止前のコンピューターの状態と同一となるように、そのデータを元に戻さなければならない。その結果として、パワーを消費するためのこの技術は、回路が複雑であるためにコストがかかると共に、コンピューターの状態を保存したり元に戻したりする必要があるために低速でもある。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
　従って、複雑な外付け回路を必要をすることなくマイクロプロセッサのパワー漏れを著しく少なくする電子装置におけるパワーを保存するための方法及び装置を提供する必要が生じている。
【課題を解決するための手段】
【０００７】
　本発明により、マイクロプロセッサのパワー消費を減らし、マイクロプロセッサの特徴を向上させるのに著しく有利な方法及び装置が提供される。
　本発明の一つの特徴によると、処理装置は複数のサブ回路と、これに対してクロック信号を発生させる回路とを含む。制御信号の出力を検出するための回路が設けられており、この制御信号に応じて、作動不能化回路は、該サブ回路の一つ以上へのクロック信号を作動不能化させる。
【０００８】
　本発明のこの特徴は、従来技術に比べて著しい利点をもたらすものである。コンピューターが消費するパワーの著しい減少は、マイクロプロセッサ回路へのクロックを作動停止させることにより達成され得る。本発明は、マイクロプロセッサクロック信号の作動の不能化及び可能化を単一の制御信号により制御することを可能にするものである。更に、マイクロプロセッサの一時停止状態について外付け回路に知らせるために確認信号を設けることが出来る。
【０００９】
　本発明の他の特徴は、複数の入出力ピンを有し、この入出力ピンに結合した処理回路を有するマイクロプロセッサから成る。該処理回路を入出力ピンから選択的に切り離すための回路が設けられる。
　好ましい実施例では、処理回路と入出力ピンとの間に３状態バッファーが結合される。この３状態バッファーは、レジスターの出力により制御される。このレジスターは、入出力ポート・アクセスを介してアドレス指定可能なレジスター・ファイルの一部であることが出来る。最初、該レジスターは所定値にセットされる。好ましい実施例では、該３状態バッファーが高インピーダンス・モードである様に該レジスターはセットされる。
【発明の効果】
【００１０】
　本発明のこの特徴は著しい利点を提供するものである。他の×８６両立型のマイクロプロセッサには見られないピンを必要とするマイクロプロセッサに強化した特徴を設けることが出来る。その強化特徴ピンは、×８６マイクロプロセッサ・アーキテクチャとの両立性を保証するために該３状態装置により選択的に作動不能（ディスエーブル）にされることが出来る。その強化特徴が支援される様な状態では、該ピンはソフトウェアを通して選択的に作動可能（イネーブル）にされ得る。
【実施例】
【００１１】
　本発明と、その利点とをより完全に理解してもらうために、添付図面を参照して説明をする。
【００１２】
　本発明の好ましい実施例とその利点とは、図１〜６を参照することから最も良く理解することが出来る。いろいろな図の同様の部分及び対応する部分には同様の数字が用いられている。
　図１はコンピューター・システムのブロック図である。コンピューター・システム１０は、メモリー・サブシステム１４に結合されたマイクロプロセッサＣＰＵチップ１２と、ＢＩＯＳ　ＲＯＭ１６と、論理回路チップ１８（一般に『チップセット』と呼ばれている）とから成る。マイクロプロセッサ１２はバス２０に接続されている。バス２０は、図１にキーボード・コントローラ２２、ビデオ・コントローラ２４、Ｉ／Ｏ回路２６及びディスク・コントローラ２８として示されている数個の周辺装置と通信するのに使われる。キーボード・コントローラ２２はキーボード２９に接続されている。ディスク・コントローラ２８は、ハードディスク３０及びフレキシブルディスク３２に接続されている。ビデオ・コントローラ２４はディスプレイ３４に接続されている。オプションのコプロセッサー３５はマイクロプロセッサ１２及びＢＩＯＳ　ＲＯＭ１６に接続されている。
【００１３】
　図１に示されているコンピューター・システム１０は、例えばＩＢＭのパソコン及びこれと両立するパソコンなどのパーソナル・コンピューターに共通の汎用アーキテクチャである。ＢＩＯＳ１６（基本的入出力システム）は、典型的には、コンピューター・システム１０のための基本的制御動作及び管理動作を実行するためのプログラムのセットを内蔵する読み出し専用メモリーである。ＢＩＯＳ１６は、コンピューター回路、ＣＰＵ１２により実行されるアプリケーション・ソフトウェアとの間のインタフェースとして作用する。重要なことに、パワー消費の目的で、ＢＩＯＳ１６及び論理回路１８は、パワー消費減少手順が実施され得るか否か判定するために、選択された回路を監視する。例えば、ＢＩＯＳ１６及び／又は論理１８は、ディスプレイ３４を監視して、その出力が所定時間にわたって変化したか否かを判定することが出来る。若し否であれば、ＢＩＯＳ１６は、コンピューター・システム１０が携帯可能なコンピューターであると仮定すると）エネルギーを保存するためにディスプレイ３４への給電を不能にする手順を実施することが出来る。更に、ＢＩＯＳ１６は、コンピューター・システム１０の動作に影響を与えずにマイクロプロセッサ１２をアイドル状態に出来るか否か判定するためにマイクロプロセッサ１２を監視する。例えば、マイクロプロセッサ１２は、キーボードからの文字を待つルーチンを実行しているかもしれない。この場合、マイクロプロセッサの動作は、キーが押されるまで保留されることが出来る。
【００１４】
　図２は、マイクロプロセッサ１２の好ましい実施例の種々のサブ回路の詳細ブロック図である。説明の目的のために、インテル社の８０×８６ファミリーの処理装置（特に８０３８６マイクロプロセッサ。しかし、本発明は他の処理装置にも使用されることが出来る）とピン両立し且つ命令両立するマイクロプロセッサとの関係でマイクロプロセッサ１２を説明することにする。マイクロプロセッサ１２は、三つの主な機能グループ、即ち、コア回路３６、メモリー回路３８及びバス・コントローラ４０、から成っている。コア回路３６は、内部データ・バス４４に接続された命令キュー４２を包含する。命令キュー４２の出力は、デコード／シーケンス回路４７のデコーダ４６に接続されている。デコード／シーケンス回路４７は、シーケンサ５０と例外処理装置８６とをも包含する。デコーダ４６はマイクロコードＲＯＭ４８、例外処理装置８６及びシーケンサ５０に接続されている。シーケンサ５０は、マイクロコードＲＯＭ４８及び実行装置５２にも接続されている。この実行装置は、リミット装置５４、乗算装置５６、加算装置５８、シフト装置６０、及びレジスター・ファイル６２を包含する。実行装置５２は、マイクロコードＲＯＭ４８と、マルチプレクサ及びＩ／Ｏレジスター回路６４とに接続されている。メモリー回路３８は、線型アドレス・バス６８に接続されたメモリー管理装置６６から成り、このバスは実行装置５２と命令／データ・キャッシュ・メモリー７０とにも接続されている。メモリー管理装置６６は更に内部データ・バス４４に接続されている。メモリー管理装置６６とキャッシュ７０との間に先取り装置７２が接続されている。バス・コントローラ４０は、データ・バッファー７４、アドレス・バッファー７６及び制御回路７８を包含する。データ・バッファー７４は、データＩ／ＯピンＤ３１−Ｄ０に接続され、アドレス・バッファー７６はアドレス・ピンＡ３１−Ａ２及びＢＥ３＃−ＢＥ０＃に接続されている。データ・アドレス・バス８０は、メモリー管理装置６６、キャッシュ７０及びアドレス・バッファー７６を接続する。命令アドレス・バス８２は、先取り装置７２、キャッシュ７０及びアドレス・バッファー７６を接続する。データ・バッファー７４は内部データ・バス４４に接続されている。
【００１５】
　クロック・モジュール８４は、外部クロック信号（ＣＬＫ２）を受け取り、ＣＬＫＡ（バス・コントローラ４０に接続される）とＣＬＫＢ（メモリー回路３８及びコア回路３６に接続される）とを発生させる。ＣＬＫＡ及びＣＬＫＢは、共にＣＬＫ２の周波数の半分の周波数のクロック信号である。クロック・モジュール８４はバス・コントローラ４０から制御信号を受け取る。
【００１６】
　作動時に、メモリー管理装置６６の制御下でマイクロプロセッサ１２により外部メモリーから命令が受け取られる。性能を向上させるために、命令／データ・キャッシュ７０は、バス・コントローラ４０を通して受け取られる命令及びデータを記憶する。命令は、命令キュー４２に格納されて、後にデコーダ４６によってマイクロコードに変換される。シーケンサ５０は、デコーダ４６及び実行装置５２の制御下でマイクロコードＲＯＭ４８内の次のアドレスを指す。実行装置５２は、マイクロコードＲＯＭ４８の制御下で情報を処理する。
【００１７】
　好ましい実施例では、マイクロプロセッサ１２は静的デザインを有する、即ち、内部メモリーとマイクロプロセッサ１２のレジスターとの中のデータの維持はクロック信号に依存しない。詳しく後述する様に、クロック・モジュール８４は、バス・コントローラ４０の制御下で、バス・コントローラ４０へクロック信号を発生させ続けながらコア回路３６のサブ回路及びメモリー回路３８へのクロックを作動不能にすることが出来る。よって、不作動時には、マイクロプロセッサの回路の大部分を一時停止させることが出来、これによりマイクロプロセッサ１２の消費するパワーを大幅に減らすことが出来る。
【００１８】
　図３及び図４はパワー削減回路を詳しく示す。図３は、マイクロプロセッサのいろいろな部分の間の制御信号を示すブロック図である。バス・コントローラ４０は、マイクロプロセッサ１２の外部ピンからの信号を制御する。一時停止（ＳＵＳＰ）信号がバス・コントローラ４０に入力され、一時停止確認（ＳＵＳＰＡＣＫ）がバス・コントローラ４０から出力される。ビジー（ＢＵＳＹ）がバス・コントローラ４０によりコプロセッサ３５から受信される。バス・コントローラ４０は、マスカブル・インターラプト（ＩＮＴＲ）信号とノンマスカブル・インターラプト（ＮＭＩ）信号とをも受信する。インターラプト（又は『例外』）信号Ｆ　ＳＵＳＰを例外処理装置８６に出力し、制御信号Ｄ　ＳＵＳＰＡＣＫを受け取る。例外処理装置８６は、マイクロコードＲＯＭ４８、バス・コントローラ４０及び実行装置５２を監視して、命令が実行されつつあるか否か判定する。例外処理装置８６は信号Ｄ　ＥＸＣＥＰＴＩＯＮをシーケンサ５０に出力し、マイクロコードＲＯＭ４８から制御信号Ｕ　ＡＨＡＬＴを受信する。バス・コントローラ４０は、制御信号Ｆ　ＩＤＬＥをクロック・モジュール８４に出力する。
【００１９】
　作動時には、外部回路（典型的には論理回路１８と関連してＢＩＯＳ１６）は、例えば、マイクロプロセッサがキーボードからの文字を待つルーチンを実行しているときなど、マイクロプロセッサの動作が一時停止され得る状態を検出する。その様な状態が検出されたとき、外部回路は（例えば、論理低電圧でＳＵＳＰピンを駆動することにより）ＳＵＳＰピンをアサートする。ＳＵＳＰ信号のアサーションに応じて、バス・コントローラ４０は、例外処理装置８６と関連して、Ｆ　ＩＤＬＥ制御信号をクロック・モジュール８４へアサートする。Ｆ　ＩＤＬＥ信号のアサーションに応じて、クロック・モジュール８４は、ＣＬＫＡクロック信号を発生させ続けながら、（作動不能にされたクロック信号を論理高電圧又は論理低電圧に保持することにより）ＣＬＫＢクロック信号を作動不能にする。マイクロプロセッサのデザインは静的であるので、メモリーはリフレッシュ動作を必要とせず、従ってクロックを一時停止させてもマイクロプロセッサ１２内のデータは失われない。マイクロプロセッサ１２が一時停止状態であることを外部回路に知らせるためにＳＵＳＰＡＣＫ信号がアサートされる。マイクロプロセッサ１２の動作を再開させるために、例えば、キーボードからの信号がＢＩＯＳ１６及び論理回路１８によって検出されたときにＳＵＳＰ信号のアサーションは停止される（即ち、論理低電圧をＳＵＳＰピンに加えることにより）。
【００２０】
　コア回路３６及びメモリー回路３８へのクロックを一時停止させることにより、マイクロプロセッサ１２により消費されるパワーを著しく減少させることが出来る。バス・コントローラ４０は、活動状態に留まって、マイクロプロセッサ１２及び外部回路の間のＩ／Ｏ信号を観察し制御する。
　図４は、一時停止モードの動作の詳細を示すフローチャートである。判定ブロック８８において、ＳＵＳＰ信号がアサートされるのを待つループが形成される。ブロック９０において、ＳＵＳＰ信号がアサートされた後、バス・コントローラ４０はＦ　ＳＵＳＰ信号をアサートするが、これは例外処理装置８６に中継される。ブロック９２において、Ｆ　ＳＵＳＰ信号のアサーションに応じて、命令キュー４２は、新しい命令を進めることを禁止される。ブロック９４において、デコーダ４６は新しい命令をマイクロコードＲＯＭ４８へ進めるのを止め、そして、該パイプライン中の命令に関するバス・コントローラ４０による活動を含んで、マイクロコードＲＯＭ４８又は実行装置５２（ひとまとめにして、『パイプライン』）により現在処理されつつある命令が完了される。該パイプライン中の全ての命令が実行された後、ブロック９６において例外処理装置８６により制御信号Ｄ　ＥＸＣＥＰＴＩＯＮが出力される。Ｄ　ＥＸＣＥＰＴＩＯＮはシーケンサ５０により受信され、これはＤ　ＥＸＣＥＰＴＩＯＮに応じてパワー・ダウン・マイクロコード・ルーチン（ブロック９８）を開始する。このパワー・ダウン・マイクロコード・ルーチンは、マイクロプロセッサを一時停止モードのために準備させる。ブロック１００において、マイクロコードＲＯＭ４８は例外処理装置８６に制御信号Ｕ　ＡＨＡＬＴをアサートする。Ｕ　ＡＨＡＬＴの受信に応じて、ブロック１０２において例外処理装置８６はＤ　ＳＵＳＰＡＣＫをバス・コントローラ４０へアサートする。判定ブロック１０４において、バス・コントローラ４０は、例外処理装置からＤ　ＳＵＳＰＡＣＫを受信した後、コプロセッサから受信されるビジー信号をチェックする。コプロセッサからビジー信号がアサートされている間は、外部回路へのＳＵＳＰＡＣＫ信号はアサートされず、ＣＬＫＢは作動不能にされない。コプロセッサによってビジー信号のアサーションが停止されると、マイクロプロセッサ１２が一時停止状態にあること、並びに、コプロセッサが現在は何らの計算も行っておらず、そして一時停止され得ること、を外部回路に警報するためにＳＵＳＰＡＣＫ信号がバス・コントローラ４０によりアサートされる。ブロック１０８において、Ｆ　ＩＤＬＥがバス・コントローラ４０によってクロック・モジュール８４へアサートされる。Ｆ　ＩＤＬＥ信号の出力に応じて、クロック・モジュール８４はブロック１０９においてＣＬＫＢを作動不能にし、これによりコア回路３６及びメモリー回路３８の動作を一時停止させる。すると、バス・コントローラ４０は、ＳＵＳＰ信号のアサーションが判定ブロック１１０において止められるまで、待機する。ＳＵＳＰ信号のアサーションが止められると、ＣＬＫＢが再開される。
【００２１】
　８０３８６を含む殆どのマイクロプロセッサは、チップ・パッケージ上の使用可能なピンを全て使うものではない。よって、使われていないピンを用いてＳＵＳＰ信号及びＳＵＳＰＡＣＫ信号をマイクロプロセッサ１２との間で遣り取りすることが出来、これにより既存の技術との両立性を保つことが出来る。それでもなお、好ましい実施例では、ＳＵＳＰ信号及びＳＵＳＰＡＣＫ信号のためのピンを選択的に作動可能又は作動不能にすることが出来る。好ましい実施例では、ＳＵＳＰピン及びＳＵＳＰＡＣＫピンは最初は作動不能にされ、ＢＩＯＳ１６は該ピンをその始動ルーチンにおいて作動可能にする様に構成されなければならない。ＳＵＳＰピン及びＳＵＳＰＡＣＫピンの作動可能化及び作動不能化を実行するために、予め選択されたＩ／Ｏポートを介して読み書き出来る制御ビットが設けられている。この特徴の好ましい実施例が図５（ａ）、（ｂ）と関連して詳しく図示されている。
【００２２】
　図５（ａ）において、マイクロプロセッサ１２（図１）内の複数の制御レジスターは、制御レジスター１２０に入力されるＩＮＤＥＸ信号及びＤＡＴＡ信号を使ってアクセス可能である。該レジスターの大多数（及び、そのビット）は、キャッシュ・メモリー・サブシステムを構成するために使われる。例えば、主メモリー１４のキャッシュ不能領域を画定し、キャッシュ方法（直接マッピング又は集合連想）を選択し、外付けピンを介してキャッシュ・メモリー７０のフラッシング (flushing) を可能にするために制御レジスターを使うことが出来る。各制御レジスターは、図（ａ）にＩ／Ｏポート２２ｈとして示されているＩ／Ｏポートへ該レジスターのアドレス（ここでＩＮＤＥＸと呼ばれる）を書き込むことによってアクセス可能である。ここにＩ／Ｏポート２３ｈとして示されている他のＩ／Ｏポートは、指定された制御レジスターからデータを読み書きするために使われる。好ましい実施例では、各Ｉ／Ｏポート２３ｈの動作に先立ってＩ／Ｏポート２２ｈの動作が行われるが、さもなければ第２の後のＩ／Ｏポート２３ｈの動作はオフチップに向けられることになる。図５（ａ）に示されている実施例では、制御レジスターは各々Ｃ０ｈとＣＦｈとの間のインデックスを持っている。
【００２３】
　図５（ｂ）において、Ｃ０ｈのインデックスを有するレジスター１２２は、その最下位ビットを使って３状態装置１２４及び１２６（その各々は、ハイ状態及びロー状態の他に、高インピーダンス状態を含む）を制御する。論理ハイ（即ち論理『１』）に等しいビットは、両方の３状態装置１２４及び１２５がＳＵＳＰ信号及びＳＵＳＰＡＣＫ信号の伝送を提供することを可能にする。論理『０』は、３状態装置１２４及び１２６を作動不能にし、これによりＳＵＳＰピン及びＳＵＳＰＡＣＫピンをマイクロプロセッサ１２の回路から絶縁させる。
【００２４】
　好ましい実施例のこの特徴は、既存のマイクロプロセッサのピン構造との両立性を保証する。
　図６は本発明の他の特徴を示しており、ここではマイクロプロセッサ１２の動作はソフトウェア・コマンドに応じて一時停止されることが出来る。８０×８６装置は、全ての命令の実行を停止させて８０×８６を一時停止（ＨＡＬＴ）状態に置く『一時停止（ＨＡＬＴ）』動作（オプコードＦ４）を支援する。バス・コントローラに中継されたノンマスカブル・インターラプト（ＮＭＩピン）で、アンマスクド・インターラプト（バス・コントローラ４０に中継されるＩＮＴＲピンで）又はリセット（ＲＥＳＥＴ）に応じて実行が再開される。通常は、この命令は、システムを停止させるシーケンスにおける最後の命令として用いられる。
【００２５】
　しかし、本発明においては、ＨＡＬＴ命令は本質的に、ＳＵＳＰピンから出力を出させるのと同じ結果をもたらす。よって、ＢＩＯＳ１６は、ＨＡＬＴ命令をマイクロプロセッサ１２へ発し、これによりＣＬＫＢを作動不能にすることが出来る。また、ＣＬＫＢを作動不能にすれば、マイクロプロセッサ１２が消費するパワーを著しく少なくすることが出来る。
【００２６】
　図６は、好ましい実施例におけるＨＡＬＴ命令の動作を示すフローチャートである。判定ブロック１３０においてマイクロプロセッサ１２へのＨＡＬＴ命令が受信されると、ブロック１３２においてマイクロコードＲＯＭ４８によりＵ　ＡＨＡＬＴが出力される。マイクロコードＲＯＭからのＵ　ＡＨＡＬＴ信号に応じて、例外処理装置８６はＤ　ＳＵＳＰＡＣＫを出力する。判定ブロック１３６においてコプロセッサからのビジー信号をチェックした後、ＳＵＳＰＡＣＫ信号がブロック１４０においてバス・コントローラ４０により出力され、内部ＣＬＫＢクロックがブロック１４２において作動不能にされる。判定ブロック１４４において、判定ブロック１４４でインターラプトが出力されるまで一時停止状態に留まる。インターラプトが出力されると、ＣＬＫＢクロックが作動可能にされ、処理が続けて行われる。
【００２７】
　ＨＡＬＴ命令は、ＢＩＯＳ１６がマイクロプロセッサへの付加的なハードウェア接続部無しでマイクロプロセッサ１２を一時停止状態に置くことを許すものである。
　本発明は、従来技術に比べて著しい利点を提供する。コア回路及びメモリー回路へのクロックを一時停止させることにより、１０ミリアンペア未満の電流消費が証明された。殆どのＢＩＯＳプログラムがパワー保存手段を支援するので、ＳＵＳＰ信号及びＳＵＳＰＡＣＫ信号を支援するための付加的な符号化は比較的に単純である。その代わりとして、ＳＵＳＰ信号及びＳＵＳＰＡＣＫ信号の発生を支援するようにチップセット論理１８を改造することが出来る。更に、好ましい実施例においてＳＵＳＰＡＣＫはコプロセッサの動作が完了するまではアサートされないので、ＢＩＯＳはコプロセッサを監視するための付加的な回路又はコードを提供しなくてもよい。更に、ピン両立性を犠牲にせずにマイクロプロセッサ・チップ上にパワー節約回路を設けることが出来る。また、強化ＨＡＬＴコマンドを使うことにより、マイクロプロセッサ１２を一時停止状態から脱出させるインターラプトを出力する以外は、如何なるハードウェア相互作用も無しにマイクロプロセッサを一時停止状態で作動させることが出来る。
【００２８】
　本発明及びその利点を詳しく説明したけれども、特許請求の範囲の欄の記載内容により定義される発明の範囲から逸脱することなく、これに種々の変更、置換、及び変更をなし得ることが理解されなければならない。
【図面の簡単な説明】
【００２９】
【図１】コンピューター・システムのブロック図を示す。
【図２】図１のコンピューター・システムに使われるマイクロプロセッサの好ましい実施例のブロック図である。
【図３】図２のマイクロプロセッサの、パワー管理回路に関連する部分の詳細ブロック図である。
【図４】マイクロプロセッサのパワー消費を減らす操作の好ましい実施例を説明するフローチャートである。
【図５】（ａ）及び（ｂ）は、パワー管理制御信号を提供するピンを作動可能にし及び作動不能にするための回路を示す。
【図６】マイクロプロセッサのパワー消費を維持するためのソフトウェア制御される実施例の動作のフローチャートである。
【図１】
2004005747.tif 000003
【図２】
2004005747.tif 000004
【図３】
2004005747.tif 000005
【図４】
2004005747.tif 000006
【図５】
2004005747.tif 000007
【図６】
2004005747.tif 000008