(57)【特許請求の範囲】
【請求項１】
コンピュータシステムであって、当該コンピュータシステムは、
当該コンピュータシステムに電力を供給するバッテリと、
オペレーティングシステム（OS）を実行させるプロセッサと、
基本入出力システム（BIOS）と、を有しており、
該基本入出力システムは、
前記プロセッサをスリープ状態に移行させるＯＳ要求に応答して、前記プロセッサに関する制御を引き継ぐインターセプタであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるインターセプタと、
前記スリープ状態よりも短いウェイクアップ遅延を有する中間状態に前記プロセッサを移行させる移行部であって、該移行部は、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装され、前記移行部は、組込みコントローラ（EC）の電力コマンドの発生を含む１つ又は複数のデバイス電力低下動作を実行するための、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されたデバイス省電力部を含む、移行部と、
ウェイクアップ・イベントが検出されるまで、前記プロセッサを前記中間状態に維持するウェイクアップ・ユニットであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるウェイクアップ・ユニットと、を含み、
前記移行部は、ＢＩＯＳの再認証なしで、前記デバイス省電力部による１つ又は複数の前記電力低下動作を逆転させることと並行して、前記プロセッサに関する制御を前記ＯＳに移す、
コンピュータシステム。
【請求項２】
前記ＢＩＯＳは、前記ウェイクアップ・イベントに応答して、１つ又は複数の電力低下動作を逆転させるレジューム・ユニットをさらに含み、該レジューム・ユニットは、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装され、前記１つ又は複数の電力低下動作は、不揮発性メモリからメモリ構成データを復元する、請求項１に記載のコンピュータシステム。
【請求項３】
前記移行部は、
前記プロセッサのリセットを行う状態クリア部であって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装される状態クリア部と、
メモリ構成データの復元を含む１つ又は複数のプロセッサ再開動作を実行するレジューム・ユニットであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるレジューム・ユニットと、
前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部であって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるプロセッサ省電力部と、
ウェイクアップ・イベントに応答して、前記プロセッサに関する制御を前記ＯＳに移すハンドオフ・ユニットであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるハンドオフ・ユニットと、を含む、請求項１又は２に記載のコンピュータシステム。
【請求項４】
前記スリープ状態は、ＡＣＰＩ(Advanced  Configuration  and  Power  Interface)のＳ３状態である、請求項３に記載のコンピュータシステム。
【請求項５】
前記移行部は、
前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部であって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるプロセッサ省電力部と、を含む、請求項１又は２に記載のコンピュータシステム。
【請求項６】
前記スリープ状態は、ＡＣＰＩのＳ１状態であり、要求された前記スリープ状態がＡＣＰＩ  Ｓ１状態であるときに、状態クリア部が、前記プロセッサのリセットをバイパスさせ、前記状態クリア部は、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装される、請求項５に記載のコンピュータシステム。
【請求項７】
基本入出力システム（BIOS）を動作させる方法であって、当該方法は、
プロセッサをスリープ状態に移行させるオペレーティングシステム（OS）要求に応答して、インターセプタがプロセッサに関する制御を引き継ぐステップと、
移行部のデバイス省電力部が組込みコントローラ（EC）の電力コマンドの発生を含む１つ又は複数のデバイス電力低下動作を実行することにより、前記移行部が前記スリープ状態よりも短いウェイクアップ遅延を有する中間状態に前記プロセッサを移行させるステップと、
ウェイクアップ・イベントが検出されるまで、ウェイクアップ・ユニットが前記プロセッサを前記中間状態に維持するステップと、を含み、
前記移行部によって、前記プロセッサに関する制御は、ＢＩＯＳの再認証なしで、前記デバイス省電力部による１つ又は複数の前記電力低下動作を逆転させることと並行して、前記ＯＳに移される、
方法。
【請求項８】
前記ウェイクアップ・イベントに応答して、レジューム・ユニットが１つ又は複数の電力低下動作を逆転させるステップをさらに含み、前記１つ又は複数の電力低下動作は、前記レジューム・ユニットによって不揮発性メモリからメモリ構成データを復元するステップを含む、請求項７に記載の方法。
【請求項９】
前記プロセッサを前記中間状態に移行させるステップは、
状態クリア部が前記プロセッサのリセットを行うステップと、
レジューム・ユニットが、メモリ構成データの復元を含む１つ又は複数のプロセッサ再開動作を実行するステップと、
プロセッサ省電力部が、前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行するステップと、
ハンドオフ・ユニットが、前記プロセッサに関する制御を前記ＯＳに移すステップと、を含む、請求項７又は８に記載の方法。
【請求項１０】
前記スリープ状態は、ＡＣＰＩのＳ３状態である、請求項９に記載の方法。
【請求項１１】
前記プロセッサを前記中間状態に移行させるステップは、
プロセッサ省電力部が、前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行するステップと、を含む、請求項７又は８に記載の方法。
【請求項１２】
前記スリープ状態は、ＡＣＰＩのＳ１状態であり、前記スリープ状態がＡＣＰＩ  Ｓ１状態であるときに、状態クリア部が、前記プロセッサのリセットをバイパスさせ、前記状態クリア部は、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装される、請求項１１に記載の方法。
【請求項１３】
基本入出力システム（BIOS）命令のセットを含むプログラムであって、コンピュータシステムによって実行されたときに、該コンピュータシステムに、
プロセッサをスリープ状態に移行させるオペレーティングシステム（OS）要求に応答して、前記プロセッサに関する制御を引き継ぐことと、
前記スリープ状態よりも短いウェイクアップ遅延を有する中間状態に前記プロセッサを移行させ、組込みコントローラ（EC）の電力コマンドの発生を含む１つ又は複数のデバイス電力低下動作を実行することと、
ウェイクアップ・イベントが検出されるまで、前記プロセッサを前記中間状態に維持すること、を行わせ、
前記プロセッサに関する制御は、ＢＩＯＳの再認証なしで、デバイス省電力部による１つ又は複数の前記電力低下動作を逆転させること検出と並行して、前記ＯＳに移される、
プログラム。
【請求項１４】
前記ＢＩＯＳ命令は、実行されたときに、前記ウェイクアップ・イベントに応答して、コンピュータシステムに１つ又は複数の電力低下動作を逆転させることを行わせ、前記１つ又は複数の電力低下動作は、不揮発性メモリからのメモリ構成データの復元を行うことを含む、請求項１３に記載のプログラム。
【請求項１５】
前記ＢＩＯＳ命令は、実行されたときに、コンピュータシステムに、
前記プロセッサのリセットを行うことと、
メモリ構成データの復元を含む１つ又は複数のプロセッサ再開動作を実行することと、
前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行することと、
前記プロセッサに関する制御を前記ＯＳに移すことと、を行わせる、請求項１３又は１４に記載のプログラム。
【請求項１６】
前記スリープ状態は、ＡＣＰＩのＳ３状態である、請求項１５に記載のプログラム。
【請求項１７】
前記ＢＩＯＳ命令は、実行されたときに、コンピュータシステムに、
前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行することと、を行わせる、請求項１３又は１４に記載のプログラム。
【請求項１８】
前記スリープ状態は、ＡＣＰＩのＳ１状態であり、前記スリープ状態がＡＣＰＩ  Ｓ１状態であるときに、状態クリア部は、前記プロセッサのリセットをバイパスさせ、前記状態クリア部は、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装される、請求項１７に記載のプログラム。
【請求項１９】
基本入出力システム（BIOS）装置であって、当該装置は、
プロセッサをスリープ状態に移行させるオペレーティングシステム（OS）要求に応答して、前記プロセッサに関する制御を引き継ぐインターセプタであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるインターセプタと、
前記スリープ状態よりも短いウェイクアップ遅延を有する中間状態に前記プロセッサを移行させる移行部であって、該移行部は、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装され、前記移行部は、組込みコントローラ（EC）の電力コマンドの発生を含む１つ又は複数のデバイス電力低下動作を実行するための、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されたデバイス省電力部を含む、移行部と、
ウェイクアップ・イベントが検出されるまで、前記プロセッサを前記中間状態に維持するウェイクアップ・ユニットであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるウェイクアップ・ユニットと、を有し、
前記移行部は、ＢＩＯＳの再認証なしで、前記デバイス省電力部による１つ又は複数の前記電力低下動作を逆転させることと並行して、前記プロセッサに関する制御を前記ＯＳに移す、
装置。
【請求項２０】
前記ウェイクアップ・イベントに応答して、１つ又は複数の電力低下動作を逆転させるレジューム・ユニットをさらに含み、該レジューム・ユニットは、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装され、前記１つ又は複数の電力低下動作は、不揮発性メモリからメモリ構成を復元することを含む、請求項１９に記載の装置。
【請求項２１】
前記移行部は、
前記プロセッサのリセットを行う状態クリア部であって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装される状態クリア部と、
メモリ構成データの復元を含む１つ又は複数のプロセッサ再開動作を実行するレジューム・ユニットであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるレジューム・ユニットと、
前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部であって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるプロセッサ省電力部と、
前記プロセッサに関する制御を前記ＯＳに移すハンドオフ・ユニットであって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるハンドオフ・ユニットと、を含む、請求項１９又は２０に記載の装置。
【請求項２２】
前記スリープ状態は、ＡＣＰＩのＳ３状態である、請求項２１に記載の装置。
【請求項２３】
前記移行部は、
前記プロセッサの電力消費を低減させる電源レール修正を含む１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部であって、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装されるプロセッサ省電力部と、を含む、請求項１９又は２０に記載の装置。
【請求項２４】
前記スリープ状態は、ＡＣＰＩのＳ１状態であり、前記スリープ状態がＡＣＰＩ  Ｓ１状態であるときに、状態クリア部が、前記プロセッサのリセットをバイパスさせ、前記状態クリア部は、１つ又は複数の構成可能なロジック又は固定機能ハードウェア・ロジックに実装される、請求項２３に記載の装置。
【請求項２５】
請求項１３乃至１８のいずれか一項に記載のプログラムを記憶した、少なくとも１つのコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願の相互参照
本願は、２０１４年６月２７日に出願された仮出願でない米国特許出願第１４／３１７，６２８号について優先権の利益を主張する。
【０００２】
本実施形態は、概して、コンピュータシステムの電力管理に関する。より具体的には、本実施形態は、より高速な再開(resume)時間を達成するためにシステム待機状態をエミュレートすることに関する。
【背景技術】
【０００３】
ノートブックコンピュータ及びタブレットコンピュータ等のコンピュータシステムは、電力を節約するために、アイドル期間中にアクティブ状態からスリープ状態に移行することができる。例えば、システム待機状態をトリガするには、オペレーティングシステム（OS）が、ＡＣＰＩ(Advanced  Configuration  and  Power  Interface、例えば、ＡＣＰＩ規格、改訂版５．０ａ、２０１１年１２月６日付け）で規定されるインターフェイスを介してＳ３スリープ状態を呼び出すことがあり、ここでＳ３状態は、コンピュータシステムの電源を切断し、フラッシュメモリ内で実行される基本入出力システム（BIOS）コードに依存して、全体的な再開フローの一部としてウェイクアップ・イベントに応答してコンピュータシステムをアクティブ状態に構成する。しかしながら、スリープスリープ状態のウェイクアップ遅延は、コンピュータシステムによって「インスタントオン(instant-on)」機能を実現するのを妨げる可能性がある。より短いウェイクアップ遅延状態の他の低電力状態がコンピュータシステム用に開発されたとしても、ＯＳは、依然として、従来の比較的柔軟性を欠いたＡＣＰＩスリープ状態でのみしか動作しないように構成される可能性がある。
【図面の簡単な説明】
【０００４】
【図１】一実施形態によるプロセッサにおける状態移行の例を示すブロック図である。
【図２】一実施形態によるＢＩＯＳを動作させる方法の例のフローチャートである。
【図３Ａ】一実施形態によるプロセッサを中間状態に移行させる／入れる方法の例のフローチャートである。
【図３Ｂ】一実施形態によるプロセッサを中間状態に移行させる／入れる方法の例のフローチャートである。
【図４】一実施形態によるＢＩＯＳ装置の例を示すブロック図である。
【図５】一実施形態によるプロセッサの例を示すブロック図である。
【図６】一実施形態によるコンピュータシステムの例を示すブロック図である。
【発明を実施するための形態】
【０００５】
本実施形態の様々な利点は、以下の詳細な説明及び添付の特許請求の範囲を読むことによって、及び以下の図面を参照することによって、当業者には明らかになるであろう。
【０００６】
図１をここで参照すると、プロセッサ１０（例えば、中央処理装置／ＣＰＵ、入力／出力モジュール、チップセット）が示されており、ここでプロセッサ１０は、例えば、ＡＮＤＲＯＩＤ（登録商標）（Open  Handset  Alliance）、ＩＯＳ（APPLE,  INC.）、ＬＩＮＵＸ(登録商標)（Linux  Foundation）、又はＷＩＮＤＯＷＳ（登録商標）（MICROSOFT  Corp.）等のオペレーティングシステム（OS）１２を起動する。プロセッサ１０は、例えば、サーバ、ワークステーション、デスクトップコンピュータ、ノートブックコンピュータ、タブレットコンピュータ、コンバーチブルタブレット、スマートフォン、パーソナルデジタルアシスタント／ＰＤＡ、モバイルインターネット装置（MID）、メディアプレーヤ、ウェアラブルコンピュータ等の多種多様のコンピュータシステム内に組み込むことができる。
【０００７】
図示された例では、ＯＳ１２は、時点ｔ０においてアクティブモードであり、矢印１１による要求１４を生成して、プロセッサ１０をスリープ状態、例えばＡＣＰＩのＳ３又はＳ１スリープ状態に移行させる。要求１４は、例えば、イネーブル・レジスタ（例えば、SLP_ENレジスタ）に書き込むことによって生成することができ、論理アーキテクチャ１６は、矢印１７によるイネーブル・レジスタへの書き込みを検出及び／又はインターセプトすることができる。より具体的に説明するように、論理アーキテクチャ１６は、論理命令、構成可能なロジック、固定機能ハードウェア・ロジック、又はこれらの任意の組合せの形態の基本入出力システム（BIOS）として実装することができる。
【０００８】
図示される時点ｔ１において、プロセッサ１０を要求されたスリープ状態に置くのではなく、論理アーキテクチャ１６は、矢印１５による、要求された状態よりもウェイクアップ遅延がより短い中間状態にプロセッサ１０を移行させるために、矢印１３によってプロセッサ１０を制御する。例えば、中間状態は、より大きな省電力を達成するために、追加の電力低下動作が論理アーキテクチャ１６によって実行されるＡＣＰＩのＳ０動作状態であってもよい。実際に、中間状態は、要求されたスリープ状態に比べてより低い電力消費をもたらす一方で、アクティブ状態へのほぼ即時の復帰（例えば、インスタントオン機能）も提供することができる。さらに、論理アーキテクチャ１６は、ＯＳ１２によって予想される標準的なシステム待機動作をエミュレートすることができる。その結果、図示されたアプローチは、ユーザ経験の観点だけでなく、消費電力及びバッテリ寿命の観点から有利となり得るが、ＯＳ１２は、状態の逸脱(deviation)には無関心である。
【０００９】
図２をここで参照すると、ＢＩＯＳを動作させる方法２０が示されている。方法２０は、例えばランダムアクセスメモリ（RAM）、リードオンリメモリ（ROM）、プログラマブルＲＯＭ（PROM）、ファームウェア、フラッシュメモリ等の機械又はコンピュータ可読記憶媒体に、例えばプログラマブル論理アレイ（PLA）、フィールドプログラマブル・ゲートアレイ（FPGA）、複雑なプログラマブル論理デバイス（CPLD）等の等の構成可能なロジックに、例えば特定用途向け集積回路（ASIC）、相補型金属酸化膜半導体（CMOS）、又はトランジスタ−トランジスタ論理（TTL）技術、或いはこれらの任意の組合せ等の回路技術を使用する固定機能ハードウェア・ロジックに記憶された論理命令のセットのモジュール又は関連コンポーネントとして実装することができる。例えば、方法２０に示される動作を実行するコンピュータプログラムコードは、Ｊａｖａ（登録商標）、Ｓｍａｌｌｔａｌｋ（登録商標）、Ｃ＋＋、ＡＣＰＩソース言語（ASL）等のオブジェクト指向プログラミング言語、及び「Ｃ」プログラミング言語又は同様のプログラミング言語等の従来の手続き型プログラミング言語を含む１つ又は複数のプログラミング言語の任意の組合せで書くことができる。
【００１０】
図示される処理ブロック２２は、プロセッサをスリープ状態に移行させるＯＳ要求に応答して、プロセッサに関する制御を引き継ぐステップを提供する。ブロック２４において、スリープ状態よりも短いウェイクアップ遅延を有し、且つ同様な又はより良好なバッテリ寿命を有する中間状態にプロセッサを移行させることができる。既に述べたように、要求されたスリープ状態は、例えばＡＣＰＩのＳ３又はＳ１スリープ状態であってもよい。
【００１１】
より具体的には、図３Ａは、要求されたスリープ状態がＳ３状態であるときに、プロセッサを中間状態に移行させる１つのアプローチを提供する方法２６を示す。従って、図示された方法２６は、既に説明したブロック２４（図２参照）と容易に置き換えることができる。一般的に、Ｓ３状態要求について、ＯＳは、クリーンなプロセッサ状態（例えば、「リアルモード」）から再開することを期待し得る。従って、ＢＩＯＳは、プロセッサを現在のＯＳコンテキストからそのクリーンな状態に戻し得る。より具体的には、プロセッサモードは、図示されたブロック２８において、（例えば、ＯＳによって残されたプロセッサ状態とは無関係の）既知の状態に戻（復帰）され、ここで、その復帰は、移行要求を行うＯＳが期待するように、プロセッサのコンテキストをクリア状態にし得る。従って、プロセッサの状態をクリアにすることにより、その後の制御をＯＳに戻すハンドオフがシームレスに行われることを保証することができる。さらに、ブロック３０において、１つ又は複数のプロセッサ再開動作を実行してもよい。プロセッサ再開動作は、例えば、復帰が行われた後に、不揮発性メモリ等からメモリコントローラの構成データを復元するステップを含むことができる。図示されたブロック３２は、中間状態にいる間のプロセッサの電力消費を低減するために、例えば電源レール修正、拡張クロックゲート調整、アクティブなアイドル動作等を含み得る１つ又は複数のプロセッサ電力低下動作を実行する。
【００１２】
別の例では、図３Ｂは、要求されたスリープ状態がより状態の浅いＳ１状態である場合に、プロセッサを中間状態に移行させるためのアプローチを提供する方法３４を示す。従って、図示された方法３４は、既に説明したブロック２４（図２参照）と容易に置き換えることができる。一般的に、Ｓ１状態要求について、ＯＳは、次の命令で再開を期待し得る。従って、この場合に、ＯＳが残したプロセッサコンテキストを変更することなく省電力作業を行うことができる。より具体的には、図示されたブロック３６において、１つ又は複数のデバイス電力低下動作が実行される。デバイス電力低下動作には、例えば、ディスプレイ、キーパッド等の組込みコントローラ（EC）等のシステムコンポーネントに命令して、それらシステムコンポーネントを最低電力状態にする。さらに、ブロック３８において、１つ又は複数のプロセッサ電力低下動作（例えば、電源レール修正、拡張クロックゲート調整、アクティブなアイドル動作）を実行することができる。
【００１３】
図２をここで再び参照すると、図示されたブロック４０によって、プロセッサを中間状態に維持し、ブロック４２において、ウェイクアップ・イベントが発生したかどうかの判定が行われる。ウェイクアップ・イベントは、例えば、コンピュータシステムのユーザが、電源ボタン（例えば、ハードウェアによるボタン又はソフトウェアによるボタン）を押す／起動させる、受信メッセージ（例えば、テキストメッセージ、電子メール、ソーシャルネットワークポスト等）を検出したか等を含むことができる。ウェイクアップ・イベントが検出されない場合に、図示された方法２０は、ブロック４０に戻って、プロセッサを中間状態に維持し続ける。ウェイクアップ・イベントが検出された場合に、ブロック４４は、（例えば、要求されたスリープ状態がＳ１スリープ状態である場合に）１つ又は複数の電力低下動作をオプションで逆転(reverse)することができ、ここで逆転される電力低減動作は、プロセッサ電力低下動作、デバイス電力低下動作等、又はこれらの任意の組合せであってもよい。さらに、プロセッサに関する制御は、（例えば、要求されたスリープ状態がＳ３スリープ状態である場合に）オプションとして、ブロック４６においてＯＳに移行することができる。
【００１４】
特に注目すべきことは、ブロック４２でのウェイクアップ・イベントの検出とブロック４６での制御の移行との間の所要時間が、Ｓ３又はＳ１スリープ状態による作業状態での通常動作を再開するための所要時間よりもかなり短縮されることである。例えば、Ｓ３スリープ状態の移行要求の例では、ブロック２８及び３０（図３Ａ参照）でのプロセッサのリセット及び再開動作は、システム待機状態がＯＳによって最初に要求されたときに、前もって処理してもよい。さらに、ブロック４６は、代替的に、ブロック４４の後に又はブロック４４と並行して実行され、ウェイクアップ遅延をさらに短縮することができる。さらに、プロセッサが中間状態にあるときに、ＢＩＯＳが潜在的に信頼できないフラッシュメモリ内で動作しない可能性があるため、図示の例ではＢＩＯＳ再認証をバイパスし得る。実際に、図示の例における中間状態は、ＯＳの観点からシステム待機状態をエミュレートする単なる動作状態／アイドル状態である。
【００１５】
図４は、システム待機状態をエミュレートするために使用され得るＢＩＯＳ装置４８（４８ａ〜４８ｅ）を示す。ＢＩＯＳ装置４８は、一般に、方法２０（図２参照）の１つ又は複数の態様を実施することができ、既に説明した論理アーキテクチャ１６（図１）と容易に置き換えることができる。こうして、論理命令、構成可能なロジック、固定機能ハードウェア・ロジック等、又はこれらの任意の組合せでＢＩＯＳ装置４８を実装してもよい。一例では、ＢＩＯＳ装置４８は、Ｓ３スリープ状態から再開する場合のように潜在的に保護されていないフラッシュメモリではなく、システムメモリから動作する。
【００１６】
図示された例では、インターセプタ４８ａは、ＡＣＰＩのＳ３状態又はＳ１状態等のスリープ状態にプロセッサを移行させるＯＳ要求に応答して、プロセッサに関する制御を引き継ぐ。一例では、インターセプタ４８ａは、イネーブル・レジスタへのＯＳの書き込みを検出するシステム管理割り込み（SMI）ハンドラを含む。さらに、移行部４８ｂは、一般に、スリープ状態よりも短いウェイクアップ遅延を有する中間状態（例えば、Ｓ０低電力状態）にプロセッサを移行させることができる。図示されたＢＩＯＳ装置４８は、ウェイクアップ・イベントが検出されるまで、プロセッサを中間状態に維持するウェイクアップ・ユニット４８ｃも含む。一例では、移行部４８ｂは、１つ又は複数の電力低下動作（例えば、デバイス電力低下動作、プロセッサ電力低下動作）を逆転させるオプションのレジューム・ユニット５０を含む。あるいはまた、レジューム・ユニット５０の機能は、中間状態に使用される省電力の解決策に依存して、ＯＳ再開フローによって自動的に処理してもよい。
【００１７】
こうして、要求されたスリープ状態がＡＣＰＩのＳ３状態である場合に、ＢＩＯＳ装置４８は、プロセッサのモードを既知の状態に戻す（例えば、プロセッサのリセットを行う）状態クリア部４８ｅを含むことができ、ここでレジューム・ユニット５０は、待機要求に応答して、１つ又は複数のプロセッサ再開動作（例えば、メモリ構成データの回復）を実行してもよい。さらに、プロセッサ省電力部５６は、１つ又は複数のプロセッサ電力低下動作（例えば、電源レール修正、拡張クロックゲート調整、アクティブなアイドル動作）を実行することができる。図示されたＢＩＯＳ装置４８は、ウェイクアップ・イベントが検出され、且つ要求された状態がＡＣＰＩのＳ３スリープ状態であるときに、プロセッサに関する制御をＯＳに戻すハンドオフ・ユニット４８ｄも含む。
【００１８】
一方、要求されたスリープ状態がＡＣＰＩのＳ１状態である場合に、移行部４８ｂは、１つ又は複数のデバイス電力低下動作を実行する（例えば、ＥＣ電力コマンドを発する）デバイス省電力部５８を含むことができる。そのような場合に、プロセッサ省電力部５６は、要求されたＳ１状態をエミュレートするために、１つ又は複数のプロセッサ電力低下動作を実行してもよい。こうして、要求されたスリープ状態がＡＣＰＩのＳ１状態である場合に、状態クリア部４８ｅをバイパスしてもよい。なぜなら、図示された移行部４８ｂは、そのような場合にＯＳ状態に影響を与えずに動作するからである。
【００１９】
図５は、一実施形態によるプロセッサコア２００を示す。プロセッサコア２００は、マイクロプロセッサ、組込式プロセッサ、デジタル信号プロセッサ（DSP）、ネットワークプロセッサ、又はコードを実行するための他のデバイス等の任意のタイプのプロセッサのコアとすることができる。図５では、１つのプロセッサコア２００のみが示されているが、図５に示されるように、処理要素は、代替的に、複数のプロセッサコア２００を含んでもよい。プロセッサコア２００は、シングルスレッドコアであってもよく、或いは少なくとも１つの実施形態では、プロセッサコア２００は、コア当たり２つ以上のハードウェアスレッドコンテキスト（又は「論理プロセッサ」）を含むことができるマルチスレッドであってもよい。
【００２０】
図５には、プロセッサコア２００に結合されたメモリ２７０も示されている。メモリ２７０は、当業者に知られているか又は他の方法で利用可能な多種多様なメモリ（メモリ階層の様々なレイヤを含む）のいずれかであってよい。メモリ２７０は、プロセッサコア２００によって実行される１つ又は複数のコード２１３命令（複数可）を含むことができ、ここでコード２１３は、既に説明した方法２０（図２参照）を実施することができる。一例では、メモリ２７０は、非フラッシュメモリである。プロセッサコア２００は、コード２１３によって示される命令のプログラムシーケンスに従う。各命令は、フロントエンド部分２１０に入り、１つ又は複数のデコーダ２２０によって処理される。デコーダ２２０は、その出力として、所定フォーマットの固定幅のマイクロ動作等のマイクロ動作を生成することができ、或いは元のコード命令を反映する他の命令、マイクロ命令、又は制御信号を生成することができる。図示されたフロントエンド２１０は、一般的にリソースを割り当て、且つ実行するための変換命令に対応する動作をキューに入れるレジスタ・リネーミング(renaming)ロジック２２５及びスケジューリングロジック２３０も含む。
【００２１】
プロセッサコア２００は、実行ユニット２５５−１〜２５５−Ｎのセットを有する実行ロジック２５０を含むように示されている。いくつかの実施形態は、特定の機能又は機能のセットに特化したいくつかの実行ユニットを含むことができる。他の実施形態は、１つの実行ユニットのみ、又は特定の機能を実行することができる１つの実行ユニットを含んでもよい。図示される実行ロジック２５０は、コード命令によって指定される動作を実行する。
【００２２】
コード命令によって指定された動作の実行が完了した後に、バックエンドロジック２６０は、コード２１３の命令をリタイア(retire)させる。一実施形態では、プロセッサコア２００は、順不同の実行を可能にするが、命令のリタイアを順番に要求する。リタイア・ロジック２６５は、当業者に知られている様々な形態（例えば、再順番替え(re-order)バッファ等）をとることができる。このようにして、プロセッサコア２００は、コード２１３の実行中に、デコーダによって生成される出力、レジスタ・リネーミングロジック２２５によって利用されるハードウェアレジスタ及びテーブル、及び実行ロジック２５０によって修正された任意のレジスタ（図示せず）に関して少なくとも変換される。
【００２３】
図５には図示されていないが、処理要素は、プロセッサコア２００を含むチップ上に他の要素を含むことができる。例えば、処理要素は、プロセッサコア２００と共にメモリ制御ロジックを含むことができる。処理要素は、Ｉ／Ｏ制御ロジックを含むことができ、及び／又はメモリ制御ロジックと統合されたＩ／Ｏ制御ロジックを含むことができる。処理要素は、１つ又は複数のキャッシュも含むことができる。
【００２４】
図６をここで参照すると、一実施形態によるコンピュータシステム１０００の実施形態のブロック図が示されている。図６には、第１の処理要素１０７０及び第２の処理要素１０８０を含むマルチプロセッサシステム１０００が示されている。２つの処理要素１０７０及び１０８０が示されているが、システム１０００の実施形態は、そのような１つのみの処理要素を含んでもよいことを理解されたい。
【００２５】
システム１０００は、ポイント・ツー・ポイント相互接続システムとして示されており、ここで第１の処理要素１０７０及び第２の処理要素１０８０は、ポイント・ツー・ポイント相互接続１０５０を介して結合される。図６に示される相互接続のいずれか又は全ては、ポイント・ツー・ポイント相互接続ではなく、マルチドロップバスとして実装してもよい。
【００２６】
図６に示されるように、各処理要素１０７０及び１０８０は、第１及び第２のプロセッサコア（すなわち、プロセッサコア１０７４ａ及び１０７４ｂ、並びにプロセッサコア１０８４ａ及び１０８４ｂ）を含むマルチコアプロセッサであってもよい。そのようなコア１０７４ａ、１０７４ｂ、１０８４ａ、１０８４ｂは、図５に関連して上述したのと同様の方法で命令コードを実行するように構成することができる。
【００２７】
各処理要素１０７０，１０８０は、少なくとも１つの共有キャッシュ１８９６ａ、１８９６ｂを含むことができる。共有キャッシュ１８９６ａ、１８９６ｂは、プロセッサの１つ又は複数のコンポーネント、例えばコア１０７４ａ、１０７４ｂ及び１０８４ａ、１０８４ｂ等によってそれぞれ利用されるデータ（例えば、命令）を記憶することができる。例えば、共有キャッシュ１８９６ａ、１８９６ｂは、プロセッサのコンポーネントによる高速アクセスのために、メモリ１０３２，１０３４に記憶されたデータをローカルにキャッシュすることができる。１つ又は複数の実施形態では、共有キャッシュ１８９６ａ、１８９６ｂは、レベル２（Ｌ２）、レベル３（Ｌ３）、レベル４（Ｌ４）等の中間レベルキャッシュ、又は他のレベルのキャッシュ、最後のレベルキャッシュ（LLC）、及び／又はこれらの組合せを含むことができる。
【００２８】
２つの処理要素１０７０，１０８０のみを示しているが、実施形態の範囲はこれに限定されないことを理解されたい。他の実施形態では、１つ又は複数の追加の処理要素が、所定のプロセッサに存在してもよい。あるいはまた、処理要素１０７０，１０８０のうちの１つ又は複数が、アクセラレータ(accelerator)又はフィールドプログラマブル・ゲートアレイ等のプロセッサ以外の要素であってもよい。例えば、追加の処理要素は、第１のプロセッサ１０７０と同じ追加のプロセッサ（複数可）、第１のプロセッサ１０７０と異種又は非対称である追加のプロセッサ、アクセラレータ（例えば、グラフィック・アクセラレータ又はデジタル信号処理（DSP）ユニット）、フィールドプログラマブル・ゲートアレイ、又は任意の他の処理要素を含むことができる。アーキテクチャの、マイクロアーキテクチャの、熱的な、電力消費特性等を含むメリットのスペクトル・メトリックに関して、処理要素１０７０，１０８０の間には様々な差異があり得る。これらの差異は、処理要素１０７０，１０８０の間の非対称性及び異種性として効果的に現れる可能性がある。少なくとも１つの実施形態では、様々な処理要素１０７０，１０８０は、同じダイパッケージ内に存在してもよい。
【００２９】
第１の処理要素１０７０は、メモリコントローラロジック（MC）１０７２、並びにポイント・ツー・ポイント（PP）インターフェイス１０７６及び１０７８をさらに含むことができる。同様に、第２の処理要素１０８０は、ＭＣ１０８２、並びにＰＰインターフェイス１０８６及び１０８８を含むことができる。図６に示されるように、ＭＣ１０７２及び１０８２は、プロセッサをそれぞれのメモリ、すなわちメモリ１０３２及びメモリ１０３４に結合する。メモリ１０３２及びメモリ１０３４は、それぞれのプロセッサに対してローカルに取り付けられたメインメモリの一部であってもよい。ＭＣ１０７２及び１０８２が処理要素１０７０，１０８０に統合されて示されているが、代替実施形態では、ＭＣ論理は、内部に統合されるのではなく、処理要素１０７０，１０８０の外部に離散したロジックであってもよい。
【００３０】
第１の処理要素１０７０及び第２の処理要素１０８０は、それぞれ、ＰＰ相互接続１０７６及び１０８６を介してＩ／Ｏサブシステム１０９０に結合してもよい。図６に示されるように、Ｉ／Ｏサブシステム１０９０は、ＰＰ相互接続１０９４及び１０９８を含む。さらに、Ｉ／Ｏサブシステム１０９０は、Ｉ／Ｏサブシステム１０９０を高性能グラフィックエンジン１０３８に結合するインターフェイス１０９２を含む。一実施形態では、バス１０４９を使用して、グラフィクエンジン１０３８をＩ／Ｏサブシステム１０９０に結合することができる。あるいはまた、ポイント・ツー・ポイント相互接続は、これらのコンポーネントを結合することができる。
【００３１】
次に、Ｉ／Ｏサブシステム１０９０は、インターフェイス１０９６を介して第１のバス１０１６に結合してもよい。一実施形態では、第１のバス１０１６は、ＰＣＩ（Peripheral  Component  Interconnect）バス、又はＰＣＩ  Ｅｘｐｒｅｓｓバス等のバス、又は別の第３世代Ｉ／Ｏ相互接続バスであってもよいが、本実施形態の範囲はこれらに限定されるものではない。
【００３２】
図６に示されるように、第１のバス１０１６を第２のバス１０２０に結合することができるバスブリッジ１０１８を用いて、様々なＩ／Ｏデバイス１０１４（例えば、カメラ、センサ）を第１のバス１０１６に結合することができる。一実施形態では、第２のバス１０２０は、低ピン数（LPC）バスであってもよい。一実施形態では、例えば、キーボード／マウス１０１２、通信装置（複数可）１０２６、及び（コード１０３０を含むことができる）ディスクドライブ又は他の大容量記憶装置等のデータ記憶装置１０１９を含む、様々な装置を第２のバス１０２０に結合することができる。例示されたコード１０３０は、既に説明した方法２０（図２参照）を実施することができ、既に説明したコード２１３（図５参照）と同様であってもよい。さらに、オーディオＩ／Ｏ１０２４を第２のバス１０２０に結合し、バッテリ１０１０によってコンピュータシステム１０００に電力を供給することができる。
【００３３】
他の実施形態も企図されることに留意されたい。例えば、図６のポイント・ツー・ポイント・アーキテクチャの代わりに、システムは、マルチドロップバス又は別のそのような通信トポロジを実装することができる。また、図６の要素は、代替的に、図６に示されているより多くの又はより少ない集積チップを使用してセグメント化してもよい。
【００３４】
追加の注意事項及び実施例
実施例１は、コンピュータシステムに電力を供給するバッテリと、オペレーティングシステム（OS）を実行させるプロセッサと、基本入出力システム（BIOS）とを有するシステム待機状態をエミュレートするコンピュータシステムを含むことができ、基本入出力システムは、プロセッサをスリープ状態に移行させるＯＳ要求に応答して、プロセッサに関する制御を引き継ぐインターセプタと、スリープ状態よりも短いウェイクアップ遅延を有する中間状態にプロセッサを移行させる移行部と、ウェイクアップ・イベントが検出されるまで、プロセッサを中間状態に維持するウェイクアップ・ユニットと、を含む。
【００３５】
実施例２は、実施例１のコンピュータシステムを含むことができ、ここでＢＩＯＳは、ウェイクアップ・イベントに応答して、１つ又は複数の電力低下動作を逆転させるレジューム(resume)・ユニットをさらに含む。
【００３６】
実施例３は、実施例１又は２のコンピュータシステムを含むことができ、ここで移行部は、プロセッサのリセットを行う状態クリア部と、１つ又は複数のプロセッサ再開動作を実行するレジューム・ユニットと、１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部と、ウェイクアップ・イベントに応答して、プロセッサに関する制御をＯＳに移すハンドオフ・ユニットと、を含む。
【００３７】
実施例４は、実施例３のコンピュータシステムを含むことができ、ここでスリープ状態は、ＡＣＰＩ(Advanced  Configuration  and  Power  Interface)のＳ３状態である。
【００３８】
実施例５は、実施例１又は２のコンピュータシステムを含むことができ、ここで移行部は、１つ又は複数のデバイス電力低下動作を実行するデバイス省電力部と、１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部と、を含む。
【００３９】
実施例６は、実施例５のコンピュータシステムを含むことができ、ここでスリープ状態は、ＡＣＰＩのＳ１状態である。
【００４０】
実施例７は、ＢＩＯＳを動作させる方法を含むことができ、この方法は、プロセッサをスリープ状態に移行させるＯＳ要求に応答して、プロセッサに関する制御を引き継ぐステップと、スリープ状態よりも短いウェイクアップ遅延を有する中間状態にプロセッサを移行させるステップと、ウェイクアップ・イベントが検出されるまで、プロセッサを中間状態に維持するステップと、を含む。
【００４１】
実施例８は、実施例７の方法を含むことができ、ここでウェイクアップ・イベントに応答して、１つ又は複数の電力低下動作を逆転させるステップをさらに含む。
【００４２】
実施例９は、実施例７又は８の方法を含むことができ、ここでプロセッサを中間状態に移行させるステップは、プロセッサのリセットを行うステップと、１つ又は複数のプロセッサ再開動作を実行するステップと、１つ又は複数のプロセッサ電力低下動作を実行するステップと、プロセッサに関する制御をＯＳに移行させるステップと、を含む。
【００４３】
実施例１０は、実施例９の方法を含むことができ、ここでスリープ状態は、ＡＣＰＩのＳ３状態である。
【００４４】
実施例１１は、実施例７又は８の方法を含むことができ、ここでプロセッサを中間状態に移行させるステップは、１つ又は複数のデバイス電力低下動作を実行するステップと、１つ又は複数のプロセッサ電力低下動作を実行するステップと、を含む。
【００４５】
実施例１２は、実施例１１の方法を含むことができ、ここでスリープ状態は、ＡＣＰＩのＳ１状態である。
【００４６】
実施例１３は、ＢＩＯＳ命令のセットを含む少なくとも１つのコンピュータ可読記憶媒体を含むことができ、コンピュータシステムによって実行されたときに、コンピュータシステムに、プロセッサをスリープ状態に移行させるＯＳ要求に応答して、プロセッサに関する制御を引き継ぐことと、スリープ状態よりも短いウェイクアップ遅延を有する中間状態にプロセッサを移行させることと、ウェイクアップ・イベントが検出されるまで、プロセッサを中間状態に維持することと、を行わせる。
【００４７】
実施例１４は、実施例１３の少なくとも１つのコンピュータ可読記憶媒体を含むことができ、ここでＢＩＯＳ命令は、実行されたときに、ウェイクアップ・イベントに応答して、コンピュータシステムに１つ又は複数の電力低下動作を逆転させることを行わせる。
【００４８】
実施例１５は、実施例１３又は１４の少なくとも１つのコンピュータ可読記憶媒体を含むことができ、ここでＢＩＯＳ命令は、実行されたときに、コンピュータシステムに、プロセッサのリセットを行うことと、１つ又は複数のプロセッサ再開動作を実行することと、１つ又は複数のプロセッサ電力低下動作を実行することと、プロセッサに関する制御をＯＳに移行させることと、を行わせる。
【００４９】
実施例１６は、実施例１５の少なくとも１つのコンピュータ可読記憶媒体を含むことができ、ここでスリープ状態は、ＡＣＰＩのＳ３状態である。
【００５０】
実施例１７は、実施例１３又は１４の少なくとも１つのコンピュータ可読記憶媒体を含むことができ、ここでＢＩＯＳ命令は、実行されたときに、コンピュータシステムに、１つ又は複数のデバイス電力低下動作を実行することと、１つ又は複数のプロセッサ電力低下動作を実行することと、を行わせる。
【００５１】
実施例１８は、実施例１７の少なくとも１つのコンピュータ可読記憶媒体を含むことができ、ここでスリープ状態は、ＡＣＰＩのＳ１状態である。
【００５２】
実施例１９は、ＢＩＯＳ装置を含むことができ、この装置は、プロセッサをスリープ状態に移行させるＯＳ要求に応答して、プロセッサに関する制御を引き継ぐインターセプタと、スリープ状態よりも短いウェイクアップ遅延を有する中間状態にプロセッサを移行させる移行部と、ウェイクアップ・イベントが検出されるまで、プロセッサを中間状態に維持するウェイクアップ・ユニットと、を有する。
【００５３】
実施例２０は、実施例１９の装置を含むことができ、ここでウェイクアップ・イベントに応答して、１つ又は複数の電力低下動作を逆転させるレジューム・ユニットをさらに含む。
【００５４】
実施例２１は、実施例１９又は２０の装置を含むことができ、ここで移行部は、プロセッサのリセットを行う状態クリア部と、１つ又は複数のプロセッサ再開動作を実行するレジューム・ユニットと、１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部と、プロセッサに関する制御をＯＳに移すハンドオフ・ユニットと、を含む。
【００５５】
実施例２２は、実施例２１の装置を含むことができ、ここでスリープ状態は、ＡＣＰＩのＳ３状態である。
【００５６】
実施例２３は、実施例１９又は２０の装置を含むことができ、ここで移行部は、１つ又は複数のデバイス電力低下動作を実行するデバイス省電力部と、１つ又は複数のプロセッサ電力低下動作を実行するプロセッサ省電力部と、を含む。
【００５７】
実施例２４は、実施例２３の装置を含むことができ、ここでスリープ状態は、ＡＣＰＩのＳ１状態である。
【００５８】
実施例２５は、実施例７〜１２のいずれかの方法を実施するための手段を有する基本入出力システム（BIOS）装置を含むことができる。
【００５９】
こうして、本明細書で説明する技術は、より適応性のあるスリープ状態、実質的な省電力、及び延長されたバッテリ寿命を完全にサポートしながら、「インスタントオン」機能を実現することを可能にし得る。さらに、標準的なＡＣＰＩ待機モードをサポートするＯＳと組合わされたシステムは、低電力ＣＰＵ及びチップセット・アイドル動作等のハードウェア及びソフトウェアの拡張から、システムのリセット及びそれに続くハードウェアシーケンシング無しでの再開、システムファームウェア（例えば、ＢＩＯＳ）の補助及び再認証無しでの再開等の利益を得ることができる。さらに、この技術は、センサベースの投機（推測）的再開アプローチの必要性を取り除くことができ、次にシステム待機状態中に一貫性を高めることができる。
【００６０】
実施形態は、あらゆるタイプの半導体集積回路（IC）チップと共に使用するのに適用可能である。これらのＩＣチップの例には、プロセッサ、コントローラ、チップセット・コンポーネント、プログラマブル論理アレイ（PLAs）、メモリチップ、ネットワークチップ、システムオンチップ（SoCs）、ＳＳＤ／ＮＡＮＤコントローラＡＳＩＣｓ等が含まれるが、これらに限定されるものではない。また、一部の図面において、信号導体線が、線で表されている。いくつかの線は、より多くの構成信号経路を示すために異なることがあり、多数の構成信号経路を示すために多数のラベルを有することがあり、及び／又は重要な（一次）情報の流れの方向を示すために１つ又は複数の端部に矢印を有することがある。しかしながら、これは限定的に解釈すべきではない。むしろ、追加されるこのような詳細は、回路の理解をより容易にするために、１つ又は複数の例示的な実施形態に関連して使用することができる。表現された任意の信号線は、追加的な情報を有するか否かに拘わらず、実際には、複数の方向に進み得る１つ又は複数の信号を含むことができ、及び例えば、差動対を用いて実装されたデジタル又はアナログ線、光ファイバ線、及び／又はシングルエンド線等の適切なタイプの信号スキームを用いて実装することができる。
【００６１】
例示的なサイズ／モデル／値／範囲を与えてもよいが、実施形態はこれらに限定されるものではない。製造技術（例えば、フォトリソグラフィー）が時間の経過とともに成熟するにつれて、より小さなサイズのデバイスを製造することができることが予想される。さらに、ＩＣチップ及び他のコンポーネントへの周知の電源／接地接続は、説明及び議論を簡潔にするために、及び実施形態の特定の態様を不明瞭にしないように、図面内に示す、又は示さないことがある。さらに、実施形態を不明瞭にすることを避けるために、また、そのようなブロック図構成の実装に関する詳細が、実施形態が実装されるコンピュータシステムに大きく依存する（すなわち、そのような詳細は、当業者であれば十分に理解すべきである）という事実を考慮して、構成をブロック図形式で示し得る。例示的な実施形態を説明するために特定の詳細（例えば、回路）が示されている場合に、実施形態は、これらの特定の詳細を伴わずに、又はそれらの変形形態を用いて実施できることは当業者には明らかである。従って、この詳細な説明は、限定するものではなく、例示的なものとみなすべきである。
【００６２】
用語「結合された」は、本明細書では、問題となるコンポーネント同士の間の直接的な又は間接的なあらゆるタイプの関係を指すために使用することができ、電気的、機械的、流体的、光学的、電磁気的、電気機械的、又は他の接続に適用することができる。さらに、「第１」、「第２」等の用語は、本明細書では、議論を容易にするためにのみ使用され、特に断らない限り、特定の時間的又は経時的な意味はない。
【００６３】
本願及び特許請求の範囲において使用される場合に、用語「１つ又は複数」によって修飾された項目のリストは、列挙された用語の任意の組合せを意味することができる。例えば、「Ａ、Ｂ、又はＣの１つ又は複数」という語句は、  Ａ、Ｂ、Ｃ、Ａ及びＢ、Ａ及びＣ、Ｂ及びＣ、又はＡ、Ｂ、及びＣを意味することができる。
【００６４】
当業者であれば、上記の記載から、本実施形態の広範な技術を様々な形態で実施できることを理解するだろう。従って、本実施形態についてその特定の例に関して説明してきたが、他の修正が、図面、明細書及び以下の特許請求の範囲を検討する際に当業者には明らかになるので、本実施形態の真の範囲は、その実施形態に制限すべきではない。
【図１】
0006293933.tif 000002
【図２】
0006293933.tif 000003
【図３Ａ】
0006293933.tif 000004
【図３Ｂ】
0006293933.tif 000005
【図４】
0006293933.tif 000006
【図５】
0006293933.tif 000007
【図６】
0006293933.tif 000008