(57)【特許請求の範囲】
【請求項１】
コンピュータシステムであって、
複数ビット幅の多重化されたアドレス／データ線を含む周辺バスと、
前記複数ビット幅の多重化されたアドレス／データ線に結合された入力ポートを有するラッチと、
前記複数ビット幅の多重化されたアドレス／データ線に結合された第１のポートを有するデータバッファと、
集積プロセッサとを含み、
前記集積プロセッサは、
ＣＰＵコアと、
前記ＣＰＵコアに結合されたローカルバスと、
前記ローカルバスと前記周辺バスとの間でデータ、アドレスおよび制御信号をインタフェースすることができるバスインタフェース装置と、
前記バスインタフェース装置と前記ラッチとに結合されて前記周辺バス上の有効アドレスの存在を表わすロード信号を発生することができるサブバス制御装置とを含み、さらに
前記ラッチの出力ポートに結合された複数ビット幅のアドレス線および前記データバッファの第２のポートに結合された複数ビット幅のデータ線を有する周辺装置と、
前記周辺バスに結合された電力管理装置とを含み、
前記電力管理装置は、
前記コンピュータシステム内の電力管理を行なうための電力管理ステートマシンと、
前記電力管理ステートマシンおよび前記周辺バスに結合され、前記周辺バスの動作状態をモニタするシステムモニタと、
前記システムモニタに結合されたコンフィギュレーションレジスタとを含み、
前記電力管理装置は、前記周辺装置の電源断時、前記システムモニタの出力に応答して、前記コンフィギュレーションレジスタ内に記憶された値を用いて、前記周辺バスのアドレスフェーズの発生の後の、前記周辺バスからのデータが前記電力管理装置内でシャドー化される期間を制御し、かつ前記シャドー化されたデータを前記周辺バスに与えるように構成される、コンピュータシステム。
【請求項２】
前記周辺バスがＰＣＩ標準コンフィギュレーションバスである、請求項１に記載のコンピュータシステム。
【請求項３】
前記データバッファが、方向制御入力線を含み、かつ前記サブバス制御装置が前記データバッファを通るデータの流れを制御する方向制御信号を発生して前記データバッファの方向制御入力線に与えることができる、請求項１に記載のコンピュータシステム。
【請求項４】
前記ＣＰＵコアが８０４８６命令セットを実現する、請求項１に記載のコンピュータシステム。
【請求項５】
前記サブバス制御装置がＩ／Ｏ書込信号およびＩ／Ｏ読出信号を発生する能力をさらに備え、前記方向制御信号が、前記サブバス制御装置が前記Ｉ／Ｏ書込信号または前記Ｉ／Ｏ読出信号をアサートしているか否かに依存する、請求項３に記載のコンピュータシステム。
【請求項６】
前記ロード信号が、前記周辺バスのアドレスフェーズの間にアサートされ、かつ前記ロード信号が前記周辺バスのデータフェーズの前にデアサートされる、請求項１に記載のコンピュータシステム。
【請求項７】
前記周辺装置がＩＳＡ標準周辺装置である、請求項２に記載のコンピュータシステム。
【請求項８】
前記サブバス制御装置が、前記データバッファにより受取られるデータイネーブル信号をアサートして、前記データバッファを通るデータの流れをイネーブルする能力をさらに備える、請求項３に記載のコンピュータシステム。
【請求項９】
前記ロード信号が前記ラッチのイネーブル制御線に与えられる、請求項１に記載のコンピュータシステム。
【請求項１０】
周辺バスクロック信号が前記ラッチのクロック入力線に与えられる、請求項９に記載のコンピュータシステム。
【請求項１１】
前記サブバス制御装置が、前記周辺装置を選択するための選択信号をアサートする能力をさらに備える、請求項１に記載のコンピュータシステム。
【請求項１２】
前記Ｉ／Ｏ読出信号が、前記周辺装置への読出サイクルの間にアサートされ、かつ前記Ｉ／Ｏ読出信号が、前記多重化アドレス／データ線上に有効読出データが存在している場合に、アサートされた状態からデアサートされた状態へ遷移を行なう、請求項５に記載のコンピュータシステム。
【請求項１３】
前記サブバス制御装置に結合されたデコーダをさらに含み、前記サブバス制御装置がコード化されたチップ選択値を発生し、かつ前記デコーダが前記コード化されたチップ選択値をデコードして、前記周辺装置に与えられる対応のチップ選択信号を発生する、請求項１に記載のコンピュータシステム。
【発明の詳細な説明】
【０００１】
【発明の分野】
本発明は、コンピュータシステム内の電力管理に関連する。本発明はまた、集積処理システムに関し、特にシステム配線バスからの外部周辺バスの派生を支持する集積処理システム内の電力管理に関する。
【０００２】
【関連技術の説明】
製造業者により進められている開発の１つの目的に、コンピュータシステムの電力消費量を低減するということがある。電力消費量を低減することで典型的にはシステムの発生する熱が低減され、そのことによって信頼性が増しかつコストが減少する。また、電力を減らすことは、電池で給電を行なうポータブルのコンピュータシステムの寿命を最大限に延ばすうえでも特に重要なことである。
【０００３】
コンピュータシステムの電力消費を低減するについてはさまざまな技術が工夫されてきた。これらの技術には、回路の集積度を上げたり、改善された回路および電力管理装置（ＰＭＵ）を組込むことが含まれる。ある特定の電力低減技術には、非活性回路部を駆動するクロック信号を停止することができるようにすることが含まれる。このような技術を採用するシステムは典型的には、非活性回路部を検出または予測してこれに応じてこれら非活性回路部に関連するクロック信号を停止する電力管理装置を含む。非活性回路部を駆動する「使用されない」クロック信号をオフにすることで、システム全体の電力消費を減らす。これと類似する技術として、時間が重要な意味を持たない動作モードの際に回路部を駆動するクロック信号の周波数を下げることができるようにすることが含まれ、かつまた他の技術には、非活性回路部から電力を取去ることができるようにすることが含まれる。
【０００４】
上に述べたような電力低減技術を採用した、電力管理の行なわれているコンピュータシステムは典型的には、使用の時点でまたは集中バスを見回わることによってさまざまな動作状態を監視する。たとえば、電力管理装置の動作状態モニタをマイクロプロセッサや周辺装置に関連するさまざまな制御線に直接接続して、ある特定の動作状態が発生しているか否かを判別してもよい。こうして検出された動作状態に基づいて、電力管理装置は、応答的に特定の回路部の電力を下げ、特定のクロック信号の周波数を下げおよび／または特定のクロック信号を完全に停止させても良い。電力管理装置はまた特定の周辺装置の選択された書込専用および／または他のコンフィギュレーションレジスタのステータスを、これら周辺部がパワーダウンされる前に退避させるよう構成されている。このことで、周辺装置は、再構成を行なわなくてもその元の状態にパワーバックされ得る。
【０００５】
近年、コンピュータシステム内の、それまであった個別製品のマイクロプロセッサや関連周辺装置にとって代わるものとして集積化されたプロセッサが開発されている。集積プロセッサは、とりわけマイクロプロセッサおよびメモリコントローラ、ＤＭＡコントローラ、タイマおよびバスインタフェース装置等のさまざまな周辺装置の双方の機能を果たす集積回路である。集積プロセッサを導入したことでコンピュータシステムの全体的なコスト、寸法および重量の低減が可能となり、かつ多くの場合コンピュータシステムの性能特性が改善されるに至った。
【０００６】
集積プロセッサは典型的には、集積プロセッサへのさまざまな周辺回路の接続部を収める集積回路パッケージのピンで使用可能なシステム配線バスを含む。集積プロセッサの広範な互換性を維持しかつ低コストシステムを支持するために、集積プロセッサで、他の工業規格の周辺バスの外部配置を支持してもよい。サブバスと呼ばれるこのような周辺バスはシステム配線バスから取出されて典型的には外部アドレスおよびデータバッファならびに集積プロセッサが発生するいくつかのサブバスコントロール信号によって支持されている。
【０００７】
周辺サブバスを組込むコンピュータシステム内の電力管理において生じる問題は、外部の電力管理装置が、典型的にはシステム配線バスと周辺サブバスの両方の動作状態を監視して、電力管理状態変化を行なうべきか否かを決定しかつサブバスに結合された周辺装置内に組込まれた書込専用レジスタをシャドー化する能力を備えている必要があるという点である。外部パッケージピンを電力管理装置上に組込んでシステム配線バスと周辺サブバスのさまざまな線の各々に対し外部から別個にアクセスを行なうことは可能だが、このような専用ピンを使えば電力管理装置上に配されるパッケージピンの数は膨大となり、かつ電力管理装置のダイサイズを大きくして追加のボンド配線パッドを収めることが必要となるであろう。結果として、コンピュータシステムの全体的なコストに対し大きなコストの追加が考えられる。
【０００８】
【発明の概要】
上に述べられた問題は概ね本発明に従うコンピュータシステム内の電力管理のためのサブバス動作状態検出技術によって解決される。一実施例においては、コンピュータシステムは、電力管理装置と少なくとも１つの周辺装置とに結合された集積プロセッサを備える。この集積プロセッサは、多重化されたアドレス／データ線で高性能周辺配線バスにインタフェースするバスインターフェイス装置を含む。この周辺配線バスは、ＰＣＩ標準でよく、集積プロセッサの内部バスとＰＣＩ周辺装置との間のデータ転送を行う。このプロセッサは、たとえばＩＳＡバス等のより性能の低い２次バスの外部配置を可能にするいくつかのサイドバンド制御信号を発生するサブバス制御装置をさらに備え、集積プロセッサ上に、この２次バスのための外部ピンの完全な組をそろえる必要がない。２次バスの取出しは、サイドバンド制御信号により制御される外部データバッファおよび外部アドレスラッチを用いて行われる。２次バスのために集積プロセッサとは別のアドレスおよびデータ線を設ける必要はない。したがって、高性能周辺装置は集積プロセッサならびにより性能の低い低コストの周辺装置によって支持され、しかも集積プロセッサのピンの総数が大きく増えることはない。
【０００９】
この電力管理装置はＰＣＩバスにも結合される。電力管理装置は、システムモニタを備え、このモニタによって、動作状態の監視および書込専用レジスタのシャドー化についてすべてのＰＣＩサイクルが監視される。ＩＳＡサブバスサイクルを監視するため、このシステムモニタは、サブバスサイクルの間ＰＣＩバスを監視しかつＰＣＩバスのコマンド型式信号をデコードする。ＩＳＡサブバスは、サイクルのＰＣＩ開始をＦＲＡＭＥ＃信号で通知せずに、ＰＣＩ信号とコマンド型式とを再使用する。ＩＳＡサブバスサイクルの間に有効データを認識するため、電力管理装置内のアドレス段階化コンフィギュレーションレジスタを使用して、そのアドレスフェーズに続くクロックサイクルに対しデータが有効か否か、またはそのデータが１、２、または３クロック段階の後有効か否かを判別する。よって、サブバス周辺部に関する多様な電力管理を維持する一方で電力管理装置の全体的なピンの数を最少にすることができる。
【００１０】
本発明の他の目的および利点については、以下の説明を読みかつ添付の図面を参照すれば明らかとなることであろう。
【００１１】
本発明にはさまざまな修正例および代替的な形態が可能である一方、その具体的な実施例について例示の形で図面に示しかつ本明細書中に詳しく説明するものである。しかしながら、図面および対応する詳細な説明については、発明を開示した特定の形態に限ることを意図しておらず、逆に、先行の特許請求の範囲により定義される発明の精神および範囲にあるすべての修正例、等価例および代替例を包含することを意図している。
【００１２】
【発明の説明】
ここで図面を参照して、図１は本発明の従う電力管理装置２０２を含むコンピュータシステム２００のブロック図である。電力管理装置２０２に加えて、コンピュータシステム２００は、ＰＣＩ（周辺接続インタフェース）バス２２０に結合された集積プロセッサ２１０と、ＰＣＩ周辺装置２２２と、データバッファ２２４と、アドレスラッチ２２６とを含む。コンピュータシステム２００は、最後に、集積プロセッサ２１０に結合されたＩＳＡ周辺装置２２８と、システムメモリ２３０とを含む。
【００１３】
図示した形では、電力管理装置２０２は、ＰＣＩバス２２０に結合されたシステムモニタ２０４と、システムモニタ２０４に結合された電力管理ステートマシン２０６とを含む。電力管理装置２０２は、電力管理ステートマシン２０６に結合されたシャドーレジスタ装置２０８とコンフィギュレーションレジスタ２０９とをさらに含む。
【００１４】
一般的に、電力管理装置２０２はコンピュータシステム２００が消費する電力を管理かつ最少化するために設けられている。電力管理装置２０２は、線２６０にいくつかのクロック制御信号を発生しかつ線２６２にいくつかの電力制御信号を発生する。クロック制御信号と電力管理信号とは、特定のクロック信号の周波数を制御する目的と、特定の回路部および周辺装置への電力の付与を制御する目的とにそれぞれ使用される。たとえば、一実施例においては、クロック制御信号を使用してＣＰＵクロック信号およびシステムクロック信号の周波数を制御する。ＣＰＵクロック信号はＣＰＵコア２４０をクロックし、かつシステムクロック信号は、たとえば周辺装置２２２および２２８をクロックする。さらに、電力制御信号を与えてＰＣＩ周辺装置２２２とＩＳＡサブ周辺装置２２８への電力の付与を制御する。電力管理装置２０２に関する詳細についてはさらに以下に述べることにする。
【００１５】
集積プロセッサ２１０は、内部バス２５０を経由する、メモリコントローラ２４２に結合されたＣＰＵコア２４０と、ＰＣＩバスインタフェース装置２４４と、ＩＳＡサブバス制御装置２４６と、オン・チップ周辺装置２４８とを備える。集積プロセッサ２１０の図示した構成要素の各々は単一集積回路上に製作して、一般的な集積回路のパッケージ内に収める。図示した実施例においては、ＣＰＵコア２４０がモデル８０４８６マイクロプロセッサ命令セットを実現する。バス２５０は、モデル８０４８６スタイル・ローカルバスである。ただし、ＣＰＵコア２４０は、他のマイクロプロセッサ型命令セットを実現するよう構成してもよい点を理解されたい。
【００１６】
ＰＣＩバスインタフェース装置２４４は、ＣＰＵローカルバス２５０とＰＣＩバス２２０との間にインタフェースを設ける。このように、ＰＣＩバスインタフェース２４４は、ＣＰＵローカルバス２５０とＰＣＩバス２２０との間のデータ、アドレスおよび制御信号転送を統制する。ＰＣＩバス２２０は、集積プロセッサ２１０への外部周辺装置への接続を可能にするという点で一般にシステム配線バスと呼ばれる。ＰＣＩバス２２０に関する詳細についてはヒルズボロー、オレゴン州（Ｈｉｌｌｓｂｏｒｏ，  Ｏｒｅｇｏｎ）のＰＣＩスペシャル・インタレスト・グループによる、１９９３年の「ＰＣＩローカルバス仕様」（ＰＣＩＬｏｃａｌ  Ｂｕｓ  Ｓｐｅｃｉｆｉｃａｔｉｏｎ）と題する出版物に開示されるとおりである。この出版物はその全文をここに引用により援用する。
【００１７】
オン・チップ周辺装置２４８は、集積プロセッサ２１０に組込まれ得るさまざまな周辺装置のいずれかを表わすものである。たとえば、直接メモリアクセスコントローラ、割込コントローラおよびタイマを、集積プロセッサ２１０の一体部分として含めることができる。
【００１８】
メモリコントローラ２４２は、ＣＰＵローカルバス２５０とシステムメモリ２３０との間のデータ転送を制御する。メモリコントローラ２４２およびＣＰＵコア２４０は、同じ集積回路上に製作され、各々の性能はプロセス技術における変化について同様に変化する。
【００１９】
以下により詳細に説明するとおり、ＩＳＡサブコントロール装置２４６は、ＳＵＢＤＩＲ、ＳＵＢＥＮ、およびＬＤＥＮと称する信号を、Ｉ／Ｏ読出信号ＩＯＲＤ、Ｉ／Ｏ書込信号ＩＯＷＲおよびチップ選択信号ＣＳとともに発生する。これらの信号はまとめてＩＳＡサイドバンド信号と呼ばれる。ＩＳＡサイドバンド信号を用い、ＰＣＩバス２２０、データバッファ２２４、およびアドレスラッチ２２６の間のデータおよびアドレス信号の転送の制御を行なうことによって外部ＩＳＡ周辺装置２２８とのデータ転送が可能となる。ＩＳＡサブバス制御装置２４６はＰＣＩバスインターフェイス装置２２４に同期して、サイドバンド信号ＳＵＢＤＩＲ、ＳＵＢＥＮ、ＬＤＥＮ、ＩＯＷＲ、ＩＯＲＤおよびＣＳの適正はタイミングを確実なものとする。ＩＳＡ周辺装置２２８へのＩＳＡスタイルの信号ＩＯＩＷＲ、ＩＯＲＤおよびＣＳならびにデータおよびアドレス信号のバスは、まとめてＩＳＡ周辺サブバスと呼ばれる。本明細書中に使用する、「サブバス」という用語はシステム配線バスから取出されるいずれかの外部バスを指す。
【００２０】
データバッファ２２４は、ＰＣＩバス２２０とＩＳＡ周辺装置２２８との間でデータ信号を伝達するマルチビットの双方向バッファである。データバッファ２２４は、サイドバンド信号ＳＵＢＥＮにより能動化され、データバッファ２２４の方向性はサイドバンド信号ＳＵＢＤＩＲにより制御される。なお、ＩＳＡ周辺装置２２８が８ビットの周辺装置である場合には、データバッファ２２４は８ビットのバッファでありかつＰＣＩバス２２０の多重化されたアドレス／データ線の下位８ビット（ＡＤ［７：０］）に結合され得る。ＩＳＡ周辺装置２２８が１６ビットの周辺装置である場合には、データバッファ２２４は１６ビットバッファでありかつＰＣＩバスラインＡＤ［１５：０］に結合され得る。
【００２１】
アドレスラッチ２２６は、ＰＣＩバス２２２からＩＳＡ周辺装置２２８ヘアドレス信号を与えるマルチビットラッチ回路である。図１の実施例については、アドレスラッチ２２６は、３２ビットラッチまでが可能だが、アドレスラッチ２２６は、ＩＳＡ周辺装置により必要とされるアドレス線の数を支持するだけでよい点に留意されたい。アドレスラッチ２２６は、ロード信号ＬＤＥＮにより能動化されかつＰＣＩクロック信号ＰＣＩＣＬＫによりクロックされる。アドレスラッチ２２６は、いくつかのタイプ‘３７７Ｄラッチで実現され得る。
【００２２】
集積プロセッサ２１０、ＰＣＩバス２２０、データバッファ２２４、アドレスラッチ２２６およびＩＳＡ周辺装置２２８に関連するデータ、アドレスおよび制御信号についての詳細につき次に検討する。ＰＣＩバス２２０の多重化されたアドレス／データ（Ａ／Ｄ）線はアドレスラッチ２２６の入力ポートに接続される。クロック信号ＰＣＩＣＬＫは、アドレスラッチ２２６のクロック入力に接続され、かつＩＳＡサブバス制御装置２４６が発生するロードイネーブル信号ＬＤＥＮは、アドレスラッチ２２６のイネーブル入力に結合される。アドレスラッチ２２６の出力ポートはＩＳＡ周辺装置２２８のアドレスポートに結合される。
【００２３】
ＰＣＩバス２２０の多重化されたアドレス／データ（Ａ／Ｄ）線はデータバッファ２２４にも結合される。図示した実施例においては、ＩＳＡ周辺装置２２８が８ビットの装置なので、ＰＣＩバス２２８の多重化されたアドレス／データ線（Ａ／Ｄ［７：０］）の下位８ビットがデータバッファ２２４に結合される。データバッファ２２４の第２のポートは、ＩＳＡ周辺装置２２８のデータポートに結合される。ＩＳＡサブバス制御装置２４６が発生する、データイネーブル信号ＳＵＢＥＮおよびデータ方向信号ＳＵＢＤＩＲは、それぞれデータバッファ２２４のイネーブル入力と方向入力とに結合される。先程も述べたとおり、これらの信号が、データバッファ２２４の能動化および方向性を制御する。ＩＳＡサブバス制御装置２４６が発生するチップ選択信号は、ＩＳＡ周辺装置２２８のチップ選択入力に結合され、かつＩ／Ｏ読出信号ＩＯＲＤおよびＩ／Ｏ書込信号ＩＯＷＲもＩＳＡ周辺装置２２８に結合されて、ＩＳＡ周辺装置２２８とのデータの読出および書込を制御する。
【００２４】
次に図１に関連して図２を参照し、ＩＳＡ周辺サブバスサイクルの際のコンピュータシステム２００の動作について次に説明する。図２は、ＩＳＡ周辺装置２２８に対するＩ／Ｏ読出動作に関連するデータ、アドレスおよび制御信号を表わすタイミング図である。ＣＰＵコア２４０が、ＩＳＡ周辺装置２２８がマップされているＩ／Ｏアドレス可能空間に対して読出サイクルを開始すると、有効アドレス信号がＰＣＩバスインタフェース装置２４４を介して駆動されかつＩＳＡサブバス状態３０２の間ＰＣＩバス２２０の多重化されたアドレス／データ線ＡＤ［３１：０］上に至る。このとき、ＩＳＡサブバス制御装置２４６は、ロード信号ＬＤＥＮをアサートする。有効アドレス信号はこれにより、ＰＣＩクロック信号の立上がりエッジと同期してアドレスラッチ２２６内にラッチされる。同時に、有効アドレス信号はＰＣＩバス２２０上に駆動され、チップ選択信号ＣＳがＩＳＡサブバス制御装置２４６によりローにアサートされて、周辺装置２２８を選択する。図２に示すとおり、チップ選択信号ＣＳは、Ｉ／Ｏ読出サイクルの間中ＩＳＡ周辺装置２２８に対しローにアサートされている。ロード信号ＬＤＥＮの立上がりエッジで、有効アドレス信号が、アドレスラッチ２２６の出力およびＩＳＡ周辺装置２２８のアドレスポートに与えられる。
【００２５】
次のＩＳＡサブバス状態３０４の間に、Ｉ／Ｏ読出信号ＩＯＲならびにイネーブル信号ＳＵＢＥＮおよびデータ方向信号ＳＵＢＤＩＲがローにアサートされる。ＩＳＡ周辺装置２２８は応じて要求された位置からデータをフェッチし、ＰＣＩバス２２０の多重化されたアドレス／データ線に対しデータバッファ２２４を介してこのデータを駆動する。図に示すとおり、このデータは状態３０６、３０８、３１０および３１２の間、ＰＣＩバス２２０上に駆動される。ＩＳＡサブバス制御装置２４６は、状態３１４の間にＩ／Ｏ読出信号ＩＯＲをデアサートし、ＰＣＩインタフェース装置２４４は、このデータを集積プロセッサ２１０内にラッチする。これによってＩＳＡサブバス読出動作が完了する。
【００２６】
ＩＳＡ周辺装置２２８への書込動作も同様に行なわれる。なお、ＩＳＡ周辺装置２２８への書込サイクルについては、標準的なＩＳＡスタイルバスタイミングが採用される。また、書込サイクルの間、方向性信号ＳＵＢＤＩＲはＰＣＩバス２２０からＩＳＡ周辺装置２２８へのデータの逆の流れを可能にするために補の状態になっている。
【００２７】
ＰＣＩバスインタフェース装置２４４およびＩＳＡサブバス制御装置２４６は、有効データがＰＣＩバス２２０に与えられる時期を決定するアドレス／データ段階化機能をさらに実行し得る。このアドレス／データ段階化機能は、集積プロセッサ２１０の内部コンフィギュレーションレジスタに従いプログラム可能である。一実施例においては、このコンフィギュレーションレジスタを、アドレスが有効になった１クロック後にＰＣＩバス２２０上でデータを有効にするかまたはＰＣＩバス２２０上のアドレスが有効になる時期と、データがＰＣＩバス２２０上で有効になるであろう時期との間に１、２または３クロック段階を設けるように設定してもよい。なお、ＩＳＡサブバス制御装置２４６は、アドレス／データ段階化機能により確立された特定のタイミングに従いＡＤ［３１：０］線上にデータを発生する。こうして、バスが重い負荷をかけられている場合には、データが有効に駆動されるまでにいくつかのクロックがかかり得るため、１を超える数のクロック段階が必要となる。
【００２８】
電力管理装置２０２の動作について次に考慮する。電力管理ステートマシン２０６は、コンピュータシステム２００に関連するさまざまなクロック信号の周波数を制御しかつ特定のシステム動作状態の発生に依存してコンピュータシステム２００に関連するさまざまな周辺装置への電力の付与を制御する制御装置である。電力管理ステートマシン２０６は、さまざまな特定の構成で実現され得る。電力管理ステートマシンの例については、１９９４年４月６日出願のゲッパート他による「最適融通性を図る電力管理アーキテクチャ」（Ｐｏｗｅｒ  Ｍａｎａｇｅｍｅｎｔ  Ａｒｃｈｉｔｅｃｔｕｒｅ  ｆｏｒ  Ｏｐｔｉｍａｌ  Ｆｌｅｘｉｂｉｌｉｔｙ；  ｂｙ  Ｇｅｐｈａｒｄｔ  ｅｔ  ａｌ．  ）と題する、本件と同時係属中で同一譲受人に譲渡される米国特許出願連続番号第０８／２２３，９８４号に記載されている。この出願についてその全文をここに引用により援用する。
【００２９】
電力管理ステートマシン２０６は、特定のクロック信号の周波数を制御しかつシステムモニタ２０４が検出するさまざまな動作状態に基づきさまざまな周辺装置への電力の付与を制御する。なお、この電力管理装置２０６もまた他の装置により検出された動作状態に基づきまたは他の制御機構（図示せず）に応答してクロック信号を制御しかつ電力の付与を制御し得る。また、電力管理ステートマシン２０６により検出されるさまざまな動作状態への応答はプログラマブルなものでもよいし、システム毎に変えてもよい。たとえば、電力管理ステートマシン２０６をプログラムして、予め定められたタイムアウト期間でシステムの活性が検出されなければ、ＰＣＩ周辺装置２２２およびＩＳＡ周辺装置２２８から電力の付与をやめるようにしてもよいし、かつＣＰＵクロック信号の周波数を下げるようにプログラムしてもよい。キーボード活性が後に検出された場合には、電力管理ステートマシン２０６がＰＣＩ周辺装置２２２とＩＳＡ周辺装置２２８とに再び電力を付与して、ＣＰＵクロック信号の周波数を上げるように構成してもよい。
【００３０】
システムモニタ２０４はしたがって、電力管理ステートマシン２０６がその予め定められた電力管理アルゴリズムに従いクロック信号および電力の付与を制御し得るようにコンピュータシステム２００のさまざまな動作状態を検出するよう構成される。より具体的には、システムモニタ２０４は、ＰＣＩバス２２０上のＰＣＩサイクルの発生を監視および検出しかつＩＳＡサブバスサイクルの発生を監視かつ検出するように構成されている。システムモニタ２０４はまた、ＰＣＩ周辺装置２２２またはＩＳＡ周辺装置２２８がパワーダウンされる場合には、シャドーレジスタ装置２０８内でＰＣＩ周辺装置２２２およびＩＳＡ周辺装置２２８に書込まれるある種のコンフィギュレーションデータをシャドー化して、コンフィギュレーション情報を維持するように構成される。他の周辺装置の書込専用レジスタ等のシステム内の他の予め定められたレジスタのシャドー化についても電力管理装置２０２が行なってもよい。なお、シャドー化される特定のレジスタを、電力管理装置２０２内にプログラムしてもよい。
【００３１】
システムモニタ２０４はＰＣＩバス２２０に接続されているので、電力管理機能と、ＰＣＩ周辺部に関連するレジスタのシャドー化の双方について、従来技術のやり方で直接的にいずれのＰＣＩサイクルをも監視かつ検出することができる。したがって、コンピュータシステム２００およびＰＣＩバス２２０に結合された特定の周辺部の構成によって、システムモニタ２０４は、実行を行なっているＰＣＩサイクルのタイプを直接的に判別することができる。システムモニタ２０４はこの情報を電力管理ステートマシン２０６に与え、ステートマシン２０６は必要であれば他の電力管理状態に遷移する。コンフィギュレーション情報がたとえばＰＣＩ周辺装置２２２の特定の書込専用コンフィギュレーションレジスタ等に書込まれる場合には、システムモニタ２０４は書込サイクルをさらに検出しかつコンフィギュレーションデータをシャドーレジスタ装置２０８の割当てられたレジスタ内に書込むことによってシャドー化する。したがって、ＰＣＩ周辺装置２２２が電力管理ステートマシン２０６の電力節約状態の間にパワーダウンされている場合、シャドーレジスタ装置２０８の割当てられたレジスタ内に記憶されたコンフィギュレーション情報を、電力が後に再付与された際にＰＣＩ周辺装置２２２の書込専用コンフィギュレーションレジスタに再書込することができる。システムモニタ２０４の動作のこの部分は従来技術と同じである。
【００３２】
システムモニタ２０４はまたたとえばＩＳＡ周辺装置２２８に方向付けられるＩＳＡサブサイクルを検出するよう構成されている。なお、正常なＩＳＡ制御信号ＣＳ、ＩＯＲＤおよびＩＯＷＲならびにＩＳＡデータおよびアドレス信号は、システムモニタ２０４には直接的に与えられない。したがって、システムモニタ２０４はＰＣＩバス２２０およびロード信号ＬＤＥＮを監視することによってＩＳＡサブバスサイクルを検出する。ＩＳＡサブバスサイクルの開始は、ＬＤＥＮ信号がアクティブローになりかつＰＣＩＦＲＡＭＥ信号がインアクティブハイのままである場合に検出される。ロード信号ＬＤＥＮがアクティブローになった後ＰＣＩクロックの最初の立上がりエッジ上でＩＳＡサブバスサイクルに関連するアドレスをシステムモニタ２０４が検出する。図３は、指定されたＩＳＡサブサイクルの間にシステムモニタ２０４が検出する信号を示すタイミング図である。ＩＳＡサブバスサイクルの開始が検出されると（すなわちロード信号ＬＤＥＮがローになり、ＦＲＡＭＥ信号がハイのままの場合）、システムモニタ２０４はＰＣＩサイクルコマンド信号Ｃ／ＢＥ＃を監視することにより、発生しているサイクルのタイプ（すなわち読出サイクルまたは書込サイクル）を判別する。つまり、ＩＳＡサブサイクルの間、ＰＣＩバスインタフェース装置２４４は標準化されたＰＣＩ規定サイクルコマンドタイプに従ってサイクルタイプを示すコード化された値でＰＣＩサイクルコマンド信号Ｃ／ＢＥ＃を駆動する。
【００３３】
ＰＣＩバスインタフェース装置２４４は、有効アドレスがＰＣＩバス２２０上に駆動されてから１クロックサイクル後にＰＣＩバス２２０上に有効データを駆動するか、またはそのデータがＰＣＩバス２２０上に駆動される前で有効アドレスが駆動された後に１、または２、または３クロック段階を挿入するようなアドレス／データステッピングを用いてもよい。システムプログラマーは、先程も説明したとおり、ＩＳＡサブバスサイクルの間、集積プロセッサ２１０が採用する特定のアドレス／データ段階化機能に一致するコンフィギュレーション値でコンフィギュレーションレジスタ２０９（コンピュータシステム２００のコンフィギュレーション空間内の予め定められたアドレス位置にマップされている）をロードする。結果として、コンフィギュレーションレジスタ２０９内の値によって、システムモニタ２０４は電力管理装置２０２内でシャドー化する必要があるアドレスに対する書込サイクルを検出し、電力管理ステートマシン２０６が、システムモニタ２０４に、アドレスサイクルの直後のＰＣＩクロックサイクルかまたは１、２、３クロックサイクル後のいずれかにＰＣＩバス２２０からのデータをラッチインさせる。ＰＣＩサイクルのデータフェーズの間に、ＰＣＩバスのバイトイネーブル信号は、さらにシステムモニタ２０４によってデコードされ、コンフィギュレーションレジスタ２０９内でシャドー化される特定のバイトが決定される（有効バイトのみがシャドー化される）。
【００３４】
なお、上に述べたようなサブ制御装置を採用する集積プロセッサは、さまざまな他のピン削減回路または技術を採用してもよい。たとえば、集積プロセッサ２１０を、１９９４年２月２日出願の、ウィザー他による「集積プロセッサのための電力管理システム」（Ｐｏｗｅｒ  Ｍａｎａｇｅｍｅｎｔ  Ｓｙｓｔｅｍ  Ｆｏｒ  ａｎ  Ｉｎｔｅｇｒａｔｅｄ  Ｐｒｏｃｅｓｓｏｒ；  ｂｙ  Ｗｉｓｏｒ  ｅｔ  ａｌ．）と題する本件と同時係属中で、同一譲受人に譲渡される米国特許出願連続番号第０８／１９０，２９２号に記載されるような電力管理メッセージバスを採用するよう構成してもよい。この出願についてはその全文につきここに引用により援用する。
【００３５】
これまでの開示について十分に検討すれば、当業者にはさまざまな変更例および修正例が思いつくことであろう。たとえば、図２の高性能多重化アドレス／データバス２２０はＰＣＩ標準バスを用いているが、他の多重化された高性能バスを採用することもできる。さらに、図１の集積プロセッサ２１０には、さまざまな他のオン・チップ周辺装置を組込んでもよい。先行の特許請求の範囲がこのような変更例および修正例のすべてを包含するものとして解釈される。
【図面の簡単な説明】
【図１】本発明に従うコンピュータシステムを含むコンピュータシステムブロック図である。
【図２】図２の集積プロセッサに接続されたＩＳＡ周辺装置に対する読出動作のためのアドレス、データ、および制御信号の発生を示すタイミング図である。
【図３】電力管理を行なうために、書込専用レジスタのシャドー化の際にシステムモニタにより監視される特定の信号を示すタイミング図である。
【符号の説明】
２００…コンピュータシステム
２０２…電力管理装置
２１０…集積プロセッサ
２２０…ＰＣＩバス
２２２…ＰＣＩ周辺装置
２２４…データバッファ
２２６…アドレスラッチ
２２８…ＩＳＡ周辺装置
【図１】
0003609466.tif 000002
【図２】
0003609466.tif 000003
【図３】
0003609466.tif 000004