(57)【要約】【課題】  補助プロセッサを主システムプロセッサに組み込むコンピューティングシステムを提供すること。【解決手段】  補助システムが、プロセス用の別々のアプリケーションランタイムを使用し、主システムがオフ状態である時でも動作することができる。電力消費要件に関するコンピューティングの必要に基づくロードバランシングの方法が提供される。計算集中型でないプロセスは、低電力補助プロセッサによって処理される。さらに、コンピューティングシステム全体からアクセス可能な周辺コンポーネントが、共有される。【選択図】  図４
2005332386.tif 000002
【特許請求の範囲】
【請求項１】
第１ＣＰＵおよび第１メモリを有する主コンピューティングシステムと、
第２ＣＰＵおよび第２メモリを有する補助コンピューティングシステムと、
前記主コンピューティングシステムおよび前記補助コンピューティングシステムに接続された電源と、
前記主コンピューティングシステムと前記補助コンピューティングシステムとの間のコマンドおよび制御インターフェースと
を備えることを特徴とするコンピューティングシステム。
【請求項２】
データおよび通知の共有は、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間のプロセス間通信を介して実行され、前記補助システムは、ＵＳＢバスを介して接続され、前記主システムによってＵＳＢ周辺機器として扱われることを特徴とする請求項１に記載のコンピューティングシステム。
【請求項３】
前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で周辺コンポーネントの所定の１つを切り替える通信コントローラをさらに備え、前記コンポーネントは、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で共有されることを特徴とする請求項２に記載のコンピューティングシステム。
【請求項４】
前記主コンピューティングシステムおよび前記補助コンピューティングシステムのそれぞれは、下流デバイスと通信するために前記通信コントローラに接続されるホストコントローラを含むことを特徴とする請求項１に記載のコンピューティングシステム。
【請求項５】
前記通信コントローラは、前記主コンピューティングシステムおよび前記補助コンピューティングシステムのそれぞれ用の上流Ｐ２Ｐブリッジおよび前記コンポーネントに接続される下流Ｐ２Ｐブリッジを有するＰＣＩ  Ｅｘｐｒｅｓｓ通信コントローラを含み、
前記各上流Ｐ２Ｐブリッジは、内部ＰＣＩバスを介して各下流Ｐ２Ｐブリッジと通信する
ことを特徴とする請求項４に記載のコンピューティングシステム。
【請求項６】
前記通信コントローラは、各下流Ｐ２Ｐブリッジがどの上流Ｐ２Ｐブリッジに応答するかを定義する内部コンフィギュレーション制御レジスタを保存するブリッジマネージャを含むことを特徴とする請求項５に記載のコンピューティングシステム。
【請求項７】
前記コンポーネントは、前記通信コントローラを介して前記主コンピューティングシステムおよび前記補助コンピューティングシステムとの間で同時に共有されることを特徴とする請求項６に記載のコンピューティングシステム。
【請求項８】
各コンピューティングシステムは、アプリケーションランタイムを含み、
前記通信コントローラは、前記コンピューティングシステムでアプリケーションを実行する要件に従って、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で前記周辺コンポーネントの前記所定の１つを切り替えるために応答する
ことを特徴とする請求項１に記載のコンピューティングシステム。
【請求項９】
低集中型タスクは、前記補助コンピューティングシステムでホスティングされることを特徴とする請求項８に記載のコンピューティングシステム。
【請求項１０】
前記補助コンピューティングシステムは、タイマベース対話を提供し、前記補助コンピューティングシステムは、イベントに応答して前記主コンピューティングシステムを起動させることを特徴とする請求項８に記載のコンピューティングシステム。
【請求項１１】
前記補助コンピューティングシステムは、低電力システムであり、前記補助システムは、前記主システムが使用不能である時にアプリケーションを実行するように適合されることを特徴とする請求項８に記載のコンピューティングシステム。
【請求項１２】
前記通信コントローラは、内部ＬＡＮを含み、前記コンポーネントは、そのインターネットプロトコルアドレスを介してアドレッシングされることを特徴とする請求項１に記載のコンピューティングシステム。
【請求項１３】
前記通信コントローラは、分散スイッチを含み、前記コンポーネントは、前記主コンピューティングシステムまたは補助コンピューティングシステムのいずれかによって、アクセスがローカルであるかのように前記分散スイッチを介してアクセスされることを特徴とする請求項１に記載のコンピューティングシステム。
【請求項１４】
スタンバイ状態に入ることが可能でないコンポーネントは、前記補助コンピューティングシステムによって電力管理されることを特徴とする請求項１に記載のコンピューティングシステム。
【請求項１５】
主コンピューティングシステムおよび補助コンピューティングシステムを有するコンピューティングシステムで処理電力消費要件に基づいてサービスのロードバランシングを行う方法であって、
主システムでの現在のシステム負荷を判定することと、
コンポーネントのリストを参照することと、
実行されるアプリケーションの電力消費要件を判定することと
を備え、前記アプリケーションが低集中型タスクである場合に、前記アプリケーションの処理は、前記補助コンピューティングシステムによって実行され、前記アプリケーションが高集中型タスクである場合に、前記アプリケーションの処理は、前記主コンピューティングシステムによって実行される
ことを特徴とする方法。
【請求項１６】
前記アプリケーションが両方のシステムのリソースを使用するように、前記主コンピューティングシステムおよび前記補助コンピューティングシステムのリソースを共有することをさらに備えることを特徴とする請求項１５に記載の方法。
【請求項１７】
前記補助コンピューティングシステムがイベントに応答して前記主コンピューティングシステムを起動させるように、タイマベースの対話を提供することをさらに備えることを特徴とする請求項１６に記載の方法。
【請求項１８】
高性能ＣＰＵおよび第１メモリを有する主コンピューティングシステムと、
低電力ＣＰＵおよび第２メモリを有する補助コンピューティングシステムと、
前記主コンピューティングシステムおよび前記補助コンピューティングシステムに接続された電源と、
前記主コンピューティングシステムおよび前記補助コンピューティングシステムと通信する周辺コンポーネントと、
前記主コンピューティングシステムと前記補助コンピューティングシステムとの間のコマンドおよび制御インターフェースと
を備えることを特徴とする非対称コンピューティングシステム。
【請求項１９】
データおよび通知の共有は、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間のプロセス間通信によって実行され、前記補助システムは、ＵＳＢバスを介して接続され、前記主システムによってＵＳＢ周辺機器として扱われることを特徴とする請求項１８に記載のシステム。
【請求項２０】
前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で周辺コンポーネントの所定の１つを切り替える通信コントローラをさらに備え、前記コンポーネントは、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で共有されることを特徴とする請求項１９に記載のシステム。
【請求項２１】
前記通信コントローラは、前記主コンピューティングシステムおよび前記補助コンピューティングシステムのそれぞれ用の上流Ｐ２Ｐブリッジおよび前記コンポーネントに接続される下流Ｐ２Ｐブリッジを有するＰＣＩ  Ｅｘｐｒｅｓｓ通信コントローラを含み、
前記各上流Ｐ２Ｐブリッジは、内部ＰＣＩバスを介して各下流Ｐ２Ｐブリッジと通信する
ことを特徴とする請求項１８に記載のシステム。
【請求項２２】
各コンピューティングシステムは、アプリケーションランタイムを備え、
前記通信コントローラは、前記コンピューティングシステムでアプリケーションを実行する要件に従って、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で前記周辺コンポーネントの前記所定の１つを切り替えるために応答する
ことを特徴とする請求項１８に記載のシステム。
【請求項２３】
前記補助コンピューティングシステムは、タイマベース対話を提供し、前記補助コンピューティングシステムは、イベントに応答して前記主コンピューティングシステムを起動させることを特徴とする請求項１８に記載のシステム。
【請求項２４】
前記通信コントローラは、内部ＬＡＮを含み、前記コンポーネントは、そのインターネットプロトコルアドレスを介してアドレッシングされることを特徴とする請求項１８に記載のシステム。
【請求項２５】
前記通信コントローラは、ＵＳＢハブを含み、前記コンポーネントは、前記主コンピューティングシステムおよび前記補助コンピューティングシステムによってＵＳＢ周辺機器として見られることを特徴とする請求項１８に記載のシステム。
【請求項２６】
前記通信コントローラは、分散スイッチを含み、前記コンポーネントは、前記主コンピューティングシステムまたは補助コンピューティングシステムのいずれかによって、アクセスがローカルであるかのように前記分散スイッチを介してアクセスされることを特徴とする請求項１８に記載のシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピューティングデバイスの分野に関する。具体的に言うと、本発明は、主コンピューティングシステムがオフであるか使用不能な状態である間にアプリケーションを実行するために補助プロセッサを組み込んだコンピューティングシステムに関する。
【背景技術】
【０００２】
普通のコンピューティングシステムは、「電源オン」状態である時すなわち、コンピュータシステムが立ち上がって稼動している時に限って、有用性を提供する。したがって、コンピューティングシステムがオフ状態またはスタンバイ（低電力）モードである時に、コンピューティングシステムは、使用不能であり、処理を実行することができない。
【０００３】
ユーザまたは、情報の周期的更新などの自動化されたタスクは、しばしば、コンピューティングデバイスとの即座の対話を望む。しかし、従来のコンピューティングシステムの深刻な障害は、コンピューティングデバイスがオンでない時に使用可能になるのに要する時間である。オフであるか、スタンバイモードであるか、または故障を経験している普通のシステムは、使用の準備ができておらず、ブートされるか、スタンバイモードから起動されるか、障害をクリアするためにリブートされなければならない。ブート／起動処理は、数秒から数十秒におよぶ可能性がある。１つの解決策は、コンピューティングデバイスをオン状態のままにすることである。しかし、これは、エネルギー消費の増加につながり、オン状態であるコンピューティングデバイスは、熱放射および音響放射を生成し、これらは、多くの環境で許容可能でない場合がある。
【０００４】
従来のポータブルデバイスのもう１つの障害は、使用の準備をするのが面倒または不便であることである。たとえば、ラップトップ機は、情報へのアクセスを得るために、鞄から取り出し、広げる必要がある場合がある。そのようなデバイスが、エッジに取り付けられるか他の補助ディスプレイを含み、その補助ディスプレイを、鞄の中にある間に見ることができ、ラップトップ機を開く必要がなくなるならば、有益である。
【０００５】
上記のほかに、従来のコンピューティングシステムは、現在、伝統的にスタンドアローン型デバイスで実施されてきた特徴を実施するのに使用されている。たとえば、従来のコンピューティングシステムは、ディジタルビデオレコーダ（ＤＶＲ）、オーディオ再生、電話などを実施するのに使用されている。これらの特徴の追加は、コンピューティングシステムが毎週７日、毎日２４時間使用可能であることを必要とする。というのは、このシステムが、いつでも、テレビジョン番組を録画し、音楽を再生し、電話の発呼または着呼の世話をすることを要求される可能性があるからである。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、低集中型タスクを処理できるままでありながら低電力状態にすることができるコンピューティングシステムを提供するシステムおよび方法の必要がある。本発明は、そのような解決策を提供する。
【課題を解決するための手段】
【０００７】
本発明は、システムの中央処理ユニットに加えて補助マイクロプロセッサを含むコンピューティングシステムを対象とする。補助マイクロプロセッサは、システム中央プロセッサに統合することもでき、この場合に、統合された補助マイクロプロセッサまたは外部補助マイクロプロセッサの両方に、類似する形でコンポーネントへのアクセスが提供される。補助システムは、プロセス用の別々のアプリケーションランタイムを使用し、主システムが「オフ」状態である時でも動作することができる。電力消費要件に関するコンピューティングの必要に基づくロードバランシングの方法を提供することができる。たとえば、計算集中型でないプロセスを、低電力補助システムに送ることができる。
【０００８】
通知、データ、およびコマンドを、ＵＳＢなどの共通の接続バスを介して、別々のプロセッサの制御の下で動作するプロセスの間で送ることができる。さらに、ディスプレイ、インジケータ、ストレージデバイス、および入出力コンポーネントを含む、コンピューティングシステム全体からアクセス可能なコンポーネントを、補助システムと主システムの間で共有することができる。本発明は、全体的な電力消費を大幅に減らすスケーラブルな処理能力を提供する。
【０００９】
本発明によれば、第１ＣＰＵおよび第１メモリを有する主コンピューティングシステムと、第２ＣＰＵまたは他のロジックデバイスおよび第２メモリを有する補助コンピューティングシステムと、前記主コンピューティングシステムおよび前記補助コンピューティングシステムに接続された電源と、コンポーネントが前記主コンピューティングシステムおよび前記副コンピューティングシステムとの間で共有されるように、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で周辺コンポーネントの所定の１つを切り替える通信コントローラとを含むことを特徴とするコンピューティングシステムが提供される。
【００１０】
本発明のもう１つの態様によれば、主コンピューティングシステムおよび補助コンピューティングシステムを有するコンピューティングシステムで処理電力消費要件に基づいてサービスのロードバランシングを行う方法が提供される。この方法には、主システムでの現在のシステム負荷を判定することと、コンポーネントのリストを参照することと、実行されるアプリケーションの電力消費要件を判定することとが含まれる。前記アプリケーションが低集中型タスクである場合に、前記アプリケーションの処理は、前記補助コンピューティングシステムによって実行され、前記アプリケーションが高集中型タスクである場合に、前記アプリケーションの処理は、前記主コンピューティングシステムによって実行される。
【００１１】
本発明のもう１つの態様によれば、高性能ＣＰＵおよび第１メモリを有する主コンピューティングシステムと、低電力ＣＰＵおよび第２メモリを有する補助コンピューティングシステムと、前記主コンピューティングシステムおよび前記補助コンピューティングシステムに接続された電源と、前記主コンピューティングシステムおよび前記補助コンピューティングシステムと通信する周辺コンポーネントと、前記コンポーネントが前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で共有されるように、前記主コンピューティングシステムと前記補助コンピューティングシステムとの間で前記周辺コンポーネントの所定の１つを切り替える通信コントローラとを含むことを特徴とする非対称コンピューティングのシステムが提供される。
【００１２】
本発明の追加の特徴および利益は、添付図面に関して進行する例示的実施形態の次の詳細な説明から明白になる。
【００１３】
前述の要約ならびに次の好ましい実施形態の詳細な説明は、添付図面と共に読まれる時によりよく理解される。本発明の例示において、図面に本発明の例示的実施形態を示すが、本発明は、開示される特定の説明および手段に制限されない。
【発明を実施するための最良の形態】
【００１４】
従来のパーソナルコンピュータ
【００１５】
図１に、普通のパーソナルコンピュータシステム環境１００の例を示す。コンピュータ１１０のコンポーネントに、処理ユニット１２０、システムメモリ１３０、およびシステムメモリを含むさまざまなシステムコンポーネントを処理ユニット１２０に結合するシステムバス１２１が含まれる。システムバス１２１は、メモリバス、メモリコントローラ、周辺バス、およびさまざまなバスアーキテクチャのいずれかを使用するローカルバスを含む複数のタイプのバス構造のいずれかとすることができる。制限ではなく例として、そのようなアーキテクチャに、Ｉｎｄｕｓｔｒｙ  Ｓｔａｎｄａｒｄ  Ａｒｃｈｉｔｅｃｔｕｒｅ（ＩＳＡ）バス、マイクロチャネルアーキテクチャ（ＭＣＡ）バス、Ｅｎｈａｎｃｅｄ  ＩＳＡ（ＥＩＳＡ）バス、Ｖｉｄｅｏ  Ｅｌｅｃｔｒｏｎｉｃｓ  Ｓｔａｎｄａｒｄｓ  Ａｓｓｏｃｉａｔｉｏｎ（ＶＥＳＡ）ローカルバス、Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ（ＰＣＩ）バス（メザニンバスとも称する）、Ｐｅｒｉｐｈｅｒａｌ  Ｃｏｍｐｏｎｅｎｔ  Ｉｎｔｅｒｃｏｎｎｅｃｔ  Ｅｘｐｒｅｓｓ（ＰＣＩ−Ｅｘｐｒｅｓｓ）、およびＳｙｓｔｅｍｓ  Ｍａｎａｇｅｍｅｎｔ  Ｂｕｓ（ＳＭＢｕｓ）が含まれる。
【００１６】
コンピュータ１１０に、通常は、さまざまなコンピュータ可読媒体が含まれる。コンピュータ可読媒体は、コンピュータ１１０によってアクセスでき、揮発性媒体および不揮発性媒体、取外し可能媒体および取外し不能媒体の両方を含む使用可能な媒体のいずれかとすることができる。制限ではなく例として、コンピュータ可読媒体に、コンピュータ記憶媒体および通信メディアを含めることができる。コンピュータ記憶媒体に、コンピュータ可読命令、データ構造、プログラムモジュール、または他のデータなどの情報を保管する任意の方法またはテクノロジーで実施された、揮発性および不揮発性、取外し可能および取外し不能の両方の媒体が含まれる。コンピュータ記憶媒体に、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、および他のメモリテクノロジー、ＣＤ−ＲＯＭ、ディジタル多用途ディスク（ＤＶＤ）、または他の光学ディスクストレージ、磁気カセット、磁気テープ、磁気ディスクストレージ、または他の磁気記憶装置、あるいは所望の情報の保管に使用でき、コンピュータ１１０によってアクセスできる他のすべての媒体が含まれるが、これに制限はされない。通信媒体によって、通常は、搬送波または他のトランスポート機構などの変調されたデータ信号中にコンピュータ可読命令、データ構造、プログラムモジュール、または他のデータを具現化するものであり、通信媒体には、すべての情報伝達媒体が含まれる。用語「変調されたデータ信号」は、信号内で情報をエンコードする形でその特性の１つまたは複数を設定または変更された信号を意味する。制限ではなく例として、通信媒体に、有線ネットワークまたは直接配線接続などの有線媒体と、音響、ＲＦ、赤外線、および他の無線媒体などの無線媒体が含まれる。上記のいずれかの組合せも、コンピュータ可読媒体の範囲に含まれなければならない。
【００１７】
システムメモリ１３０に、ＲＯＭ  １３１およびＲＡＭ  １３２などの揮発性メモリおよび／または不揮発性メモリの形のコンピュータ記憶媒体が含まれる。起動中などにコンピュータ１１０内の要素の間での情報の転送を助ける基本ルーチンを含む基本入出力システム１３３（ＢＩＯＳ）が、通常はＲＯＭ  １３１に保管される。ＲＡＭ  １３２には、通常は、処理ユニット１２０から即座にアクセス可能、かつ／または処理ユニット１２０によって現在操作中のデータおよび／またはプログラムモジュールが含まれる。制限ではなく例として、図１に、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７を示す。
【００１８】
コンピュータ１１０に、他の取外し可能／取外し不能、揮発性／不揮発性のコンピュータ記憶媒体も含めることができる。例のみとして、図１に、取外し不能不揮発性磁気媒体から読み取るかこれに書き込むハードディスクドライブ１４１、取外し可能不揮発性磁気ディスク１５２から読み取るかこれに書き込む磁気ディスクドライブ１５１、ＣＤ−ＲＯＭまたは他の光媒体などの取外し可能不揮発性光ディスク１５６から読み取るかこれに書き込む光ディスクドライブ１５５を示す。例示的なオペレーティング環境で使用できる他の取外し可能／取外し不能、揮発性／不揮発性のコンピュータ記憶媒体に、磁気テープカセット、フラッシュメモリカード、ディジタル多用途ディスク、ディジタルビデオテープ、ソリッドステートＲＡＭ、ソリッドステートＲＯＭ、および類似物が含まれるが、これに制限はされない。ハードディスクドライブ１４１は、通常は、インターフェース１４０などの取外し不能メモリインターフェースを介してシステムバス１２１に接続され、磁気ディスクドライブ１５１および光ディスクドライブ１５５は、通常、インターフェース１５０などの取外し可能メモリインターフェースによってシステムバス１２１に接続される。
【００１９】
上で説明し、図１に示したドライブおよびそれに関連するコンピュータ記憶媒体は、コンピュータ１１０のコンピュータ可読命令、データ構造、プログラムモジュール、および他のデータの記憶を提供する。図１では、たとえば、ハードドライブ１４１が、オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７を保管するものとして図示されている。これらのコンポーネントを、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７と同一のまたは異なるもののいずれかとすることができることに留意されたい。オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７は、最低限でも異なるコピーであることを示すために、異なる符号を与えられている。ユーザは、キーボード１６２および、一般にマウス、トラックボール、またはタッチパッドと称するポインティングデバイス１６１などの入力デバイスを介してコンピュータ１１０にコマンドおよび情報を入力することができる。他の入力デバイス（図示せず）に、マイクロホン、ジョイスティック、ゲームパッド、衛星パラボラアンテナ、スキャナ、または類似物を含めることができる。上記および他の入力デバイスは、しばしば、システムバスに結合されたユーザ入力インターフェース１６０を介して処理ユニット１２０に接続されるが、パラレルポート、ゲームポート、またはｕｎｉｖｅｒｓａｌ  ｓｅｒｉａｌ  ｂｕｓ（ＵＳＢ）などの他のインターフェースおよびバス構造によって接続することができる。モニタ１９１または他のタイプのディスプレイデバイスも、ビデオインターフェース１９０などのインターフェースを介してシステムバス１２１に接続される。モニタのほかに、コンピュータに、スピーカ１９７およびプリンタ１９６など、出力周辺インターフェース１９５を介して接続できる他の周辺出力デバイスも含めることができる。
【００２０】
コンピュータ１１０は、リモートコンピュータ１８０などの１つまたは複数のリモートコンピュータへの論理接続を使用して、ネットワーク化された環境で動作することができる。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、または他の一般的なネットワークノードとすることができ、通常は、上でコンピュータ１１０に関して説明した要素の多くまたはすべてが含まれるが、図１には、メモリストレージデバイス１８１だけを示した。図示の論理接続に、ローカルエリアネットワーク（ＬＡＮ）１７１および広域ネットワーク（ＷＡＮ）１７３が含まれるが、他のネットワークも含めることができる。そのようなネットワーキング環境は、オフィス、会社全体のコンピュータネットワーク、イントラネット、およびインターネットでありふれたものである。
【００２１】
ＬＡＮネットワーキング環境で使用される時に、コンピュータ１１０は、ネットワークインターフェースまたはネットワークアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーキング環境で使用される時に、コンピュータ１１０に、通常は、インターネットなどのＷＡＮ１７３を介する通信を確立する、モデム１７２または他の手段が含まれる。モデム１７２は、内蔵または外付けとすることができるが、ユーザ入力インターフェース１６０または他の適当な手段を介してシステムバス１２１に接続することができる。ネットワーク化された環境では、コンピュータ１１０に関して図示されたプログラムモジュールまたはその一部を、リモートメモリストレージデバイスに保管することができる。制限ではなく例として、図１に、メモリデバイス１８１に常駐するものとしてリモートアプリケーションプログラム１８５を示す。図示のネットワーク接続が例示的であり、コンピュータの間の通信リンクを確立する他の手段を使用できることを諒解されたい。
【００２２】
補助コンピューティング環境および主コンピューティング環境を提供する例示的システム
【００２３】
図２および３を参照すると、主システムまたは補助システムのいずれかの電力状態に基づいてコンポーネントを共有するシステム２００の概要が示されている。システム２００には、主ＣＰＵおよびメモリを有する第１ルートコンプレックス（主システム）２０１が含まれる。主システムは、複雑なタスクを処理するのに十分に高い処理能力を有するので、普通のコンピュータ１１０に類似する。第２ルートコンプレックス（補助システム）２０２に、補助（低電力）ＣＰＵおよびメモリが含まれる。補助システム２０２は、ＰＤＡに似た、より少ない処理能力を有する低電力デバイスとすることができる。両方のルートコンプレックスに、電源２０３によって電力を与えることができ、電源２０３は、主システム２０１および補助システム２０２に、切り替えられる電源を供給する。
【００２４】
図３に、補助システム２０２の例示的実施形態を示す。補助システム２０２に、組み込みプロセッサ２３９、ブートローダ／アプリケーションストア２４０、ＵＳＢクライアント２４１、不揮発性ストアとして働く補助データキャッシュ２４２、およびＩ２Ｃ通信接続２４３が含まれる。補助システム２０２は、ＵＳＢ  ２４７、ＳＭＢｕｓ  ２４６、およびＧＰＩＯ（Ｇｅｎｅｒａｌ  Ｐｕｒｐｏｓｅ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ）２４４（アクチュエータ２４５を介して）を介して入力を受け取ることができる。ディスプレイ２２４も設けることができる。
【００２５】
図２および３のアーキテクチャを使用すると、アプリケーションは、各システムの電力状態とは別に、システム２０１または２０２（すなわち、主または副のルートコンプレックス、補助システム）のいずれかで動作することができる。さらに、主２０１または補助２０２のいずれかの処理システムは、ＳＭＢｕｓ  ２４６などのシステムコマンドバスを介して、他方にウェイクイベントおよびスリープイベントの信号を送ることができる。最後に、両方のシステムが動作している場合に、一方のシステムのプロセスが、ＵＳＢなどの共通バスを介して、他方と通信し、通知を送り、データを送ることができる。このモデルでは、主システムは、補助システムをＵＳＢ周辺機器として扱う。
【００２６】
上記のほかに、コンピューティングシステム全体のコンポーネントを共有することができる。補助システム２０２は、プロセスにそれ自体の別々のアプリケーションランタイムを使用し、これによって、補助システムが、主システム２０１が「オフ」または「使用不能」状態である間に達成されるシナリオに一致するアプリケーションを実行できるようになる。電源２０３は、ホストコントローラインターフェース２０４に出力を供給して、特定のコンプレックスがオン状態であることを示す。ホストコントローラインターフェースは、インジケータ２０５、ハードドライブ２０６、補助ディスプレイ２０７などの周辺機器の制御を、主システム２０１と補助システム２０２の間で、電源がオンであるシステムに切り替える。
【００２７】
本発明は、物理的にシステム２００の一部であるコンポーネントまたはリモートに置かれ、システム２００によってアクセス可能なコンポーネントの共有を提供することによって、このアーキテクチャに改良を加える。通常のＰＣアーキテクチャでは、ストレージ、主ディスプレイ、補助ディスプレイ、アクチュエータ、ハードウェアメディアコンポーネント（ＴＶチューナ、ＭＰＥＧエンコーダ／デコーダなど）、周辺機器などのコンポーネントが、主ＣＰＵおよびランタイムだけによってアクセスされ、制御される。コンポーネントのいずれかが、他の外部コンピューティングシステムと共有される場合に、その共有は、ネットワーク共有を介する。主ＣＰＵおよびオペレーティングシステムが「オフ」の時に、ハードドライブ、ＵＳＢ駆動のコンポーネントおよび周辺機器、主ディスプレイおよび補助ディスプレイなどのコンポーネントを第２システム（オンボードまたはオフボード）による使用に使用可能にすることを可能にする機構はない。
【００２８】
本発明は、マザーボード上の（または他の形で接続された）コンポーネントを、どちらのＣＰＵがそのコンポーネントを「所有する」かの見かけの「オン／オフ」状態と無関係に、プロセッサおよびオペレーティングシステムの間で所有でき、アクセスでき、かつ／または共有できる実施形態を提供する。図４を参照すると、主プロセッサ２０８を有する主システム２０１と補助プロセッサ２１１を有する補助システム２０２の間でのコンポーネントおよびリソースの共有を可能にする、本発明の実施形態が示されている。主プロセッサおよび補助プロセッサは、本発明では非対称である。各システムに、下流デバイスと通信する、それ自体のホストコントローラ（主ホストコントローラ２０９および補助ホストコントローラ２１０）が含まれる。主システム２０１は、ディスプレイとしてモニタ２１７を有する。
【００２９】
「スマート」ＰＣＩ  Ｅｘｐｒｅｓｓスイッチ２１２に、それぞれが独立の内部ＰＣＩバスを有する２つの上流Ｐ２Ｐブリッジ２１３および２１４と、複数の下流Ｐ２Ｐブリッジ２１８、２１９、および２２０が含まれる。各下流Ｐ２Ｐブリッジは、各内部ＰＣＩバスに接続される。普通のＰＣＩ  Ｅｘｐｒｅｓｓスイッチと異なって、各下流Ｐ２Ｐブリッジは、内部ＰＣＩバスの列挙エクササイズ（ｅｎｕｍｅｒａｔｉｏｎ  ｅｘｅｒｃｉｓｅ）に応答するように構成される能力を有する。ブリッジマネージャ２１６に、各上流バスが応答する下流Ｐ２Ｐブリッジを定義する内部コンフィギュレーション制御レジスタが含まれる。他のＰＣＩバスからの通信は無視される。
【００３０】
上で注記したように、ＰＣＩ  Ｅｘｐｒｅｓｓスイッチ２１２は、任意のコンポーネントを２つのシステム２１０と２０２の間で切り替えることができる。図からわかるように、キーボード２２１、マウス２２２、ハードドライブ２０６、フラッシュメモリ２２３、補助ユーザインターフェース（ディスプレイ）２２４、および補助アクチュエータ２２５を、システムの間で切り替えることができる。他のコンポーネントを付加し、システム２０１と２０２の間で切り替えることができるので、このリストは、網羅的なリストとして意図されたものではない。
【００３１】
したがって、本発明によれば、ルートコンプレックス２０１および２０２の両方が、スイッチ２１２で上流ポート（たとえばＰ２Ｐ  ２１３およびＰ２Ｐ  ２１４）に接続される。したがって、すべての下流コンポーネントに、どちらのルートコンプレックスからもアクセスすることができる。
【００３２】
さらに、スマートＰＣＩスイッチは、コンポーネントの同時共有を可能にする。この形で、主システムおよび補助システムならびに主ランタイムおよび補助ランタイムの両方が、ディスプレイが物理的に主システムのコンポーネントセットと補助システムのコンポーネントセットのどちらの一部であるかに無関係に、補助ユーザインターフェース２２４にデータを書き込むことができる。同様に、オーディオコンポーネントがどの下流ポートに接続されているかに無関係に、そのオーディオコンポーネントを介してディジタルメディアをストリーミングすることができる。
【００３３】
ＡＣＰＩ電力管理は、ルートコンプレックスによって別々に処理される。主システム２０１は、「オフ」状態になる時に、それに既知のすべてのコンポーネントにＡＣＰＩイベントを送る。スマートＰＣＩスイッチ２１２から下流の、内部ＬＡＮ上の、またはスマートＵＳＢハブ（下で説明する）上のコンポーネントは、他のルートコンプレックス（すなわち補助システム２０２）がオンである限り、オンのままになる。さらに、いくつかのコンポーネントは、非常に貧弱な電力管理制約を有する。たとえば、ＵＳＢコンポーネントは、通常は、スタンバイモードにすることができず、主システム２０１がスタンバイモードに入る場合に完全に電源を切らなければならない。本発明によれば、これらのデバイスでのあるレベルの電力管理を可能にするために、主プロセッサ２０８がスタンバイ状態またはオフ状態に入る時に、これらのデバイスを補助プロセッサ２１１によって管理することができる。
【００３４】
図５に、ＰＣＩ  Ｅｘｐｒｅｓｓスイッチ２１２を、たとえばサウスブリッジチップセットでホスティングできることの概要を示す。当業者に既知のように、サウスブリッジチップセットは、たとえばネットワーク入出力デバイス２２９、ディスクストレージ（たとえばハードドライブ２０６）、ＵＳＢ周辺機器２２８、およびＨＩＤコントロール２２７と通信する。ＨＩＤコントロールは、ＨＩＤＣｌａｓｓデバイスに関連するデータソースまたはデータシンクである。データソースまたは入力コントロールの例が、ボタンである。データシンクまたは出力コントロールの例が、ＬＥＤである。制御データは、ＨＩＤレポートを使用することによって入手され、デバイスに送られる。
【００３５】
当業者が理解するように、コンピューティングの連続的（２４×７）なまたは瞬間的な可用性を必要とする新しいコンピューティングシナリオが、生まれつつある。そのシナリオに、アプライアンスおよびコンシューマ電子機器の管理が含まれるが、これに制限はされない。したがって、システムの電源をオフにし、ユーザ関連のコストを最小にし、環境フレンドリなシステム（ノイズ）を提供するというユーザの期待に合わせるために、イベントを適切に認識し、処理しながら、電力消費およびファンノイズを管理するインテリジェントな手段が必要である。
【００３６】
本発明は、補助システム２０２でホスティングすることによって、低集中型のタスクおよび動作を常時使用可能にすることができるので、総合的な電力消費を減らし、ファン使用（すなわち、音響放射）をなくす。たとえば、普通のコンピュータ１１０は、スプレッドシートを編集し、電子メールを監視しながらディジタルオーディオファイルを再生する能力を提供する。しかし、必要なものがディジタルオーディオファイルの再生だけである場合に、コンピュータ１１０は、必要よりはるかに多い処理能力を有し、電源または電池のいずれかからの供給電力に対する過度のドレインとなる。本発明によれば、補助システム２０２が、オーディオファイル再生のタスクをホスティングでき、主システム２０１の電源を切ることができる。
【００３７】
さらに、補助システム２０２は、ＶＯＩＰ呼出しへの応答またはセキュリティ許可検査など、即座に処理される必要があるイベントに応答することができる。これによって、それほど時間にクリティカルでないか、処理に主システムの全リソースを必要とするイベントを処理するために主システム２０１をウェイクアップするのに十分な時間がもたらされる。
【００３８】
本発明は、タイマベースの対話にも有用である。主システム２０１は、ウェイクオンタイマイベントの概念をサポートするが、使用可能な状態になるまでに３０秒以上を要する場合がある。したがって、ディジタルビデオレコーダ（ＤＶＲ）シナリオでは、主システム２０１は、保管すべきメディアストリームを送られている場合に、録画時間のうちの３０秒を失う。しかし、補助システム２０２は、両方向ストリーミングプロセスをイネーブルし、補助システム２０２は、主プロセッサによってイネーブルされている場合に、課せられた電源コストまたは電池コストなしで使用可能にすることができる。補助システム２０２は、メディアエンコード／デコードについて、主システム２０１と同一のハードウェアアシストを利用することもできる。本発明の関連するモデルは、主ディスプレイから補助ディスプレイへのディジタルＴＶストリームの再ルーティングなど（補助ディスプレイは、補助プロセッサおよび補助ランタイムに物理的に関連する）、分散データストリームをサポートすることである。
【００３９】
さらなる利益は、主システム２０１が、障害を発生したことの「オフ」状態である時でも補助システム２０２が動作することである。したがって、補助システム２０２は、主システム２０１の問題の場合に主システム２０１を監視し、問い合わせるのに使用することができる。
【００４０】
図６を参照すると、内部ＬＡＮがコンポーネントの共有に使用される実施形態が示されている。各コンポーネントを、それ自体のインターネットプロトコルアドレスを介してアドレッシングすることができる。システムマザーボード２３３を、イーサネット（登録商標）ネットワークを介して周辺コントローラ２１５に接続することができる。マザーボード２３３は、インターネットプロトコルアドレスを介して、周辺コントローラ２１５に接続された周辺機器のそれぞれ（たとえば、ユーザインターフェース２２４、ビデオ２３４、オーディオ２３２、ハードドライブ２３０、フラッシュメモリドライブ２２３）をアドレッシングすることができる。
【００４１】
周辺コントローラ２１５は、それが制御するコンポーネントごとに個々のコンポーネントの識別およびアクセスを表し、外部から可視の個々のインターネットプロトコルアドレスにマッピングする責任を負う。周辺コントローラを表す単一のＩＰアドレスがあることが可能であり、照会された時に、周辺コントローラが、アドレッシングに関する能力および／またはコマンドの詳細のリストを供給または公開することができる。
【００４２】
図７を参照すると、複数のルートコンポーネントの間でコンポーネントを使用可能にするためにＵＳＢハブアーキテクチャが実施される実施形態が示されている。各ルートコンプレックス２０１および２０２は、ＵＳＢ周辺機器として、共有されるコンポーネントを見る。この実施形態では、ＰＣＩ  Ｅｘｐｒｅｓｓスイッチ２１２に似た、下流コンポーネントの同期アクセスについて上流ラインの間で切り替えることができる変更されたＵＳＢハブ２４９が使用される。
【００４３】
図８を参照すると、処理電力消費要件に基づくサービスのロードバランシングを対象とする、本発明のもう１つの態様が示されている。アプリケーション２３５が実行される時に、プロセッサマネージャ２３６が、現在のシステム負荷（すなわち、主プロセッサ２０８の負荷）を判定し、動作しているコンポーネントの列挙されたリスト（たとえば、光ドライブ、ディスクドライブ、エンコーダ／デコーダなど）を参照する。そのようなリストは、タスクリストに含まれる情報から導出することができる。アプリケーション２３５が単純な低集中型タスクである場合には、プロセッサマネージャ２３６は、これを補助システム２０２に切り替える。その一方で、アプリケーションが非常に集中型のタスクである場合には、プロセッサマネージャ２３６は、これを主システム２０１に切り替える。さらに、いくつかのアプリケーションが、両方のプロセッサのリソースを使用することができる。また、プラットフォームおよびタスクを、その実行のために適当なプロセッサおよびランタイムに区分することが可能である。このロードバランシングは、システムリソースのより効率的な使用をもたらす。
【００４４】
プロセッサマネージャ２３６内でこの機能性を有することの結果は、低集中型アプリケーションが動作している時に、システムの大電力消費コンポーネントの電源を完全に切ることができることである。プロセッサ２０８および２１１の両方が、ハードディスク、入力デバイスなどのＰＣアーキテクチャのコンポーネントを共有することができる。アプリケーション２３５は、単一のアプリケーションモデルを使用して記述することができる。
【００４５】
図９を参照すると、「分散」スイッチ（２３７および２３８として図示）を介して接続されたコンポーネントが示されている。主システムまたは補助システム２０１および２０２のいずれかによるアクセスは、このスイッチを介し、これは、そのアクセスが、制御を指示するプロセッサにローカルであるかのようになる。分散スイッチの２つの端は、ＩｒＤＡ、Ｂｌｕｅｔｏｏｔｈ、および８０２．１１ｘなど（これに制限されない）の複数の物理トランスポートのいずれかを介して互いに接続される。
【００４６】
本発明を、さまざまな図の好ましい実施形態に関して説明したが、本発明から逸脱せずに、本発明と同一の機能を実行するために、他の類似する実施形態を使用することができ、あるいは、説明された実施形態に対して変更または追加を行えることを理解されたい。たとえば、本明細書に記載の本発明を、有線であれ無線であれ、すべてのコンピューティングデバイスまたはコンピューティング環境に適用することができ、通信ネットワークを介して接続され、ネットワークにまたがって対話する任意の個数のそのようなコンピューティングデバイスに適用できることを、当業者は理解されよう。さらに、特に複数の無線ネットワーク化されたデバイスが増え続けるので、ハンドヘルドデバイスオペレーティングシステムおよび他のアプリケーション固有オペレーティングシステムを含むさまざまなコンピューティングプラットフォームが、意図されることを強調しなければならない。さらに、本発明は、複数の処理チップまたは処理デバイス内またはこれらにまたがって実施することができ、ストレージを、同様に、複数のデバイスにまたがってもたらすことができる。したがって、本発明は、単一の実施形態に制限されるのではなく、請求項による広がりおよび範囲で解釈されなければならない。
【図面の簡単な説明】
【００４７】
【図１】従来のパーソナルコンピュータを示すブロック図である。
【図２】主システムまたは補助システムの電力状態に基づいてコンポーネントを共有する全般的なシステムを示すブロック図である。
【図３】主コンピューティングデバイスに対する別々に電力を与えられるＵＳＢ周辺機器としての補助プロセッサコンポーネントを示すブロック図である。
【図４】ＰＣＩ  Ｅｘｐｒｅｓｓスイッチング要素を使用してコンポーネントを共有するシステムを示すブロック図である。
【図５】ＰＣＩ  Ｅｘｐｒｅｓｓスイッチング要素がサウスブリッジチップセットに含まれる、コンポーネントを共有するシステムを示すブロック図である。
【図６】内部ＬＡＮを使用してコンポーネントを共有するシステムを示すブロック図である。
【図７】ＵＳＢハブアーキテクチャを使用してコンポーネントを共有するシステムを示すブロック図である。
【図８】主システムと補助システムの間でアプリケーションのロードバランシングを行うシステムを示すブロック図である。
【図９】分散スイッチを使用してコンポーネントを共有するシステムを示すブロック図である。
【符号の説明】
【００４８】
１００  コンピューティング環境
１３０  システムメモリ
１３４  オペレーティングシステム
１３５  アプリケーションプログラム
１３６  他のプログラムモジュール
１３７  プログラムデータ
１２０  処理ユニット
１９０  ビデオインターフェース
１９５  出力周辺インターフェース
１９１  モニタ
１９６  プリンタ
１９７  スピーカ
１２１  システムバス
１４０  取外し不能不揮発性メモリインターフェース
１５０  取外し可能不揮発性メモリインターフェース
１６０  ユーザ入力インターフェース
１７０  ネットワークインターフェース
１７１  ローカルエリアネットワーク
１４４  オペレーティングシステム
１４５  アプリケーションプログラム
１４６  他のプログラムモジュール
１４７  プログラムデータ
１６１  マウス
１６２  キーボード
１７２  モデム
１７３  広域ネットワーク
１８０  リモートコンピュータ
１８５  リモートアプリケーションプログラム
２０３  電源
２０１  主システム
２０９  主ＨＣ（ホストコントローラ）
２１０  補助ＨＣ（ホストコントローラ）
２０２  補助システム
２１７  モニタ
２１６  ブリッジマネージャ
２２１  キーボード
２２２  マウス
２０６  ハードドライブ
２２３  フラッシュ
２２４  補助ユーザインターフェース
２２５  補助アクチュエータ
【図１】
2005332386.tif 000003
【図２】
2005332386.tif 000004
【図３】
2005332386.tif 000005
【図４】
2005332386.tif 000006
【図５】
2005332386.tif 000007
【図６】
2005332386.tif 000008
【図７】
2005332386.tif 000009
【図８】
2005332386.tif 000010
【図９】
2005332386.tif 000011
【外国語明細書】
2005332386000001.pdf