(57)【要約】【課題】  コンピュータシステム用の高効率の電力管理技術を提供する。【解決手段】  コンピュータシステムにおける電力管理技術を開示する。例えば、入出力待ち行列（ＩＯＱ）と、プロセッサに結合されたインターフェースと、制御モジュールとを備える装置を提供するとしてよい。インターフェースは、プロセッサの電力状態に関してプロセッサと通信する。制御モジュールは、プロセッサの電力状態の遷移が始まると、ＩＯＱの排出を開始させるとしてよい。制御モジュールは、ＩＯＱの排出処理中、プロセッサの遷移を継続させる。しかし、制御モジュールは、遷移中の特定の時点において、ＩＯＱが空であるか否か判断するとしてよい。制御モジュールは、空であれば、プロセッサの遷移を継続させてよい。制御モジュールは、空でなければ、ＩＯＱが空になるまで、プロセッサの遷移を停止するとしてよい。【選択図】  図１
2010515164.tif 000002
【特許請求の範囲】
【請求項１】
入出力待ち行列（ＩＯＱ）と、
プロセッサに結合され、前記プロセッサの電力管理動作に関して前記プロセッサとの間での通信を実現するインターフェースと、
第１の電力状態から第２の低電力状態への、前記プロセッサの電力状態の遷移が開始されると、ＩＯＱ排出処理を開始する制御モジュールと
を備え、
前記制御モジュールは、前記ＩＯＱの前記排出処理の間、前記第１の電力状態から前記第２の低電力状態への前記プロセッサの前記遷移を継続させる
装置。
【請求項２】
前記第２の低電力状態は、Ｃ５状態である
請求項１に記載の装置。
【請求項３】
前記制御モジュールは、
Ｃ３状態に入る前の時点において、前記ＩＯＱが空であるか否か判断し、
前記ＩＯＱが空であると判断すると、前記プロセッサの前記遷移を継続させて、
前記ＩＯＱが空でないと判断すると、前記ＩＯＱが空になるまで前記プロセッサの前記遷移を一時停止させる
請求項２に記載の装置。
【請求項４】
前記第１の電力状態は、Ｃ０状態である
請求項３に記載の装置。
【請求項５】
前記制御モジュールは、前記プロセッサの電力状態の前記遷移が開始されると、前記ＩＯＱに対応付けられているスヌープをディセーブルする
請求項１に記載の装置。
【請求項６】
前記制御モジュールは、前記プロセッサの電力状態の前記遷移の開始を指し示す入出力（Ｉ／Ｏ）読み出しを前記プロセッサから受け取る
請求項１に記載の装置。
【請求項７】
前記インターフェースは、１以上のサイドバンド信号ラインを有する
請求項１に記載の装置。
【請求項８】
第１の電力状態から第２の低電力状態への、プロセッサの電力状態の遷移が始まるとＩＯＱの排出処理を開始する段階と、
前記ＩＯＱの前記排出処理の間、前記第１の電力状態から前記第２の低電力状態への前記プロセッサの前記遷移を継続させる段階と
を備える方法。
【請求項９】
前記第２の低電力状態は、Ｃ５状態である
請求項８に記載の方法。
【請求項１０】
Ｃ３状態に入る前の時点において、前記ＩＯＱが空であると判断されると、前記プロセッサの前記遷移を継続させる段階と、
前記ＩＯＱが空でないと判断されると、前記ＩＯＱが空になるまで前記プロセッサの前記遷移を一時停止させる段階と
をさらに備える、請求項９に記載の方法。
【請求項１１】
前記第１の電力状態は、Ｃ０状態である
請求項１０に記載の方法。
【請求項１２】
前記プロセッサの電力状態の前記遷移が開始されると、前記ＩＯＱに対応付けられているスヌープをディセーブルする段階
をさらに備える、請求項８に記載の方法。
【請求項１３】
前記プロセッサの電力状態の前記遷移の開始を指し示す入出力（Ｉ／Ｏ）読み出しを前記プロセッサから受け取る段階
をさらに備える、請求項８に記載の方法。
【請求項１４】
プロセッサと、
チップセットと
を備え、
前記チップセットは、
入出力待ち行列（ＩＯＱ）と、
第１の電力状態から第２の低電力状態への、前記プロセッサの電力状態の遷移が開始されると、ＩＯＱ排出処理を開始する制御モジュールと
を有し、
前記制御モジュールは、前記ＩＯＱの前記排出処理の間、前記第１の電力状態から前記第２の低電力状態への前記プロセッサの前記遷移を継続させる
システム。
【請求項１５】
前記プロセッサに結合され、前記プロセッサの電力管理状態に関して前記プロセッサとの間での通信を実現するインターフェース
をさらに備える、請求項１４に記載のシステム。
【請求項１６】
前記インターフェースは、１以上のサイドバンド信号ラインを有する
請求項１５に記載のシステム。
【請求項１７】
前記制御モジュールは、
Ｃ３状態に入る前の時点において、前記ＩＯＱが空であるか否か判断し、
前記ＩＯＱが空であると判断すると、前記プロセッサの前記遷移を継続させて、
前記ＩＯＱが空でないと判断すると、前記ＩＯＱが空になるまで前記プロセッサの前記遷移を一時停止させる
請求項１４に記載のシステム。
【請求項１８】
前記第１の電力状態は、Ｃ０状態であり、前記第２の低電力状態は、Ｃ５状態である
請求項１４に記載のシステム。
【請求項１９】
前記チップセットに結合されている１以上のメモリデバイス
をさらに備える、請求項１４に記載のシステム。
【請求項２０】
前記１以上のメモリデバイスは、ランダムアクセスメモリ（ＲＡＭ）を含む
請求項１９に記載のシステム。
【発明の詳細な説明】
【背景技術】
【０００１】
トランジスタの数を多くすると共に周波数を高くして高機能化された中央演算処理装置（ＣＰＵ）がますます一般的になるにつれて、コンピュータ設計者および製造者は、電力およびエネルギーの消費がそれに応じて増加してしまうという問題に直面することが多くなっている。また、高速化および小型化された構成要素を実現する製造技術は、電力漏洩の増加という問題を生じさせ得る。特に携帯可能コンピュータ環境では、電力消費が大きくなると、性能に悪影響を及ぼしかねないオーバーヒートの問題が生じてしまい、電池の寿命を大幅に縮めてしまい得る。電池は通常容量が限られているので、必要以上に携帯可能コンピューティングシステムのプロセッサを実行することによって、望ましくないほど短期間で容量を消費してしまう可能性がある。
【０００２】
このためシステムでは、さまざまな動作特性に応じてプロセッサの状態をさまざまな電力状態に設定することによって、電力の節約を試みている。電力状態には、アクティブ状態（または全電力状態）およびさまざまな低電力状態を含まれ得る。それぞれの低電力状態では、対応する一部の所定のプロセッサ機能を実現するとしてよい。プロセッサは通常、特定の電力状態から１以上の低電力状態へと遷移してよい。遷移のレイテンシを小さくすることによって、プロセッサの電力効率が改善され得る。
【図面の簡単な説明】
【０００３】
【図１】実施形態例を示す図である。
【０００４】
【図２】さまざまな状態を示す図である。
【０００５】
【図３】ロジックフローの実施形態を示す図である。
【０００６】
【図４】信号の実施形態を示す図である。
【０００７】
【図５Ａ】処理シーケンスの例を示す図である。
【図５Ｂ】処理シーケンスの例を示す図である。
【発明を実施するための形態】
【０００８】
さまざまな実施形態は概して、例えばコンピュータシステムの電力管理技術に関連し得る。実施形態の一例を挙げると、装置は、入出力待ち行列（ＩＯＱ）と、プロセッサに結合されたインターフェースと、制御モジュールとを備えるとしてよい。インターフェースによって、プロセッサの電力状態に関して、プロセッサと通信することができる。制御モジュールは、プロセッサの電力状態が遷移し始めると、ＩＯＱの排出（またはフラッシュ）を開始するとしてよい。この場合の遷移は、第１の電力状態から第２の低電力状態への遷移であってよい。
【０００９】
制御モジュールは、ＩＯＱの排出の間、プロセッサの遷移を継続させる。しかし、制御モジュールは、遷移中の特定の時点において（例えば、Ｃ３状態に入る前に）、ＩＯＱが空か否か判断するとしてよい。制御モジュールは、空の場合、プロセッサの遷移を継続させる。制御モジュールは、空でない場合、ＩＯＱが空になるまでプロセッサの遷移を一時停止させる。
【００１０】
本明細書で説明するように、実施形態は電力状態の遷移を高速化するとしてよい。この結果、電力消費および熱放散が抑えられるという効果が奏され得る。
【００１１】
実施形態は、１以上の構成要素を備えるとしてよい。構成要素は、特定の動作を実行するように構成されている任意の構造を有するとしてよい。各構成要素は、任意の一連の設計パラメータまたは性能上の制約に応じて、ハードウェア、ソフトウェア、またはこれらの任意の組み合わせとして実装されるとしてよい。実施形態は、一例として特定のトポロジーの限られた数の構成要素を備えるものとして説明されるが、任意の実装について望ましい別の構成で異なる一連の構成要素を組み合わせるとしてもよい。「一実施形態」または「実施形態」という場合、当該実施形態に関連付けて説明される特定の特徴、構造または特性は少なくとも１つの実施形態に含まれることを意味するものである。本明細書では、さまざまな箇所で「一実施形態において」という表現を用いているが、これは必ずしも同一の実施形態をさすものではない。
【００１２】
図１は、さまざまな動作状態を含む電力管理ポリシーに従って動作する実施形態を示す図である。特に、図１では、さまざまな構成要素を備えるシステム１００を示す。しかし、実施形態は、このように図示された構成要素に限定されるものではない。図１に示すように、システム１００は、プロセッサ１０２と、チップセット１０４と、１以上のメモリデバイス１０６と、ディスプレイ１０８と、１以上のインターフェース１１０とを備えるとしてよい。これらの構成要素は、ハードウェア、ソフトウェア、ファームウェアまたはこれらの任意の組み合わせによって実装されるとしてよい。
【００１３】
プロセッサ１０２は、マイクロプロセッサであってよい。プロセッサは、例えば、命令を処理するべく、１以上のプロセッシングコア１０３と、実行部１０５とを有してよい。図１に示すように、プロセッサ１０２はさらに、コア１０３の電力状態を管理する電力管理モジュール１０７を有するとしてよい。また、プロセッサ１０２は、１以上のキャッシュ（不図示）を有するとしてよい。キャッシュは、レベル１および／またはレベル２のキャッシュを含むとしてよい。
【００１４】
図１によると、プロセッサ１０２はインターフェース１１６によってチップセット１０４に結合されている。このインターフェースは、例えば、フロントサイドバスであってよい。チップセット１０４は、さまざまな構成要素を有するとしてよい。例えば、チップセット１０４は、メモリコントローラハブ１１２および入出力（Ｉ／Ｏ）コントローラハブ１１４を有するとしてよい。
【００１５】
メモリコントローラハブ１１２（ノースブリッジとも呼ばれる）は、プロセッサ１０２とメモリデバイス（例えば、ランダムアクセスメモリ（ＲＡＭ））１０６との間の通信を処理する。メモリコントローラハブ１１２はさらに、ディスプレイ１０８との通信も処理するとしてよい。この通信は、グラフィクスプロセッサ（不図示）を介して行われるとしてもよい。
【００１６】
図１に示すように、メモリコントローラハブ１１２は制御モジュール１１３を含むとしてよい。制御モジュール１１３は、ハードウェア、ソフトウェア、ファームウェアまたはこれらの任意の組み合わせによって実装されるとしてよい。さらに、メモリコントローラハブ１１２は、バッファまたはキャッシュ１１５（例えば、入出力待ち行列（ＩＯＱ））を含むとしてよい。この構成要素は、プリフェッチバッファと同様に、未処理のトランザクションをバッファするためのパイプラインとして動作してよい。
【００１７】
さらに、メモリコントローラハブ１１２はさらに、Ｉ／Ｏコントローラハブ１１４（サウスブリッジとも呼ばれる）との通信を処理するとしてもよい。Ｉ／Ｏコントローラハブ１１４は、例えば、ユニバーサルシリアルバス（ＵＳＢ）ポート、周辺機器インターコネクト（ＰＣＩ）バス等の、さまざまなシステムインターフェースについて接続を提供するとしてよい。
【００１８】
図１に示すように、プロセッサ１０２は、「サイドバンド」１１８を介してチップセット１０４（例えば、ハブ１１２）との間で情報を送受信するとしてよい。サイドバンド１１８は、１以上の信号ラインとして提供され得る。しかし、実施形態はこれに限定されない。電力管理情報を、サイドバンド１１８を介して送るとしてよい。このような電力情報は、プロセッサ１０２の電力状態の遷移に関する情報であってよい。
【００１９】
このように、チップセット１０４は、プロセッサ１０２の電力状態の遷移に関わっているとしてよい。関わり方は、制御モジュール１１３によって処理されるとしてよい。例えば、ハブ１１２は、制御モジュール１１３の処理に基づいて、ＩＯＱ１１５の中身を空にする（フラッシュするまたは排出する）としてよい。このことは、メモリデバイス１０６等のシステムメモリにＩＯＱ１１５の中身を格納することを含むとしてよい。ＩＯＱ１１５の排出またはフラッシュの前に、関連するスヌープをディセーブルするとしてよい。実施形態によると、電力状態の遷移に関連して発生する遅延を短縮するべく、このような動作を効率よく処理する。
【００２０】
図２は、プロセッサ用の電力管理ポリシーで採用される動作状態を示す図である。また、図示されている状態間での遷移の例も示している。図２に示すように、Ｃ０状態２０２では、通常動作が実行される（アクティブモードとも呼ぶ）。プロセッサ（例えば、プロセッサ１０２）は、この状態では、アクティブに命令を処理するとしてよい。また、プロセッサは、動作電圧および周波数の組み合わせが最大になるような、高周波モード（ＨＦＭ）にあってもよい。このため、Ｃ０状態２０２を全電力状態と呼ぶ。
【００２１】
電力の節約および／または熱負荷の低減を目的として、プロセッサは１または複数の低電力状態に遷移するとしてよい。例えば、プロセッサはＣ０状態２０２からＣ１状態２０４に遷移するとしてよい。この状態では、プロセッサの一部分および／または回路の電源を落とすとしてよい。また、ローカルクロックをゲーティングするとしてよい。
【００２２】
図２は、停止認可状態またはスリープ状態とも呼ばれる、Ｃ２状態２０６を示している。Ｃ２状態２０６では、プロセッサ２０５の回路の一部は電源を落として、内部および外部のコアクロックをゲーティングするとしてよい。
【００２３】
Ｃ３状態２０８は、ディープスリープ状態と呼ばれる。ディープスリープ状態では、内部プロセッサ回路の電源を落とすとしてよい。また、プロセッサの位相ロックループ（ＰＬＬ）をディセーブルするとしてよい。
【００２４】
さらにＣ５状態２１０を図２に示す。この状態では、プロセッサの中身はすべてフラッシュされてキャッシュが空になっている。
【００２５】
図２によると、プロセッサはＣ０状態２０２からＣ５状態２１２へと遷移し得る。特に図２には、Ｃ１状態、Ｃ２状態およびＣ３状態の間における中間の遷移に関連して順次遷移していく様子を示している。しかし、これは例示を目的として図示しているのであって、これに限定されるものではない。このため、別の順序で遷移が生じるとしてもよい。さらに、低電力状態から高電力状態の間ではさまざまな遷移が生じるとしてよい。また、実施形態は図２に示した一連の状態に限定されるものではない。このため、実施形態には、上記以外の状態（例えば、Ｃ６状態）が追加されるとしてもよいし、図示した状態のうちいずれかを省略するとしてもよい。
【００２６】
上述した実施形態の動作について、以下の図面および添付例を参照しつつ、さらに説明する。図面の中にはロジックフローを含むものもある。本明細書で提示する図面は特定のロジックフローを含むが、そのようなロジックフローは、本明細書に記載されている一般的な機能がどのように実装され得るかの例を示すに過ぎないと思われたい。また、明示されていない限り、ロジックフローは提示している順序で実行される必要は必ずしもない。また、ロジックフローは、ハードウェア素子、プロセッサによって実行されるソフトウェア素子、またはこれらの任意の組み合わせによって実装され得る。実施形態はこれに限定されない。例えば、遷移はＣ０状態からＣ６状態の間で生じるとしてもよい。
【００２７】
図３は、ロジックフローの一実施形態を示す図である。特に図３では、本明細書に記載する１以上の実施形態によって実行される動作を表すロジックフロー３００を図示する。ロジックフロー３００に示すように、ブロック３０２では、プロセッサの電力状態の遷移の開始を意味する指示を受け取る。この指示は、プロセッサからの入出力（Ｉ／Ｏ）読み出しとして発行されるとしてもよい。このようなＩ／Ｏ読み出しは、遷移の特性を特定するとしてよい。
【００２８】
電力状態は、第１の電力状態から第２の低電力状態へ遷移してよい。例えば、Ｃ０状態からＣ５状態へと遷移してよい。しかし、実施形態はこのような遷移に限定されない。
【００２９】
上記の指示を受信すると、または、上記の指示を受信した後、ブロック３０４において、ＩＯＱに対応付けられているスヌープをディセーブルする。また、ブロック３０６において、ＩＯＱ排出処理を開始する。ブロック３０８では、プロセッサの第１の電力状態から第２の低電力状態への遷移を、ＩＯＱの排出が実行されている間にわたって継続させる。
【００３０】
しかし、特定の時点（例えば、Ｃ３状態に入る前の時点）において、ブロック３１０ではＩＯＱが空か否かを判断する。ブロック３１２に示すように、ＩＯＱが空の場合、ブロック３１４ではプロセッサの電力状態を継続して遷移させる。ＩＯＱが空でない場合、ブロック３１６では遷移を一時停止させてＩＯＱが空になるまで待機する。
【００３１】
図１を参照して説明すると、ロジックフロー３００はチップセット１０４によって実装され得る。より具体的には、ロジックフロー３００は、ハブ１１２内の制御モジュール１１３によって実装され得る。しかし、実施形態はこれに限定されない。
【００３２】
図４は、Ｃ０状態とＣ５状態の間での遷移の順序の一例を示す図である。順序は、さまざまな信号を用いて図示している。図１を参照して説明すると、図示されている信号はサイドバンド１１８を介して転送されるとしてよい。図４はさらに、複数の期間を示している。時系列順に列挙すると、期間ｔ２０、ｔ２１、ｔ２３、ｔ２４、ｔ２５およびｔ２６である。
【００３３】
実施形態によると、Ｃ０状態とＣ５状態との間での遷移は、プロセッサからのＩ／Ｏ読み出し処理によって開始される。図１を参照して説明すると、このＩ／Ｏ読み出しは、プロセッサ１０２からハブ１１２への読み出しであってよい。このＩ／Ｏ読み出し処理は通常、プロセッサのキャッシュが空になった後でのみ実行される。このＩ／Ｏ読み出しの例は、図４において、期間ｔ２０中または期間ｔ２０前に発生するものとして示されている。
【００３４】
ここで、ＩＯＱはさまざまな方法で処理され得る。例えば、遷移が開始される（例えば、ｔ２０の）期間において、所定の技術を用いてスヌープをディセーブルしてＩＯＱのフラッシュを実行する。つまり、Ｃ５遷移（例えば、Ｃ０状態からＣ５状態への遷移）が要求されるとすぐに、所定の技術は複数の段階を経てＩＯＱを即座にフラッシュして全てのスヌープをディセーブルするとしてよい。
【００３５】
しかし、実施形態によっては、このフラッシュはこの時点では実行されない。これに代えて、ＩＯＱは後続の期間で（例えば、期間ｔ２２、ｔ２３およびｔ２４）自然に排出させる。
【００３６】
この方法では、ＩＯＱが空であることにプロセッサおよび／またはシステムの動作が左右される時点が大幅に遅延される。また、この方法では、プロセッサまたはシステムがＩＯＱの排出が完了するまで待機するべく電力遷移を遅延させなければならない確率が大幅に低くなり得る。
【００３７】
図５Ａおよび図５Ｂは、上述した技術の例を示す図である。特に同図は、図３に示したブロックのいくつかを図４の時間列に組み込んでいる。
【００３８】
例えば、図５Ａは、ブロック３０４、３１２、および３１６が期間ｔ２０の前に実装されていることを示している。図５Ｂは、ブロック３０４が期間ｔ２０に先立って実装されていることを示している。しかし、図５Ａとは対照的に、図５Ｂではブロック３１２および３１６はｔ２３とｔ２４との間に実装されている。
【００３９】
このように、図５Ｂの例では、ＩＯＱの排出またはフラッシュがプロセッサの電力状態の遷移の一部と「並行して」実行され得る。このような構成とすることによって、遷移にかかる時間を短縮する効果と共に電力消費を低減する効果が得られる。
【００４０】
実施形態について完全に理解していただくべく、本明細書には具体的且つ詳細な内容を数多く記載した。しかし、実施形態は上述したような具体的且つ詳細な内容を含まずとも実施できることは、当業者には明らかである。また、公知の処理、構成要素、および回路については、実施形態をあいまいにすることを避けるべく、詳細な説明を省略している。本明細書に記載した具体的な構造および機能の詳細については、実施形態の代表的な例を示すものであって実施形態の範囲を限定するものでは必ずしもないと理解されたい。
【００４１】
さまざまな実施形態は、ハードウェア素子、ソフトウェア素子、またはこれらの組み合わせを用いて実装され得る。ハードウェア素子の例を挙げると、プロセッサ、マイクロプロセッサ、回路、回路素子（例えば、トランジスタ、抵抗、コンデンサ、インダクタ等）、集積回路、特定用途向け集積回路（ＡＳＩＣ）、プログラマブルロジックデバイス（ＰＬＤ）、デジタルシグナルプロセッサ（ＤＳＰ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、ロジックゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセット等を含むとしてよい。ソフトウェアの例を挙げると、ソフトウェア素子、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、機能、方法、手順、ソフトウェアインターフェース、アプリケーションプログラムインターフェース（ＡＰＩ）、命令セット、演算コード、コンピュータコード、コードセグメント、コンピュータコードセグメント、単語、値、シンボル、またはこれらの任意の組み合わせ等を含むとしてよい。実施形態をハードウェア素子および／またはソフトウェア素子を用いて実装するか否かは、所望の演算レート、電力レベル、耐熱性、処理サイクル制限、入力データレート、出力データレート、メモリリソース、データバス速度等の設計または性能上の制約等、さまざまな要因によって左右されるとしてよい。
【００４２】
一部の実施形態は、「結合」および「接続」という用語を用いて説明している。このような用語は、互いに対する同義語として意図されているわけではない。例えば、一部の実施形態の説明では、「接続」および／または「結合」という用語を用いて、２つ以上の素子が互いに直接、物理的または電気的に、接触していることを指しているとしてもよい。しかし、「結合」という用語は同時に、２つ以上の素子が互いに直接は接触していないが、互いに協働または相互作用することを意味するとしてもよい。
【００４３】
一部の実施形態は、例えば、機械によって実行されると実施形態に係る方法および／または処理を機械に実行させる、命令または命令セットを格納する機械可読媒体または物品を用いて実装され得る。このような機械は、例えば、任意の適切なプロセッシングプラットフォーム、コンピューティングプラットフォーム、コンピューティングデバイス、プロセッシングデバイス、コンピューティングシステム、プロセッシングシステム、コンピュータ、プロセッサ等を含むとしてよく、ハードウェアおよび／またはソフトウェアの任意の適切な組み合わせを用いて実装されるとしてよい。機械可読媒体または物品は、例えば、任意の適切な種類のメモリユニット、メモリデバイス、メモリ製品、メモリ媒体、ストレージデバイス、ストレージ製品、ストレージ媒体および／またはストレージユニット、例えば、メモリ、取り外し可能または取り外し不可能な媒体、消去可能または消去不可能な媒体、書き込み可能または書き換え可能な媒体、デジタルまたはアナログの媒体、ハードディスク、フロッピーディスク（登録商標）、コンパクトディスクリードオンリーメモリ（ＣＤ−ＲＯＭ）、コンパクトディスクリコーダブル（ＣＤ−Ｒ）、コンパクトディスクリライタブル（ＣＤ−ＲＷ）、光ディスク、磁気媒体、光磁気媒体、取り外し可能なメモリカードまたはディスク、さまざまな種類のＤＶＤ、テープ、カセット等を含むとしてよい。命令には、任意の適切な高級プログラミング言語、低級プログラミング言語、オブジェクト指向プログラミング言語、ビジュアルプログラミング言語、コンパイラおよび／またはインタプリタ処理されたプログラミング言語を用いて実装される、ソースコード、コンパイラ処理されたコード、インタプリタ処理されたコード、実行可能コード、静的コード、動的コード、暗号化コード等の任意の適切な種類のコードが含まれるとしてよい。
【００４４】
特に明確に示していない限り、「処理」「算出」「計算」「決定」等の用語は、コンピュータまたはコンピューティングシステム、または同様の電子コンピューティングデバイスの動作および／または処理を意味するものと考えられたい。コンピューティングシステム等は、レジスタおよび／またはメモリにおいて物理量（例えば、電子的な量）として表されるデータを操作および／または変換して、コンピューティングシステムのメモリ、レジスタ、またはほかの情報を格納、送信、または表示するデバイスにおいて物理量として同様に表現されるほかのデータを生成するとしてよい。実施形態はこれに限定されない。
【００４５】
構造的特徴および／または方法論的動作に特有の用語を用いて主題を説明したが、特許請求の範囲で定義される主題は上述した具体的な特徴または動作に必ずしも限定されるわけではないと理解されたい。上述の具体的な特徴および動作は特許請求の範囲を実装する形態の例として記載されている。
【図１】
2010515164.tif 000003
【図２】
2010515164.tif 000004
【図３】
2010515164.tif 000005
【図４】
2010515164.tif 000006
【図５Ａ】
2010515164.tif 000007
【図５Ｂ】
2010515164.tif 000008
【国際調査報告】
2010515164.tif 000009
2010515164.tif 000010