(57)【要約】【解決手段】  電力管理を行うためのバッファリング技術を記載する。通信サブシステムおよび演算サブシステムの電力状態を、高電力状態から低電力状態へと変更する段階と、通信アイドル期間中において、通信サブシステムのバッファに情報パケットを格納する段階と、バッファの可変受信しきい値を生成する段階と、可変受信しきい値に基づいて、バッファから演算サブシステムへと格納されている情報パケットを転送する段階とを備える方法を記載する。これ以外にも実施形態を記載および請求する。【選択図】  図１
2010539753.tif 000002
【特許請求の範囲】
【請求項１】
電力管理コントローラを有する電力管理モジュールと、
前記電力管理モジュールに結合されており、通信サブシステムおよび演算サブシステムを有する電力管理対象システムと
を備え、
前記電力管理コントローラは、前記通信サブシステムおよび前記演算サブシステムを低電力状態に切り替えてエネルギーを節約し、
前記通信サブシステムは、
送受信機と、
前記送受信機に結合されており、演算アイドル期間を設けるべく通信アイドル期間中において前記送受信機への情報パケットを格納するバッファと、
前記バッファに結合されており、可変受信しきい値を生成するウォーターマーク生成器と、
前記バッファおよび前記ウォーターマーク生成器に結合されており、可変受信しきい値に基づいて、前記バッファから前記演算サブシステムへと、格納されている前記情報パケットを転送するバッファマネージャと
を有する装置。
【請求項２】
前記バッファマネージャは、前記バッファに格納されている情報パケットの数が可変受信しきい値を超えた場合に、前記バッファから前記演算サブシステムへと、格納されている前記情報パケットを転送する請求項１に記載の装置。
【請求項３】
前記ウォーターマーク生成器は、受信データレートパラメータ、バッファサイズパラメータ、および、通信再開レイテンシパラメータに基づいて、前記可変受信しきい値を生成する請求項１に記載の装置。
【請求項４】
前記バッファマネージャは、通信アイドル期間パラメータが通信アイドル期間しきい値よりも低い場合に、前記バッファをディセーブルして、前記バッファが前記情報パケットを格納しないようにする請求項１に記載の装置。
【請求項５】
前記バッファマネージャに結合されているバッファタイマ
を備え、
前記バッファタイマには、バッファアンロードタイムアウト値が設定されており、前記バッファマネージャは、前記バッファに格納されているパケットの数が前記可変受信しきい値を超える前に、前記バッファアンロードタイムアウト値が終了した場合に、前記バッファから前記演算サブシステムへと、格納されている前記情報パケットを転送する請求項１に記載の装置。
【請求項６】
前記バッファマネージャは、前記バッファに格納されているパケットの数が前記可変受信しきい値を超える前に、バッファアンロードイベント信号を受信した場合に、前記バッファアンロードイベント信号に応じて、前記バッファから前記演算サブシステムへと、格納されている前記情報パケットを転送する請求項１に記載の装置。
【請求項７】
前記送受信機に結合されているコントローラ
を備え、
前記バッファマネージャは、バッファサイズパラメータに基づいて、前記送受信機の通信レートを調整する要求を送信する請求項１に記載の装置。
【請求項８】
前記送受信機に結合されているコントローラ
を備え、
前記バッファマネージャは、前記電力管理コントローラからエネルギー測定パラメータを含む電力管理メッセージを受信して、前記エネルギー測定パラメータに基づいて前記送受信機の通信レートを調整する要求を送信する請求項１に記載の装置。
【請求項９】
通信サブシステムおよび演算サブシステムの電力状態を、高電力状態から低電力状態へと変更する段階と、
演算アイドル期間を設けるべく通信アイドル期間中において、前記通信サブシステムのバッファに情報パケットを格納する段階と、
前記バッファの可変受信しきい値を生成する段階と、
可変受信しきい値に基づいて、前記バッファから前記演算サブシステムへと格納されている前記情報パケットを転送する段階と
を備える方法。
【請求項１０】
前記バッファに格納されている情報パケットの数が可変受信しきい値を超えた場合に、前記バッファから前記演算サブシステムへと、格納されている前記情報パケットを転送する段階を備える請求項９に記載の方法。
【請求項１１】
受信データレートパラメータ、バッファサイズパラメータ、および、通信再開レイテンシパラメータに基づいて、前記可変受信しきい値を生成する段階を備える請求項９に記載の方法。
【請求項１２】
通信アイドル期間パラメータが通信アイドル期間しきい値よりも低い場合、前記バッファをディセーブルして、前記バッファが前記情報パケットを格納しないようにする段階を備える請求項９に記載の方法。
【請求項１３】
前記バッファに格納されているパケットの数が前記可変受信しきい値を超える前に、バッファアンロードタイムアウト値が終了した場合に、前記バッファから前記演算サブシステムへと、格納されている前記情報パケットを転送する段階を備える請求項９に記載の方法。
【請求項１４】
前記バッファに格納されているパケットの数が前記可変受信しきい値を超える前に、バッファアンロードイベント信号を受信した場合に、前記バッファアンロードイベント信号に応じて、前記バッファから前記演算サブシステムへと格納されている前記情報パケットを転送する段階を備える請求項９に記載の方法。
【請求項１５】
請求項９に記載の方法を実装するべくシステムを構成する一連のコンピュータ読み出し可能プログラム要素を備える請求項９に記載の方法。
【発明の詳細な説明】
【背景技術】
【０００１】
コンピュータシステム等の電子デバイスにおける電力管理は、エネルギーの節約、放熱の制御、およびシステム全体の性能の改善において重要な役割を持つ。現在のコンピュータシステムは、信頼性の高い外部からの電力供給が利用できないためにエネルギーを節約するための電力管理が重要になるような状況で利用されること前提として設計されることが多くなっている。電力管理技術によって、コンピュータシステムの一部のコンポーネントに対する電力供給を停止するか、または、当該コンポーネントをアクティブ状態よりは必要消費電力が少ないスリープモードにすることができるので、デバイスの総消費エネルギー量が一定の期間にわたって低減される。エネルギー節約は特に、電池からの電力供給を節約する携帯可能デバイスにおいて肝要である。信頼性の高い外部からの電力供給が利用可能である場合であっても、コンピュータシステム内で慎重に電力管理を行うことによって、システムで発生する熱を少なくすることができ、システムの性能を向上させることができる。コンピュータシステムは概して、周囲温度が低いほど、回路に損傷を与えることなく主要コンポーネントの動作速度をより高速にすることができるので、性能が向上する。このため、電子デバイスの電力管理を強化することには、多くの利点がある。
【図面の簡単な説明】
【０００２】
【図１】通信システムの一実施形態を示す図である。
【０００３】
【図２】装置の一実施形態を示す図である。
【０００４】
【図３】第１の論理図の一実施形態を示す図である。
【０００５】
【図４】第２の論理図の一実施形態を示す図である。
【０００６】
【図５】第３の論理図の一実施形態を示す図である。
【発明を実施するための形態】
【０００７】
さまざまな実施形態は概して、電力管理を向上させるためのバッファリング技術に関連し得る。一部の実施形態は具体的に、電池等のエネルギー蓄積デバイスに基づいて動作しているノードにおいてエネルギーを節約するための電力管理技術に関するとしてよい。例えば、一実施形態によると、ネットワークデバイス等の装置は、電力管理コントローラを有する電力管理モジュールと、電力管理モジュールに結合されている電力管理対象システムとを備えるとしてよい。電力管理対象システムは、通信サブシステムおよび演算サブシステムを有するとしてよい。電力管理コントローラは、前記通信サブシステムおよび前記演算サブシステムを低電力状態に切り替えてエネルギーを節約するとしてよい。
【０００８】
さまざまな実施形態によると、第１のノード用の通信サブシステムは、第１のノードの演算サブシステムのエネルギー節約を促進するように、通信システム内のほかのノードから受信した情報を処理および格納するとしてよい。一部の実施形態によると、通信サブシステムは、演算サブシステムによる処理の準備が整うまでパケットおよびイベント情報をバッファリングすることによって、演算サブシステムが低電力状態にいる期間を延長するとしてよい。このような構成とすることによって、低電力状態にある演算サブシステムに送信される割り込みの数を減らすとしてよく、各割り込みによって、当該割り込みを処理するべく演算サブシステムは高電力状態を再開する。この技術は、「割り込み一体化（ｉｎｔｅｒｒｕｐｔ  ｃｏａｌｅｓｃｉｎｇ）」と呼ばれることもある。
【０００９】
例えば、一実施形態によると、通信サブシステムはさらに、送受信機と、バッファと、ウォーターマーク生成器と、バッファマネージャとを有するとしてよい。送受信機は、ネットワークを介して情報を通信するとしてよい。バッファは、送受信機と結合されて、演算アイドル期間を設けるべく通信アイドル期間中に送受信機のために情報パケットを格納するとしてよい。通信アイドル期間は、一例を挙げると、通信サブシステムがネットワークから情報を受信しない（または、受信しないと予測する）期間を意味するとしてよい。演算アイドル期間は、一例を挙げると、演算サブシステムが通信サブシステムから情報を受信しない（または、受信しないと予測する）期間を意味するとしてよい。ウォーターマーク生成器は、バッファに結合されて、可変受信しきい値を生成するとしてよい。バッファマネージャは、バッファおよびウォーターマーク生成器に結合されて、可変受信しきい値等の要素に基づいて、バッファから演算サブシステムへと格納された情報パケットを転送するとしてよい。可変受信しきい値は、さらに詳細に後述するように、変化する通信電力状態情報に基づいてアルゴリズムに従って導出されるとしてよい。このようにして、電力管理モジュールは、通信サブシステムおよび／または演算サブシステムに関するＱＯＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）要件およびその他の性能要件を維持しつつ、通信サブシステムおよび／または演算サブシステムを低電力状態にして当該低電力状態に留まらせることができるバッファリング技術および／またはロジックを実装することによって、電力管理対象システムにおいてエネルギー節約を向上させるとしてよい。これ以外にも実施形態を説明および請求する。
【００１０】
さまざまな実施形態は、１以上の構成要素を備えるとしてよい。構成要素は、特定の動作を実行する任意の構造を有するとしてよい。各構成要素は、所与の一連の設計パラメータまたは性能制約の用件を満たすように、ハードウェア、ソフトウェア、またはこれらの任意の組み合わせとして実装されるとしてよい。実施形態は、一例として特定のトポロジーで組み合わせられている限られた数の構成要素を持つものとして説明するが、所与の実装要件を満たすようにトポロジーを変更すると共に構成要素を増減させることを含むとしてよい。尚、「一実施形態」または「実施形態」と言及する場合、当該実施形態に関連付けて説明している特定の特徴、構造、または特性が少なくとも１つの実施形態に含まれることを意味している。本明細書では「一実施形態」という表現が繰り返し利用されているが、全てが必ずしも同じ実施形態を意味するものではない。
【００１１】
図１は、通信システム１００を示すブロック図である。さまざまな実施形態によると、通信システム１００は、複数のノードを備えるとしてよい。ノードは通常、通信システム１００内で情報を通信するための任意の物理要素または論理要素を有するとしてよく、所与の一連の設計パラメータまたは性能制約の用件を満たすように、ハードウェア、ソフトウェア、またはこれらの任意の組み合わせとして実装されるとしてよい。図１では一例として特定のトポロジーで組み合わせられた限られた数のノードを図示しているが、所与の実装要件を満たすようにトポロジーを変更してノードの数を増減させ得る。
【００１２】
さまざまな実施形態によると、通信システム１００は、有線通信システム、無線通信システム、あるいはこれらの組み合わせを含むとしてよく、または有線通信システム、無線通信システム、あるいはこれらの組み合わせの一部を構成するとしてよい。例えば、通信システム１００は、有線通信リンク１４０−１等の１以上の種類の有線通信リンクを介して情報を通信する１以上のノード１１０−１−ｍを備えるとしてよい。有線通信リンク１４０−１の例を挙げると、これらに限定されないが、ワイヤ、ケーブル、バス、プリント配線基板（ＰＣＢ）、イーサネット（登録商標）接続、ピアツーピア（Ｐ２Ｐ）接続、バックプレーン、スイッチファブリック、半導体材料、ツイストペア線、同軸ケーブル、光ファイバ接続等が含まれるとしてよい。通信システム１００はさらに、無線共有媒体１４０−２等の１以上の種類の無線通信リンクを介して情報を通信する１以上のノード１１０−１−ｍを備えるとしてよい。無線共有媒体１４０−２の例を挙げると、これらに限定されないが、無線チャネル、赤外線チャネル、高周波（ＲＦ）チャネル、ＷｉＦｉ（Ｗｉｒｅｌｅｓｓ  Ｆｉｄｅｌｉｔｙ）チャネル、ＲＦスペクトルの一部分、および／または、１以上のライセンス要またはライセンス不要の周波数帯域等を含むとしてよい。後者の場合、無線ノードは、１以上のラジオ、送信機、受信機、送受信機、チップセット、増幅器、フィルタ、制御ロジック、ネットワークインターフェースカード（ＮＩＣ）、アンテナ、アンテナアレイ等の、無線通信を実行するための１以上の無線インターフェースおよび／または無線コンポーネントを含むとしてよい。アンテナの例を挙げると、これらに限定されないが、内部アンテナ、全方向アンテナ、モノポールアンテナ、ダイポールアンテナ、エンドフェッドアンテナ、円偏光アンテナ、マイクロストリップアンテナ、ダイバーシティアンテナ、デュアルアンテナ、アンテナアレイ等を含むとしてよい。一実施形態によると、特定のデバイスは、さまざまな適応型アンテナ技術および空間多様性技術を実装するべく、複数のアンテナから成るアンテナアレイを有しているとしてよい。
【００１３】
図１に示す実施形態から分かるように、通信システム１００は複数のノード１１０−１−ｍを備える。ノード１１０−１−ｍは、任意の種類の固定型または可動型の電子デバイスまたはリソースを有するとしてもよいし、任意の種類の固定型または可動型の電子デバイスまたは電子リソースとして実装されるとしてもよい。任意の種類の固定型または可動型の電子デバイスまたは電子リソースは、ネットワークデバイス、ネットワークエンドポイント装置、ネットワークインフラストラクチャ装置、セルラー方式無線電話ネットワーク装置、処理システム、コンピュータシステム、コンピュータサブシステム、コンピュータ、ワークステーション、端末、サーバ、パーソナルコンピュータ（ＰＣ）、ラップトップコンピュータ、進化型ラップトップコンピュータ、ポータブルコンピュータ、ハンドヘルドコンピュータ、携帯情報端末（ＰＤＡ）、携帯電話、スマートフォン、ルータ、スイッチ、ブリッジ、ゲートウェイ、ネットワーク器具、マイクロプロセッサ、集積回路、プログラマブルロジックデバイス（ＰＬＤ）、デジタルシグナルプロセッサ（ＤＳＰ）、プロセッサ、回路、ロジックゲート、レジスタ、マイクロプロセッサ、集積回路、半導体デバイス、チップ、トランジスタ等を含む。一部の実施形態によると、ノード１１０−１−ｍの一部は、異種ネットワークデバイスであってもよい。例えば、一実施形態によると、ノード１１０−１−ｍは、１以上の電池等の可動型電源を用いるさまざまな可動型コンピュータシステム（例えば、ラップトップコンピュータ、ハンドヘルドコンピュータ、スマートフォン、携帯電話等）を含むとしてよい。
【００１４】
ノード１１０−１−ｍの一部が異なるネットワークデバイスを備える場合があるが、ノード１１０−１−ｍはそれぞれ、図示しているノード１１０−１と同数の構成要素を有するとしてよい。例えば、ノード１１０−１−ｍはそれぞれ、ノード１１０−１−ｍのための電力管理動作を実行するための電力管理システムを実装するさまざまな電力管理要素を有するとしてよい。一例を挙げると、図１に示す実施形態によれば、第１のノード１１０−１は、電力管理モジュール１３０−１に結合されている電力管理対象システム１２０−１を有するとしてよい。電力管理モジュール１３０−１は、通信リンク１４０−１、１４０−２によって確立されている通信接続を利用して、第２のノード（例えば、ノード１１０−２−ｍのうちの１つ）との間で、電力状態情報を通信するとしてよい。通常動作を説明すると、電力管理モジュール１３０−１は、第１のノード１１０−１の電力管理対象システム１２０−１の電力状態を管理するとしてよい。電力状態情報は、第１のノード１１０−１の電力管理対象システム１２０−１の１以上の部分の過去、現在、または未来の電力状態を示すとしてよい。このようにして、電力管理対象システム１２０−１の一部分は、第１のノード１１０−１の電力管理を改善または強化するべく、電力状態情報のやり取りを行うとしてよい。一例を挙げると、電力管理モジュール１３０−１は、電力管理対象システム１２０−１のサブシステム２１０−１、２３０−１間で、電力管理動作を同期させるとしてよい。例えば、所与の電力状態持続期間について通信サブシステム２１０−１の通信コンポーネントの動作または予測動作に基づいて、演算サブシステム２３０−１の演算コンポーネントを低電力状態に入れるとしてよいし、この逆の処理を行うとしてもよい。
【００１５】
図１ではノード１１０−１のみが電力管理対象システム１２０−１および電力管理モジュール１３０−１を有するノードとして図示されているが、ノード１１０−１−ｍはそれぞれが、同一または同様の電力管理対象システム１２０−１−ｎおよび電力管理モジュール１３０−１−ｐを有すると理解されたい。例えば、ノード１１０−２は、電力管理モジュール１３０−２に結合されている電力管理対象システム１２０−２を有するとしてよく、ノード１１０−３は、要素１２０−３、１３０−３等を有するとしてよい。さらに、電力管理対象システム１２０−１および電力管理モジュール１３０−１に関する構造および動作の説明および例は、その他のノード１１０−２−ｍが有する対応する構成要素にも当てはまるとしてよい。電力管理対象システム１２０−１−ｎおよび電力管理モジュール１３０−１−ｐの実施形態例は、図２を参照してより詳細に後述する。
【００１６】
図２は、電力管理対象システム１２０および電力管理モジュール１３０をより詳細に示すブロック図である。図２に示す実施形態によると、電力管理対象システム１２０は、通信サブシステム２１０および演算サブシステム２３０を持つとしてよい。図２では一例として特定の配置方法で組み合わせられている限られた数の電力管理素子を図示しているが、所与の実装を実現するべく、配置方法を変更し得ると共に、電力管理素子の数を増減させ得るものと理解されたい。
【００１７】
さまざまな実施形態によると、電力管理対象システム１２０は、ノード１１０−１−ｍの電気素子または電子素子のうち、電源２３２から供給される電力を消費すると共に電力管理動作に適しているものであればどのようなものを含むとしてもよい。電力管理技術によって、電子デバイスまたは電子システム（例えば、コンピュータシステム）の特定のコンポーネントに対する電力供給を停止したり、または、当該コンポーネントをアクティブ状態よりは必要消費電力が少ないスリープモードにすることができるので、デバイスの総消費エネルギー量が一定の期間にわたって低減される。電力管理技術を実装するには、電力管理対象システム１２０のさまざまなハードウェア素子に対してパワーゲーティングおよび／またはクロックゲーティングを適用して、電池の電力を節約するとしてよい。
【００１８】
より具体的に説明すると、電力管理対象システム１２０は、ノード１１０−１−ｍのうち、電力管理モジュール１３０の電力管理コントローラ２３４の制御下で、電源２３２からさまざまなレベルで電力を引き出すさまざまな電力状態で動作し得る、さまざまな電気素子または電子素子を含むとしてよい。さまざまな電力状態は、多くの電力管理方式において定義されているものであってよい。例えば、ＡＣＰＩ（Ａｄｖａｎｃｅｄ  Ｃｏｎｆｉｇｕｒａｔｉｏｎ  ａｎｄ  Ｐｏｗｅｒ  Ｉｎｔｅｒｆａｃｅ）シリーズの仕様、およびその産物、改訂版および改良版で定義されている電力状態であってよい。例えば、一実施形態によると、ＡＣＰＩ改訂版３．０ａ、２００５年１２月３０日（「ＡＣＰＩ改訂版３．０ａ仕様」）で定義されている電力状態であってよい。ＡＣＰＩシリーズの仕様では、電子デバイスの複数の電力状態を定義しており、例えば、グローバルシステム状態（Ｇｘ状態）、デバイス電力状態（Ｄｘ状態）、スリープ状態（Ｓｘ）状態、プロセッサ電力状態（Ｃｘ状態）、デバイスおよびプロセッサ性能状態（Ｐｘ状態）等を定義しているとしてよい。これら以外にも、所定の一連の設計パラメータおよび性能制約を実現するべく、電力レベルが異なるさまざまな電力状態を実装すると理解されたい。実施形態はこれに限定されない。
【００１９】
一部の実施形態によると、ノード１１０−１−ｍの電気素子または電子素子のうち電力管理動作に適しているものは通常、通信サブシステム２１０および演算サブシステム２３０にグループ化または分類されるとしてよい。しかし、サブシステム２１０、２３０は一例として説明の便宜上言及されているものであり本発明を限定するものではないと理解されたい。電力管理対象システム１２０は、ノード１１０−１−ｍの電気素子または電子素子のうち、電力管理モジュール１３０による電力管理動作に適したものを他にも含むとしてよい。例えば、ノード１１０−１−ｍは通常、デジタル電子ディスプレイまたはアナログ電子ディスプレイ等のコンピュータモニタまたはディスプレイを含む。デジタル電子ディスプレイの例には、電子ペーパー、ニキシー管ディスプレイ、真空蛍光ディスプレイ、発光ダイオードディスプレイ、エレクトロルミネセンスディスプレイ、プラズマディスプレイパネル、液晶ディスプレイ、薄膜トランジスタディスプレイ、有機発光ダイオードディスプレイ、表面伝導型電子放出素子ディスプレイ、レーザテレビディスプレイ、カーボンナノチューブ、ナノクリスタルディスプレイ等が含まれるとしてよい。アナログ電子ディスプレイの例としては、陰極線管ディスプレイが含まれるとしてよい。コンピュータモニタは、コンピュータシステムがユーザからの入力を所定の期間にわたって受信していないことがオペレーティングシステムによって検出された場合、スリープモードに入ることが多い。他のシステムコンポーネントとしては、デジタルカメラ、タッチスクリーン、録画装置、録音装置、ストレージデバイス、振動素子、オシレータ、システムクロック、コントローラ、および、その他のプラットフォームまたはシステムアーキテクチャ装置等が挙げられる。これらのシステムコンポーネントもまた、利用されていない場合には、エネルギーを節約する目的で、スリープ状態または電力供給停止状態になるとしてよい。コンピュータシステムは、入力デバイスを監視して、必要に応じてデバイスを起こす。実施形態は、これに限定されない。
【００２０】
さまざまな実施形態において、電力管理対象システム１２０は、通信サブシステム２１０を含むとしてよい。通信サブシステム２１０は、ノード１１０−１−ｍ同士の間で情報を通信すると共に通信処理を実行するさまざまな通信素子を含むとしてよい。適切な通信素子の例を挙げると、通信リンク１４０−１、１４０−２を介して情報を通信する電気素子または電子素子であればどのようなものをも含むとしてよく、これらに限定されないが、ラジオ、送信機、受信機、送受信機、チップセット、増幅器、フィルタ、制御ロジック、インターフェース、ネットワークインターフェース、ネットワークインターフェースカード（ＮＩＣ）、アンテナ、アンテナアレイ、デジタルシグナルプロセッサ、ベースバンドプロセッサ、メディアアクセスコントローラ、メモリユニット等が含まれ得る。
【００２１】
さまざまな実施形態によると、通信サブシステム２１０−１は、異なる通信レートで動作可能な１以上の送受信機２０４−１−ｒを含むとしてよい。送受信機２０４−１−ｒは、さまざまな有線媒体方式（例えば、銅線、シングルモードファイバ、マルチモードファイバ等）および無線媒体方式（例えば、ＲＦスペクトル）の通信リンク１４０−１、１４０−２を介して情報を送受信可能な通信素子であれば、どのようなものを含むとしてもよい。送受信機２０４−１−ｒの例には、さまざまなイーサネット（登録商標）ベースのＰＨＹデバイスが含まれるとしてよい。例えば、ファストイーサネット（登録商標）ＰＨＹデバイス（例えば、１００Ｂａｓｅ−Ｔ、１００Ｂａｓｅ−ＴＸ、１００Ｂａｓｅ−Ｔ４、１００Ｂａｓｅ−Ｔ２、１００Ｂａｓｅ−ＦＸ、１００Ｂａｓｅ−ＳＸ、１００ＢａｓｅＢＸ等）、ギガビットイーサネット（登録商標）（ＧｂＥ）ＰＨＹデバイス（例えば、１０００Ｂａｓｅ−Ｔ、１０００Ｂａｓｅ−ＳＸ、１０００Ｂａｓｅ−ＬＸ、１０００Ｂａｓｅ−ＢＸ１０、１０００Ｂａｓｅ−ＣＸ、１０００Ｂａｓｅ−ＺＸ等）、１０ＧｂＥ  ＰＨＹデバイス（例えば、１０ＧＢａｓｅ−ＳＲ、１０ＧＢａｓｅ−ＬＲＭ、１０ＧＢａｓｅ−ＬＲ、１０ＧＢａｓｅ−ＥＲ、１０ＧＢａｓｅ−ＺＲ、１０ＧＢａｓｅ−ＬＸ４、１０ＧＢａｓｅ−ＣＸ４、１０ＧＢａｓｅ−Ｋｘ、１０ＧＢａｓｅ−Ｔ等）、１００ＧｂＥ  ＰＨＹデバイス等が含まれるとしてよい。送受信機２０４−１−ｒはさらに、例えば携帯可能ブロードバンド通信システム用のさまざまな無線通信機または無線ＰＨＹデバイスを含むとしてもよい。可動型ブロードバンド通信システムの例を挙げると、これらに限定されないが、さまざまな米国電気電子学会（ＩＥＥＥ）規格に準拠したシステムを含む。ＩＥＥＥ規格の例としては、ワイヤレス・ローカル・エリア・ネットワーク（ＷＬＡＮ）用のＩＥＥＥ８０２．１１規格およびその変形版、ワイヤレス・メトロポリタン・エリア・ネットワーク（ＷＭＡＮ）用のＩＥＥＥ８０２．１６規格およびその変形版、ＩＥＥＥ８０２．２０またはモバイル・ブロードバンド・ワイヤレス・アクセス（ＭＢＷＡ）規格およびその変形版等がある。送受信機２０４−１−ｒはさらに、その他のさまざまな種類の可動型ブロードバンド通信システムおよび規格として実装されるとしてよい。例えば、ユニバーサル・モバイル・テレコミュニケーション・システム（ＵＭＴＳ）システムシリーズの規格および変形版、符号分割多重アクセス（ＣＤＭＡ）２０００システムシリーズの規格および変形版（例えば、ＣＤＭＡ２０００  １ｘＲＴＴ、ＣＤＭＡ２０００ＥＶ−ＤＯ、ＣＤＭＡ  ＥＶ−ＤＶ等）、ヨーロッパ電気通信標準化協会（ＥＴＳＩ）のブロードバンド・ラジオ・アクセス・ネットワーク（ＢＲＡＮ）によって作成されたハイ・パフォーマンス・ラジオ・メトロポリタン・エリア・ネットワーク（ＨＩＰＥＲＭＡＮ）システムシリーズの規格および変形版、ワイヤレス・ブロードバンド（ＷｉＢｒｏ）システムシリーズの規格および変形版、ジェネラル・パケット・ラジオ・サービス（ＧＰＲＳ）システムを利用するグローバル・システム・フォー・モバイル・コミュニケーション（ＧＳＭ）（ＧＳ���／ＧＰＲＳ）シリーズの規格および変形版、エンハンスド・データ・レート・フォー・グローバル・エボリューション（ＥＤＧＥ）システムシリーズの規格および変形版、ハイ・スピード・ダウンリンク・パケット・アクセス（ＨＳＤＰＡ）システムシリーズの規格および変形版、高速直交周波数分割多重方式（ＯＦＤＭ）パケット・アクセス（ＨＳＯＰＡ）システムシリーズの規格および変形版、ハイ・スピード・アップリンク・パケット・アクセス（ＨＳＵＰＡ）システムシリーズの規格および変形版等を含む。実施形態はこれに限定されない。
【００２２】
さまざまな実施形態によると、コントローラ２０８は、１つの送受信機（例えば、２０４−１）、または、複数の送受信機２０４−１−ｒを利用して、通信レートを切り替えるとしてよい。コントローラ２０８は、論理動作を実行可能な演算素子またはロジックデバイスであればどのようなものとして実装されるとしてもよく、例えば、プロセッサ、マイクロプロセッサ、チップセット、コントローラ、マイクロコントローラ、埋め込みコントローラ、メディアアクセスコントローラ、ベースバンドコントローラ等として実装されるとしてよい。送受信機２０４−１−ｒは、個別に、または、全て、異なる通信レートまたはリンクレートで動作するとしてよい。例えば、一実施形態によると、１つの送受信機２０４−１がさまざまな通信レートで動作可能としてもよい。例えば、別の実施形態によると、第１の送受信機２０４−１が第１の通信レートで動作可能で、第２の送受信機２０４−２は第２の通信レートで動作可能等、としてもよい。コントローラ２０８は、所望の通信レートを実現することを目的として、第１の送受信機２０４−１を、第１の通信レートから第２の通信レートへ切り替えるとしてもよいし、または、第１の送受信機２０４−１から第２の送受信機２０４−２へと動作を切り替えるとしてもよい。コントローラ２０８は、例えば、１以上のエネルギー・エフィシエント・イーサネット（登録商標）（ＥＥＥ）制御ポリシー等の制御ポリシーに従って通信レートを切り替えるとしてよい。コントローラ２０８はさらに、バッファマネージャ２１６からの命令に従って通信レートを切り替えるとしてもよい。
【００２３】
さまざまな実施形態によると、通信サブシステム２１０−１は、バッファマネージャ２１６が管理する１以上のバッファ２０６−１−ｔを含むとしてよい。バッファ２０６−１−ｔは、送受信機２０４−１−ｒが受信するネットワークパケット、または、送受信機２０４−１−ｒによって送信される準備が整っているネットワークパケットを格納するとしてよい。例えば、バッファ２０６−１−ｔは、通信サブシステム２１０−１または演算サブシステム２３０−１が低電力状態にあるためにパケットの通信または処理が実行できない場合に、パケットをバッファリングするべく利用されるとしてよい。別の例によると、バッファ２０６−１−ｔは、送受信機２０４−１−ｒの通信レートの切り替えは通常、瞬時には起こらないので、送受信機の通信レートの切り替えまたは変更が完了するまでパケットをバッファリングするべく用いられるとしてよい。バッファ２０６−１−ｔは、例えば、標準的な先入れ先出し（ＦＩＦＯ）待ち行列として実装されるとしてよい。バッファマネージャ２１６は、バッファ２０１−１−ｔの動作を管理するべくさまざまな種類のバッファロジックを実装するとしてよい。
【００２４】
さまざまな実施形態によると、電力管理対象システム１２０は、演算サブシステム２３０を含むとしてよい。演算サブシステム２３０は、ノード１１０−１−ｍに関連して、情報を処理すると共に演算処理を実行するべくさまざまな演算素子を含むとしてよい。適切な演算素子の例を挙げると、情報を処理するべく設計されている電気素子および電子素子であればどのようなものを含むとしてよく、これらに限定されないが、プロセッサ、マイクロプロセッサ、チップセット、コントローラ、マイクロコントローラ、埋め込みコントローラ、クロック、オシレータ、オーディオカード、ビデオカード、マルチメディアカード、周辺機器、メモリユニット、メモリコントローラ、ビデオコントローラ、オーディオコントローラ、マルチメディアコントローラ等が含まれるとしてよい。
【００２５】
さまざまな実施形態によると、電力管理モジュール１３０は、電源２３２を含むとしてよい。電源２３２は、広くはノード１１０−１−ｍの構成要素に電力を供給するとしてよく、具体的には電力管理対象システム１２０に電力を供給するとしてよい。一実施形態によると、例えば、電源２３２は、通信サブシステム２１０および演算サブシステム２３０に供給する電力のレベルをさまざまに変化させるとしてよい。さまざまな実施形態によると、電源２３２は、直流（ＤＣ）電力を供給する取り外し可能且つ再充電可能なリチウムイオン電池等の再充電可能電池、および／または、標準的な交流（ＡＣ）主電源から電力を引き出すＡＣアダプタによって実装されるとしてよい。
【００２６】
さまざまな実施形態によると、電力管理モジュール１３０は、電力管理コントローラ２３４を含むとしてよい。電力管理コントローラ２３４は概して、電力管理対象システム１２０による電力消費を制御するとしてよい。一実施形態によると、電力管理コントローラ２３４は、定義されている電力状態に従って、通信サブシステム２１０および演算サブシステム２３０に供給される電力のレベルの変更を制御するとしてよい。例えば、電力管理コントローラ２３４は、電源２３２がサブシステム２１０、２３０に供給する電力レベルに対して修正、切り替え、または遷移を行って電力レベルを昇降させて、サブシステム２１０、２３０の電力状態を効率よく変更するとしてよい。
【００２７】
さまざまな実施形態によると、電力管理モジュール１３０は、１以上の電力管理タイマ２３６を含むとしてよい。電力管理タイマ２３６は、所与の電力状態持続期間にわたって特定の電力状態を維持することを目的として、電力管理コントローラ２３４によって利用され得る。電力状態持続期間は、ノードまたはノードの一部が所与の電力状態にある所定の期間を表すとしてよい。例えば、電力管理コントローラ２３４は、高電力状態から低電力状態へと所定の期間にわたって演算サブシステム２３０を切り替えて、期間が終了すると、演算サブシステム２３０を高電力状態へと戻すとしてよい。
【００２８】
ノード１１０−１−ｍに関する電力管理動作をまとめるべく、通信サブシステム２１０、演算サブシステム２３０、および電力管理モジュール１３０は、通信バス２２０およびそれぞれの電力管理インターフェース２１４−１、２１４−２および２１４−３を介して、さまざまな電力管理メッセージ２４０−１−ｑをやり取りするとしてよい。システム内の全てのデバイスの電力を管理するべく、オペレーティングシステムは通常、標準的な技術を利用して、特定の入出力（Ｉ／Ｏ）インターコネクトを介して制御情報をやり取りする。通信バス２２０および対応するインターフェース２１４として実装されるのに適しているさまざまなＩ／Ｏインターコネクトの例は、これらには限定されないが、ペリフェラル・コンポーネント・インターコネクト（ＰＣＩ）、ＰＣＩエクスプレス（ＰＣＩｅ）、カードバス（ＣａｒｄＢｕｓ）、ユニバーサル・シリアル・バス（ＵＳＢ）、ＩＥＥＥ１３９４ファイヤワイヤ等を含むとしてよい。
【００２９】
図２に戻ると、通信サブシステム２１０は、ネットワーク状態モジュール２１２を含むとしてよい。ネットワーク状態モジュール２１２は、通信接続２５０−１−ｖのトラフィック動作、機能情報、および、通信サブシステム２１０のさまざまな通信要素のその他の処理を始めとする、通信サブシステム２１０の特定の状態または特性を監視するとしてよい。ネットワーク状態モジュール２１２は、測定した特性と共に、電力管理モジュール１３０に、通信電力管理メッセージ２４０−１−ｑを送信するとしてよい。電力管理モジュール１３０は、部分的に通信電力管理メッセージ２４０−１−ｑに基づいて、電力管理対象システム１２０の電力状態情報２６０を生成するとしてよい。
【００３０】
演算サブシステム２３０も同様に、演算状態モジュール２３２を含むとしてよい。演算状態モジュール２３２は、システムアクティビティのレベル、機能情報、および演算サブシステム２３０のさまざまな演算要素のその他の処理を始めとする、演算サブシステム２３０の特定の状態または特性を監視するとしてよい。演算状態モジュール２３２は、測定した特性と共に、電力管理モジュール１３０に、演算電力管理メッセージ２４０−１−ｑを送信するとしてよい。電力管理モジュール１３０は、部分的に演算電力管理メッセージ２４０−１−ｑに基づいて、電力管理対象システム１２０の電力状態情報２６０を生成するとしてよい。
【００３１】
通常の動作を説明すると、電力管理モジュール１３０−１は、ノード１１０−１の電力管理対象システム１２０−１の一部分に関する電力管理動作を、第１のノード１１０−１のほかの部分から受信した電力状態情報に基づいて、実行するとしてよい。例えば、ノード１１０−１の電力管理モジュール１３０−１は、通信バス２２０を介して、電力管理対象システム１２０−１について、通信サブシステム２１０−１のネットワーク状態モジュール２１２から通信電力状態情報を受信するとしてよい。電力管理モジュール１３０−１は、通信サブシステム２１０−１の通信電力状態情報に基づいて、ノード１１０−１の電力管理対象システム１２０−１の演算サブシステム２３０−１について、電力状態を管理するとしてよい。電力管理モジュール１３０−１およびサブシステム２１０−１、２３０−１は、さまざまな通信バスプロトコルに従って、通信バス２２０を介して、通信電力状態情報をやり取りするとしてよい。
【００３２】
通信電力状態情報は、通信サブシステム２１０の電力状態に、明示的または黙示的に関連する情報を表すとしてよい。通信電力状態情報はまた、電力状態持続期間、アイドル期間、再開レイテンシ等、通信サブシステム２１０の電力状態に関するさまざまな特性または属性を表すとしてよい。例えば、一実施形態によると、通信電力状態情報は、これらに限定されないが、通信電力状態パラメータ、通信アイドル期間パラメータ、通信再開レイテンシパラメータ、または電力状態持続期間を含むとしてよい。通信アイドル期間パラメータは、ネットワークリンクまたは通信サブシステム２１０−１が所定の電力状態にある時間、または所定の期間を表す。通信アイドル期間パラメータによって、サブシステム２１０−１および２３０−１の低電力状態の開始および終了を決定的に決めることができる。通信再開レイテンシパラメータは、ネットワークリンクまたは通信サブシステム２１０−１が所定の電力状態を終了して高電力状態を開始するまでに必要な時間または所定の期間を表す。通信再開レイテンシパラメータによって、サブシステム２１０−１、２３０−１は、通信サブシステム２１０−１が目覚めて外部への送信等のサービスを提供する準備が整えるまでにどれくらいの時間がかかるかを判断することができる。通信アイドル期間パラメータおよび通信再開レイテンシパラメータは、通信バス２２０を介して、電力管理メッセージ２４０−１−ｑによってやり取りされるとしてよい。
【００３３】
さまざまな実施形態によると、ネットワーク状態モジュール２１２は、通信サブシステム２１０−１の機能に基づいて、通信アイドル期間パラメータおよび通信再開レイテンシパラメータを生成するとしてよい。例えば、通信サブシステム２１０−１は、通信接続２５０−１−ｖから受信した、ネットワークパケット等の情報を格納するさまざまなバッファを実装して、演算サブシステム２３０−１が対応および処理するように、当該情報を転送するとしてよい。別の例を挙げると、通信サブシステム２１０−１は、通信バス２２０から受信した、ネットワークパケット等の情報を格納するさまざまなバッファを実装して、通信リンク１４０−１、１４０−２を介して通信接続２５０−１−ｖを利用して別のノード１１０−２−ｍへと通信サブシステム２１０−１が通信するように、当該情報を転送するとしてよい。さらに別の例を挙げると、通信サブシステム２１０−１は、それぞれ異なる通信速度で動作するさまざまな有線型または無線型の送受信機を含むとしてよい。例えば、ＩＥＥＥ８０２．３−２００５規格の１０ギガビットイーサネット（登録商標）（１０ＧｂＥまたは１０ＧｉｇＥ）、ＩＥＥＥ８０２．３ｂａ規格案１００ギガビットイーサネット（登録商標）（１００ＧｂＥまたは１００ＧｉｇＥ）等を含むとしてよい。さらに別の例によると、通信サブシステム２１０−１は、それぞれ異なる速度で動作するさまざまなプロセッサ、例えばベースバンドプロセッサまたは通信プロセッサ等を含むとしてよい。さらに別の例によると、ネットワーク状態モジュール２１２は、通信リンク１４０−１、１４０−２を介して通信接続２５０−１−ｖを用いた情報の受信レートを監視するとしてよい。本例によると、通信サブシステム２１０−１のネットワーク状態モジュール２１２は、パケット到着間時間を測定するべく通信リンク１４０−１、１４０−２を監視するとしてよい。通信機能の例としては他に、通信リンク１４０−１、１４０−２におけるその他のネットワークトラフィックロードの測定（例えば、同期トラフィック、非同期トラフィック、バーストトラフィック等）、信号ノイズ比（ＳＮＲ）、受信信号強度指標（ＲＳＳＩ）、通信バス２２０のスループット、物理層（ＰＨＹ）速度、１以上のＰＭＰＤＵ１５０−１−ｓを介して受信したその他のノード１１０−２−ｍの電力状態情報２６０等が含まれるとしてよい。ネットワーク状態モジュール２１２は、上述およびその他の通信サブシステム２１０−１のネットワーク機能または通信機能を評価して、通信サブシステム２１０−１の機能の評価に基づいて、適切な通信アイドル期間パラメータおよび通信再開レイテンシパラメータを生成するとしてよい。
【００３４】
さまざまな実施形態によると、ノード１１０−１−ｍは、通信電力状態情報に基づいて、エネルギー節約（例えば、電池の長寿命化または小型化）、放熱、またはシステムの総合的な性能を改善するべく、所与のノード１１０−１−ｍの電力管理を強化するとしてよい。一実施形態によると、例えば、通信サブシステム２１０−１のネットワーク状態モジュール２１２は、通信リンク１４０−１、１４０−２およびさまざまな通信素子（例えば、ラジオ、ベースバンドプロセッサ、チップセット、メモリユニット等）を監視して、通信サブシステム２１０−１の通信電力状態情報を決定するとしてよい。ネットワーク状態モジュール２１２は、通信電力状態情報を含む電力管理メッセージ２４０−１−ｑを、通信バス２２０およびインターフェース２１４−１、２１４−３を介して、電力管理モジュール１３０−１へと送信するとしてよい。電力管理モジュール１３０−１は、電力管理メッセージ２４０−１−ｑを受信して、当該電力管理メッセージ２４０−１−ｑから通信電力状態情報を取り出すとしてよい。電力管理モジュール１３０−１は、通信サブシステム２１０−１の通信電力状態情報に基づいて、演算サブシステム２３０−１の電力状態を管理するとしてよい。例えば、電力管理モジュール１３０−１は、通信サブシステム２１０−１の通信電力状態情報を利用して、電力管理対象システム１２０−１の演算サブシステム２３０−１の電力レベルを、第１の電力レベルから第２の電力レベルへと、変更するとしてよい。さらに、電力管理モジュール１３０−１は、演算サブシステム２３０−１の電力レベルを、第１の電力レベルから第２の電力レベルへと、所定の期間にわたって変更するとしてよい。この所定の期間は、電力状態持続期間と呼ばれ、通信サブシステム２１０−１の通信電力状態情報を用いて決定される。
【００３５】
しかし、通信サブシステム２１０−１は、低電力状態にある場合でも依然として、他のノード１１０−２−ｍから通信リンク１４０−１、１４０−２を介して情報パケットを受信し続けると共に、演算サブシステム２３０−１から、通信リンク１４０−１、１４０−２を介して通信サブシステム２１０−１によってほかのノード１１０−２−ｍへと送信される準備が整っている情報パケットを受信し続けるとしてよい。通信サブシステム２１０−１が受信するパケットがすべて、処理されるべく演算サブシステム２３０−１に直接送信されると、演算サブシステム２３０−１は常に、各パケットを処理するべく、低電力状態を終了して高電力状態を開始しなければならない。この場合、電源２３２から消費するエネルギー量は多大なものとなり得る。
【００３６】
上述およびその他の問題を解決するべく、通信サブシステム２１０−１は、割り込み一体化技術を実装するとしてよい。例えば、通信サブシステム２１０−１は、バッファ２０６−１−ｔのうち１以上を用いて、受信するパケットを格納またはバッファリングして、バッファマネージャ２１６は、処理のために演算サブシステム２３０−１へと格納されたパケットを放出または転送するタイミングを決定するとしてよい。バッファマネージャ２１６は、演算サブシステム２３０−１、ひいてはノード１１０−１全体のエネルギー節約を改善するように設計されているバッファ管理ポリシーに従って、バッファ２０６−１−ｔから演算サブシステム２３０−１へとパケットを転送するタイミングを決定するとしてよい。
【００３７】
さまざまな実施形態によると、バッファマネージャ２１６は、通信サブシステム２１０−１および／または演算サブシステム２３０−１に対するＱｏＳ要件、スループット要件、およびその他の性能要件を維持しつつ、通信サブシステム２１０−１および／または演算サブシステム２３０−１が低電力状態に留まっている時間を長くするように、設計されているバッファ管理ポリシーを実装するとしてよい。一部の実施形態によると、バッファ管理ポリシーは、バッファ２０６−１−ｔから演算サブシステム２３０−１へとパケットを転送するタイミングを決定するためのバッファ管理ルールを含むとしてよい。一実施形態によると、例えば、バッファマネージャ２１６は、通信アイドル期間中であればバッファ２０６−１−ｔにパケットを格納して、４つのバッファ管理条件のうち任意の組み合わせを満たすと、バッファ２０６−１−ｔから演算サブシステム２３０−１へと格納されていたパケットを転送するというバッファ管理ルールを実装するとしてよい。４つのバッファ管理条件は、（１）１以上のバッファ２０６−１−ｔに格納されているパケットの数が可変受信しきい値を超えた場合、（２）バッファアンロードタイムアウト値が終了した場合、（３）バッファアンロードイベント信号を受信した場合、および／または（４）通信アイドル期間パラメータが通信アイドル期間しきい値よりも小さい場合、という条件を含む。これら４つのバッファ管理条件は、例として挙げられているに過ぎず、本発明を限定するものではないと理解されたい。実施形態はこれに限定されない。
【００３８】
バッファマネージャ２１６は、バッファ２０６−１−ｔに格納されている任意のパケットを処理を目的として演算サブシステム２３０−１へと放出または転送することをトリガすることを目的として、上述したバッファ管理条件のうち１以上をさまざまな組み合わせで利用するとしてよい。一実施形態によると、例えば、バッファマネージャ２１６は、バッファ２０６−１−ｔから演算サブシステム２３０−１が利用しているメモリユニット２３４へのパケットの移動を加速するべく、ダイレクトメモリアクセス（ＤＭＡ）技術を用いて、バッファ２０６−１−ｔ内に格納されているパケットを演算サブシステム２３０−１へと転送するとしてよい。そしてバッファマネージャ２１６は、演算サブシステム２３０−１（例えば、プロセッサ）に対して割り込みを発行して、パケットがメモリユニット２３４にあることおよび演算サブシステム２３０−１によって処理されるべく準備が整っていることを示すとしてよい。
【００３９】
一実施形態によると、バッファマネージャ２１６は、１以上のバッファ２０６−１−ｔが格納しているパケットの数が可変受信しきい値を超えた場合に、バッファ２０６−１−ｔから演算サブシステム２３０−１へと格納パケットを転送する。例えば、通信サブシステム２１０−１は、バッファマネージャ２１６およびバッファ２０６−１−ｔに結合されているウォーターマーク生成器２１７を含むとしてよい。ウォーターマーク生成器２１７は、可変受信しきい値を生成するとしてよい。可変受信しきい値は、バッファ２０６−１−ｔに関する所定のしきい値または所定のウォーターマークを含むとしてよい。可変受信しきい値は、少なくとも３つの入力値を持つ関数として算出、導出、または決定されるとしてよい。これら３つの入力値とは、（１）受信データレートパラメータ、（２）バッファサイズパラメータ、および（３）通信再開レイテンシパラメータである。受信データレートパラメータは、１以上の送受信機２０４−１−ｒの通信レートを表すとしてよい。バッファサイズパラメータは、１以上のバッファ２０６−１−ｔのサイズを表すとしてよい。通信再開レイテンシパラメータは、ネットワークリンクまたは通信サブシステム２１０−１が所定の電力状態を終了して高電力状態を開始するために必要な時間または所定の期間（例えば、１ｍｓ）を表すとしてよい。上記またはその他の通信パラメータを利用して、ウォーターマーク生成器２１７は、可変受信しきい値を、定期的、継続的、または、オンデマンドで生成し得るので、可変受信しきい値が、可変値である通信レート、レイテンシ、およびその他のネットワークトラフィック値を正確に反映することを確実にし得る。バッファマネージャ２１６は、ウォーターマーク生成器２１７から可変受信しきい値を受信して、バッファ２０６−１−ｔから現在のバッファ利用パラメータを受信して、現在のバッファ利用パラメータと可変受信しきい値とを比較して、比較結果に基づいてＤＭＡ転送を開始する。バッファマネージャ２１６は、例えば、バッファに格納されている情報パケットの数が可変受信しきい値を超えた場合に、ＤＭＡ転送を開始するとしてよい。
【００４０】
一実施形態によると、バッファマネージャ２１６は、バッファアンロードタイムアウト値が終了した場合に、バッファ２０６−１−ｔから演算サブシステム２３０−１へと格納されているパケットを転送するとしてよい。例えば、通信サブシステム２１０−１は、バッファマネージャ２１６に結合されているバッファタイマ２１８を含むとしてよい。バッファタイマ２１８は、所定の期間を計時または測定するべく利用されるハードウェアタイマまたはソフトウェアタイマであってよい。例えば、バッファタイマ２１８には、バッファアンロードタイムアウト値が設定またはロードされているとしてよい。バッファタイマ２１８は、バッファアンロードタイムアウト値が終了するまでのカウントダウンを監視または実行するとしてよい。バッファマネージャ２１６は、バッファアンロードタイムアウト値が終了した場合に、バッファ２０６−１−ｔから演算サブシステム２３０−１へと、格納されている情報パケットを転送するとしてよい。別のバッファ管理条件、例えば、可変受信しきい値と組み合わせて用いることで、バッファマネージャ２１６は、バッファ２０６−１−ｔが格納しているパケットの数が可変受信しきい値を超える前に、バッファアンロードタイムアウト値が終了すると、格納されているパケットを転送するとしてよい。
【００４１】
一実施形態によると、バッファマネージャ２１６は、バッファアンロードイベント信号を受信した場合に、バッファ２０６−１−ｔから演算サブシステム２３０−１へと格納されているパケットを転送するとしてよい。例えば、通信サブシステム２１０−１は、ノード１１０−１のさまざまな部分から、バッファマネージャ２１６がバッファ２０６−１−ｔから演算サブシステム２３０−１へとパケットを転送するに値するイベント信号をランダムに受信するとしてよい。例えば、演算サブシステム２３０−１が、メモリコントローラハブ（ＭＣＨ）および入出力（Ｉ／Ｏ）コントローラハブ（ＩＣＨ）を含むチップセットコンピュータアーキテクチャ、例えば、インテル（登録商標）コーポレーション社（米国カリフォルニア州サンタクララ）製の「ノースブリッジ」コントローラハブおよび「サウスブリッジ」コントローラハブを実装していると仮定する。さらに、ＭＣＨおよびＩＣＨは、ダイレクトメディアインターフェース（ＤＭＩ）および対応するリンクを用いて情報をやり取りすると仮定する。演算サブシステム２３０−１のほかの部分と同様に、ＤＭＩリンクは、高電力状態Ｌ０および低電力状態Ｌ１のようなさまざまな電力状態を取るとしてよい。ＤＭＩリンクが、他のデバイスの動作によって、低電力状態Ｌ１から高電力状態Ｌ０へと遷移すると、演算サブシステム２３０−１は、バッファマネージャ２１６にバッファアンロードイベント信号を送信するとしてよい。バッファアンロードイベント信号は、演算サブシステム２３０−１が既に高電力状態且つアクティブ状態にあるので、バッファマネージャ２１６はこの機を捉えて、演算サブシステム２３０−１の高電力状態を利用して、バッファ２０６−１−ｔからメモリ２３４へとパケットを転送し得ることを、バッファマネージャ２１６に対して、示すとしてよい。別のバッファ管理条件、例えば、可変受信しきい値と組み合わせて用いることで、バッファマネージャ２１６は、バッファ２０６−１−ｔが格納しているパケットの数が可変受信しきい値を超える前に、バッファアンロードイベント信号を受信すると、格納されているパケットを転送するとしてよい。
【００４２】
一実施形態によると、バッファマネージャ２１６は、通信アイドル期間パラメータが通信アイドル期間しきい値よりも小さい場合に、バッファ２０６−１−ｔから演算サブシステム２３０−１へと格納されているパケットを転送するバッファ管理ルールを実装するとしてよい。通信アイドル期間しきい値は、通信アイドル期間パラメータに関する所定のしきい値を含むとしてよい。通常、通信アイドル期間パラメータが大きいほど、通信リンク１４０−１、１４０−２を介して送信されるデータの通信レートは低くなり、この逆も成立する。通信アイドル期間しきい値は、設定可能な値で、バッファ２０６−１−ｔによってさらにレイテンシが大きくなることを必ずしも許容しない十分に高い通信レートを示すように通信アイドル期間パラメータが十分に低いタイミングを決定するべく設定されるとしてよい。バッファマネージャ２１６は、通信アイドル期間パラメータが通信アイドル期間しきい値よりも小さい場合は、バッファ２０６−１−ｔのうち１以上をディセーブルして、バッファ２０６−１−ｔが情報パケットを格納しないようにするとしてもよい。
【００４３】
一部の実施形態によると、バッファマネージャ２１６は、送受信機２０４−１−ｒの通信レートを変更するべく、コントローラ２０８に対して信号を発行するとしてよい。例えば、バッファマネージャ２１６は、ＦＩＦＯサイズおよび／またはエネルギー残量に基づいて、コントローラ２０８に、通信レートを変更するように指示するとしてよい。一実施形態によると、例えば、バッファマネージャ２１６は、バッファサイズパラメータ、エネルギー測定パラメータ、または両方のパラメータを受信または維持するとしてよい。バッファサイズパラメータは、ＦＩＦＯサイズまたはＦＩＦＯの残存容量を表すとしてよい。エネルギー測定パラメータは、電源２３２等の電源における残りのエネルギー量を表すとしてよい。バッファマネージャ２１６は、バッファサイズパラメータに基づいて送受信機２０４−１−ｒの通信レートを調整する要求をコントローラ２０８に送信するとしてよい。同様に、バッファマネージャ２１６は、電力管理コントローラ２３４からエネルギー測定パラメータを含む電力管理メッセージを受信して、エネルギー測定パラメータに基づいて送受信機２０４−１−ｒの通信レートを調整する要求を送信するとしてよい。
【００４４】
図３は、１以上の実施形態に係るロジックフロー３００を示す図である。ロジックフロー３００は、さまざまなシステムおよび／またはデバイスによって実行されるとしてよく、所与の一連の設計パラメータまたは性能制約の要件を満たすように、ハードウェア、ソフトウェア、および／またはそれらの任意の組み合わせとして実装されるとしてよい。例えば、ロジックフロー３００は、ロジックデバイス（例えば、プロセッサ）によって実装されるとしてもよいし、および／または、ロジックデバイスによって実行されるべきロジック（例えば、命令、データ、および／または、コード）であってもよい。本発明を限定するものではなく例示するものとして、図１および図２を参照しつつロジックフロー３００を説明する。
【００４５】
ロジックフロー３００は、広くはノード１１０−１−ｍのさまざまな動作を示しており、具体的には電力管理対象システム１２０および電力管理モジュール１３０の動作を示すとしてよい。図３に示すように、ロジックフロー３００のブロック３０２において、通信サブシステムおよび演算サブシステムの電力状態を、高電力状態から低電力状態へと変更するとしてよい。ロジックフロー３００のブロック３０４において、通信アイドル期間中において、演算アイドル期間を設けるべく、通信サブシステムのバッファで情報パケットを格納するとしてよい。ロジックフロー３００のブロック３０６において、バッファの可変受信しきい値を生成するとしてよい。ロジックフロー３００のブロック３０８において、可変受信しきい値に基づいて、バッファから演算サブシステムへと格納されている情報パケットを転送するとしてよい。実施形態はこれに限定されない。
【００４６】
一実施形態によると、ロジックフロー３００のブロック３０２において、通信サブシステムおよび演算サブシステムの電力状態を、高電力状態から低電力状態へと変更するとしてよい。例えば、電力管理コントローラ２３４は、演算状態モジュール２３２が生成する演算電力状態情報およびネットワーク状態モジュール２１２が生成する通信電力状態情報を含む電力管理メッセージ２４０−１−ｑを受信するとしてよい。電力管理コントローラ２３４は、インターフェース２１４−１、２１４−２および２１４−３を介して、通信バス２２０から電力管理メッセージ２４０−１−ｑを受信するとしてよい。電力管理コントローラ２３４は、電力管理メッセージ２４０−１−ｑを処理して、適切な通信電力状態（例えば、ＮＬ０、ＮＬ１、ＮＬ２等）および適切な演算電力状態（例えば、Ｓ０、Ｓ０ｉ１、Ｓ０ｉ２、Ｓ０ｉ３、Ｓ４等）を決定するとしてよい。電力管理コントローラ２３４は、通信電力状態および演算電力状態をそれぞれ、電力管理メッセージ２４０−１−ｑを用いて、通信バス２２０およびインターフェース２１４−１、２１４−２、２１４−３を介して、対応するサブシステム２１０−１、２１０−２へと送信するとしてよく、サブシステム２１０−１、２１０−２はこれに応じて、それぞれの電力状態を変更するとしてよい。
【００４７】
一実施形態によると、ロジックフロー３００のブロック３０４では、通信アイドル期間中において、演算アイドル期間を設けるべく、通信サブシステムのバッファで情報パケットを格納するとしてよい。通信アイドル期間は、例えば、通信サブシステム２１０−１が通信リンク１４０−１、１４０−２を介してネットワークから情報を受信しない（または、受信する予定がない）期間を意味するとしてよい。演算アイドル期間は、例えば、演算サブシステム２３０−１が通信サブシステム２１０−１から情報を受信しない（または受信する予定がない）期間を意味するとしてよい。例を挙げると、通信サブシステム２１０−１は、電力管理コントローラ２３４から送信される、通信サブシステム２１０−１の電力管理メッセージ２４０−１−ｑから、通信アイドル期間パラメータを受信するとしてよい。この場合、通信アイドル期間パラメータは、サブシステム２１０−１、２３０−１から受信する電力状態情報に基づいて、電力管理コントローラ２３４が算出するとしてよい。別の例を挙げると、通信サブシステム２１０−１は、ネットワーク状態モジュール２１２から通信アイドル期間パラメータを受信するとしてよい。どちらの場合であっても、通信サブシステム２１０−１は、通信アイドル期間パラメータによって定められる期間にわたって、通信電力状態が示す低電力状態になるとしてよい。低電力状態は、通信サブシステム２１０−１の全ての通信要素への電力を低減する直接的な方法で開始されるとしてもよいし、または、送受信機２０４−１−ｒの通信レートを変更する間接的な方法で開示されるとしてよい。通信サブシステム２１０−１が低電力状態になると、バッファマネージャ２１６は、通信アイドル期間パラメータによって定められる通信アイドル期間において、通信サブシステム２１０−１の１以上の受信バッファ２０６−１−ｔに情報パケットを格納するので、演算サブシステム２３０−１について演算アイドル期間が設けられ得る。場合によっては、通信サブシステム２１０−１が、演算サブシステム２３０−１に演算アイドル期間を伝えることによって、演算サブシステム２３０−１がこれに応じて、予測される演算アイドル時間に対応する期間にわたって低電力状態に切り替える等の動作を実行するとしてよい。
【００４８】
一実施形態によると、ロジックフロー３００のブロック３０６では、バッファの可変受信しきい値を生成するとしてよい。例えば、ウォーターマーク生成器２１７は、受信データレートパラメータ、バッファサイズパラメータ、および／または、通信再開レイテンシパラメータを受信して、これらのパラメータに基づいて受信バッファ２０６−１−ｔに対して可変受信しきい値（例えば、バッファウォーターマーク）を生成する。ウォーターマーク生成器２１７は、バッファマネージャ２１６に可変受信しきい値を出力するとしてよい。
【００４９】
一実施形態によると、ロジックフロー３００のブロック３０８では、可変受信しきい値に基づいて、バッファから演算サブシステムへと、格納されている情報パケットを転送するとしてよい。例えば、バッファマネージャ２１６は、ウォーターマーク生成器２１７から可変受信しきい値を受信して、当該可変受信しきい値をバッファ２０６−１−ｔに設定して、可変受信しきい値と受信バッファが２０６−１−ｔが格納している情報パケットの数とを周期的または非周期的に比較するとしてよい。受信バッファ２０６−１−ｔが格納している情報パケットの数が可変受信しきい値に到達または超過すると、バッファマネージャは、受信バッファ２０６−１−ｔの中身を、更なる処理を実行するべく、演算サブシステム２３０のメモリユニット２３４へとＤＭＡ転送によって転送するとしてよい。
【００５０】
図４は、１以上の実施形態に係るロジックフロー４００を示す図である。ロジックフロー４００は、さまざまなシステムおよび／またはデバイスによって実行されるとしてよく、所与の一連の設計パラメータまたは性能制約の要件を満たすように、ハードウェア、ソフトウェア、および／またはそれらの任意の組み合わせとして実装されるとしてよい。例えば、ロジックフロー４００は、ロジックデバイス（例えば、プロセッサ）によって実装されるとしてもよいし、および／または、ロジックデバイスによって実行されるべきロジック（例えば、命令、データ、および／または、コード）であってもよい。本発明を限定するものではなく例示するものとして、図１および図２を参照しつつロジックフロー４００を説明する。
【００５１】
ロジックフロー４００は、広くはノード１１０−１−ｍのさまざまな動作を示しており、具体的には電力管理対象システム１２０および電力管理モジュール１３０の動作を示すとしてよい。図４に示されているように、ロジックフロー４００は、ウォーターマーク生成器２１７に、受信データレートパラメータ、バッファサイズパラメータ、および／または、通信再開レイテンシパラメータに基づいて、可変受信しきい値（例えば、バッファウォーターマーク）を算出または再算出させて、バッファウォーターマークトリガを設定するブロック４０２から開始される。このようにすることで、バッファマネージャ２１６は、さまざまなリンク速度および遅延に対応できるようになる。バッファマネージャ２１６は、通信アイドル期間パラメータに基づいて、通信サブシステム２１０−１および／または演算サブシステム２３０−１が低電力状態に留まる期間を決定するとしてよい。通信アイドル期間パラメータが定める期間においてはトラフィックを受信することはないと予測されるので、サブシステム２１０−１、２３０−１の個別の素子に対するパワーゲーティングが低コストで実行できる十分な時間がある限りにおいて、サブシステム２１０−１、２３０−１をパワーゲーティングすることができる。例えば、無線送受信機として実装される送受信機２０４−１−ｒのような通信素子は通常、低電力状態に移行するためには、少なくとも８ｍｓの通信アイドル期間パラメータを必要とする。通信アイドル期間パラメータが８ｍｓ未満である場合、受信するトラフィックのデータレートが高くなる。この仮定に基づき、４０４において通信アイドル期間パラメータ（ＣＩＤＰ）が８ｍｓ未満に決定されると、ブロック４０６においてバッファ２０６−１−ｔをディセーブルして、バッファ２０６−１−ｔが生じさせ得る追加の遅延（レイテンシ）をなくす。一方、４０４において通信アイドル期間パラメータが８ｍｓ以上に決定されると、バッファマネージャ２１６は、ブロック４０８において、バッファ２０６−１−ｔの可変受信しきい値、および、バッファタイマ２１８のバッファアンロードタイムアウト値を設定するとしてよい。
【００５２】
バッファマネージャ２１６は、ブロック４１０において、送受信機２０４−１−ｒのうち１以上からパケットを受信し始めて、ブロック４１２において、バッファ２０６−１−ｔのうち１以上に受信したパケットをバッファリングし始めるとしてよい。バッファリングは、４１４においてバッファ管理条件のうち１以上が真になるまで継続される。一実施形態によると、例えば、４１４では少なくとも４つの条件について評価するとしてよい。条件には、（１）可変受信しきい値（ＶＲＴＶ）を超えているという第１の条件（条件１）が真であるか否か、（２）バッファアンロードタイムアウト値（ＢＵＴＶ）が終了しているという第２の条件（条件２）が真であるか否か、（３）バッファアンロードイベント信号（ＢＵＥＳ）を受信しているという第３の条件（条件３）が真であるか否か、および（４）イベントカウンタ（ＥＣ）を超えているという第４の条件（条件４）が真であるか否か、が含まれる。第３の条件（条件３）では、例えば、バッファマネージャ２１６は、ドライバから受信するさまざまなシステムイベント（例えば、送信割り込み）、または、ＩＣＨとＭＣＨとの間のＤＭＩリンクの状態を、受信バッファ２０６−１−ｔからのパケットのバッファリングの停止をトリガするための入力として利用するとしてよい。例えば、ＤＭＩが、他のデバイスの動作のためにＬ１を出てＬ０へと移行すると、通信サブシステム２１０−１には、ホストシステムが既にアクティブであるので、バッファマネージャ２１６はこの機会を利用して、可能であれば、バッファ２０６−１−ｔからバッファリングされたパケットを放出するべきである旨が通知される。第４の条件（条件４）については、参照番号４１４ａのページ外結合子で示すように、図５を参照してより詳細に説明する。
【００５３】
４１４において検証した４つの条件のうち１つが真である場合、バッファマネージャ２１６は、ブロック４１６においてバッファタイマ２１８（例えば、作動している場合）を無効にして、ブロック４１８においてＤＭＩリンクの低電力状態Ｌ１から高電力状態Ｌ０への移行をトリガする。バッファマネージャ２１６は、ブロック４２０において、ＤＭＡ転送によってバッファ２０６−１−ｔから演算サブシステム２３０−１のメモリユニット２３４へとパケットを転送することによってパケットを放出して、演算サブシステム２３０−１に対して割り込みを発行する。バッファマネージャ２１６は任意で、ブロック４２２において、ＦＩＦＯサイズおよび／または残りのエネルギー量に基づいて、受信パケットのレートを昇降させるべく、送受信機２０４−１−ｒの通信レートを変更するとしてもよい。
【００５４】
バッファマネージャ２１６は、４２４において、目覚めタイマの時間内にさらにパケットを受信したか否かを判断するとしてよい。バッファマネージャ２１６は、最終パケットのタイムスタンプを保持するとしてよい。タイムスタンプから現在時刻を引いた時間が目覚めタイマの時間未満であれば、ネットワークはビジー状態であると推測される。この場合、バッファマネージャ２１６は、ブロック４０２において動作を継続する。タイムスタンプから現在時刻を引いた時間が目覚めタイマの時間以上であれば、ネットワークはアイドル状態であると推測される。この場合、バッファマネージャ２１６は、ブロック４２６において、ＤＭＩリンクの高電力状態Ｌ０から低電力状態Ｌ１への移行をトリガして、ブロック４０２で動作を継続する。
【００５５】
再度４１４について説明すると、バッファマネージャ２１６が検証する条件の１つには、「フェイルセーフ」トリガと呼ばれる第４の条件（条件４）が含まれ得る。フェイルセーフトリガは、バッファタイマ２１８が終了するまでバッファ２０６−１−ｔ内に少数のパケット（または１つのパケット）が残っている状態が繰り返し発生しないように、設定されている。バッファマネージャ２１６は、バッファタイマ２１８が終了した時点においてバッファ２０６−１−ｔ内にあるパケットが１つの場合が何度発生するかを監視することによって、この条件を検出するとしてよい。例えば、この条件が所定の回数（例えば、３回）を超えて発生すれば、バッファマネージャ２１６は一時的に、再開条件が所定回数（当該回数は、設定可能）発生して、バッファ２０６−１−ｔをイネーブルまたは再イネーブルすべき旨が通知されるまで、バッファ２０６−１−ｔをディセーブルする。再開条件の例を挙げると、（１）所定期間（例えば、１０秒）が経過すればバッファ２０６−１−ｔをイネーブルするというようなタイマを利用する条件、（２）所定数（例えば、４０００個）のパケットを受信すればバッファ２０６−１−ｔをイネーブルするというようなパケットカウントを利用する条件が含まれ得る。第４の条件を検証するためのロジックフローの一例を、図５を参照しつつより詳細に説明する。
【００５６】
図５は、１以上の実施形態に係るロジックフロー５００を示す図である。ロジックフロー５００は、さまざまなシステムおよび／またはデバイスによって実行されるとしてよく、所与の一連の設計パラメータまたは性能制約の要件を満たすように、ハードウェア、ソフトウェア、および／またはそれらの任意の組み合わせとして実装されるとしてよい。例えば、ロジックフロー５００は、ロジックデバイス（例えば、プロセッサ）によって実装されるとしてもよいし、および／または、ロジックデバイスによって実行されるべきロジック（例えば、命令、データ、および／または、コード）であってもよい。本発明を限定するものではなく例示するものとして、図１および図２を参照しつつロジックフロー５００を説明する。
【００５７】
ロジックフロー５００は、広くはノード１１０−１−ｍのさまざまな動作を示しており、具体的には電力管理対象システム１２０および電力管理モジュール１３０の動作を示すとしてよい。ロジックフロー５００は、参照番号４１４ａのページ外結合子で示すように、図４を参照して説明したブロック４１４における第４の条件（条件４）の検証を説明するためのロジックフローの一例であってよい。第４の条件（条件４）を実装するべく、バッファマネージャ２１６は、特定のイベントが発生する回数（Ｘ）をカウントするイベントカウンタを実装するとしてよい。このようなイベントには、バッファアンロードタイムアウト値が終了した時点においてバッファ２０６−１−ｔ内にあるパケットの数が限られている（例えば、１つ）である場合が含まれるとしてよい。イベントカウンタがカウントしたイベントの発生回数（Ｘ）がイベントしきい値（Ｎ）を超えると（例えば、Ｎ＝３）、バッファマネージャ２１６は一時的に、再開条件が満たされるまで、バッファ２０６−１−ｔをディセーブルするとしてよい。
【００５８】
一実施形態によると、例えば、バッファマネージャ２１６は、バッファ５０６−１−ｔ内のパケット数（Ｍ）をカウントするパケットカウンタを実装して、バッファタイマ２１８にバッファディセーブルタイムアウト値（Ｂ）を設定するとしてよい。図５に示すように、５０２においてＭがパケットしきい値に等しくない場合（例えば、Ｍ＞１）、バッファマネージャ２１６は、ブロック５１４においてイベントカウンタをリセットして（例えば、Ｘ＝０）、ロジックフロー４００のブロック４１６に進む。しかし、５０２においてＭがパケットしきい値に等しい場合（例えば、Ｍ＝１）、バッファマネージャ２１６は、ブロック５０４においてイベントカウンタを１だけインクリメントする（例えば、Ｘ＝Ｘ＋１）。バッファマネージャ２１６は、５０６においてイベントカウンタ（Ｘ）がイベントしきい値（例えば、Ｎ＝３）以上であるか否かを判断するとしてよい。５０６において偽であれば、バッファマネージャ２１６はブロック５０２から再度処理を開始する。５０６において真であれば、バッファマネージャ２１６はブロック５０８においてバッファ２０６−１−ｔをディセーブルする。そしてバッファマネージャ２１６は、再開条件が発生したか否かを判断する。例えば、バッファタイマ２１８がバッファディセーブルタイムアウト値よりも大きいか否か（例えば、タイマ＞Ｌ秒）、または、バッファ２０６−１−ｔがディセーブルされた後に受信したパケット数がパケットしきい値を超えているか否か（例えば、Ｐ＞４０００）を判断する。再開条件のいずれも偽であれば、ブロック５０８に戻る。しかし、再開条件のうち１つが真であれば、バッファマネージャ２１６は、ブロック５１０においてバッファ２０６−１−ｔをイネーブルして、ロジックフロー４００のブロック４１６に戻る。尚、Ｍ、Ｎ、ＬおよびＰの値は設定可能であることに留意されたい。
【００５９】
上述したさまざまな実施形態は、多くの利用条件および用途において利点を持ち得る。一実施形態によると、例えば、バッファマネージャ２１６およびバッファ２０６−１−ｔによって、演算サブシステム２３０−１が低電力状態に留まることができるので、エネルギー節約効果を高め得る。一実施形態によると、例えば、通信がアクティブな状態において、約５００ミリワット（ｍＷ）から２ワット（Ｗ）の省電力効果を奏し得る。
【００６０】
実施形態は、製造物品として実装される場合もあってよい。製造物品とは、１以上の実施形態に係るさまざまな動作を実行するためのロジックおよび／またはデータを格納するコンピュータ読み出し可能媒体または格納媒体を含むとしてよい。コンピュータ読み出し可能媒体または格納媒体の例としては、これらに限定されないが、上述した例が含まれ得る。さまざまな実施形態によると、例えば、製造物品には、汎用プロセッサまたは特定用途向けプロセッサによる実行に適しているコンピュータプログラム命令を含む磁気ディスク、光ディスク、フラッシュメモリ、またはファームウェアが含まれ得る。しかし、実施形態はこれに限定されない。
【００６１】
実施形態は、ハードウェア素子、ソフトウェア素子、またはこれらの組み合わせを用いて実装されるとしてよい。ハードウェア素子の例を挙げると、ロジックデバイスの例として上述したものをいずれも含むとしてよく、さらにマイクロプロセッサ、回路、回路要素（例えば、トランジスタ、抵抗器、コンデンサ、インダクタ等）、集積回路、ロジックゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセット等を含むとしてよい。ソフトウェア素子の例を挙げると、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、機械プログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、関数、方法、プロシージャ、ソフトウェアインターフェース、アプリケーションプログラムインターフェース（ＡＰＩ）、命令群、演算コード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、またはこれらの任意の組み合わせを含むとしてよい。実施形態をハードウェア素子および／またはソフトウェア素子を用いて実装するか否かは、所望の演算レート、電力レベル、耐熱性、処理サイクルバジェット、入力データレート、出力データレート、メモリリソース、データバス速度、およびその他の設計制約または性能制約等、多くの要因に応じて、所与の実装要件を満たすように判断するとしてよい。
【００６２】
一部の実施形態を説明する際に、「結合」および「接続」という用語を用いている。これらの用語は必ずしも同義語として用いられているわけではない。例えば、一部の実施形態の説明では、「接続」および／または「結合」という用語を２つ以上の素子が物理的または電気的に直接接触していることを意味するものとして利用するとしてよい。しかし、「結合」という用語は、２つ以上の素子が直接接触していないが、互いに協働または交信し合うことも意味するとしてもよい。
【００６３】
米国特許法施行規則§１．７２（ｂ）は技術内容の本質および要点を簡潔に伝えることを目的として要約を記載するよう求めており、その要件を遵守するべく要約を記載する。要約は請求項の範囲または意味を解釈または限定するべく利用されないという理解の下、要約を記載する。上述した「発明を実施するための最良の形態」では、記載を簡潔にすることを目的として、複数の様々な特徴を１つの実施形態にまとめている。このような開示方法は、保護を請求する本発明の実施形態は各請求項に明示されているよりも多くの特徴を必要とするという意図を反映するものと解釈されるべきではない。むしろ本明細書に添付の請求の範囲が反映しているのは、開示された各実施形態が有するすべての特徴よりも少ない特徴に、発明の主題は存在するという理解である。このため、本明細書に添付の請求の範囲は「発明を実施するための最良の形態」に組み込まれ、請求項はそれぞれが別々の実施形態として独立している。本明細書に添付の請求の範囲において、「含む（ｉｎｃｌｕｄｉｎｇ）」および「において（ｉｎ  ｗｈｉｃｈ）」等の表現はそれぞれ、「備える（ｃｏｍｐｒｉｓｉｎｇ）」および「ここにおいて（ｗｈｅｒｅｉｎ）」と均等な平易な表現として用いる。また、「第１」、「第２」、「第３」等の用語は、区別のために用いているに過ぎず、対応する構成要素に対して数に関する要件を課すものではない。
【００６４】
構造上の特徴および／または方法に含まれる動作に特有の用語を用いて主題を説明しているが、本明細書に添付の請求の範囲において定義される主題は必ずしも上述した具体的な特徴または動作に限定されないと理解されたい。むしろ、上述した具体的な特徴および動作は、請求項を実装するための例として記載されている。請求し得る範囲の一例を以下に示す。
【図１】
2010539753.tif 000003
【図２】
2010539753.tif 000004
【図３】
2010539753.tif 000005
【図４】
2010539753.tif 000006
【図５】
2010539753.tif 000007
【国際調査報告】
2010539753.tif 000008
2010539753.tif 000009