"命令フェッチユニットおよびプリフェッチバッファを有するプロセッサ上での電力消費を低下させる方法であって、アドレッシング情報が対応付けられた分岐を検出する段階と、前記アドレッシング情報を命令プリフェッチバッファ内のエントリと比較して、前記命令プリフェッチバッファ内に実行可能な命令ループが存在するかを判定する段階と、前記比較の結果、命令ループが検出されると、命令フェッチユニットおよび/または前記命令フェッチユニットのコンポーネントの電力を落とす段階と、クリア条件が検出されるまで、前記命令プリフェッチバッファから直接的に命令をストリーミングする段階とを備える方法。前記アドレッシング情報は、カレントリニアインストラクションポインタCLIP、分岐オフセット、および/または分岐対象アドレスを含む請求項1に記載の方法。前記クリア条件は、誤予測された分岐を含む請求項1または2に記載の方法。前記命令ループは、入れ子状命令ループを含む請求項1から3のいずれか1項に記載の方法。前記命令フェッチユニットの電力を落とす段階は、命令キャッシュおよび/または命令デコードキャッシュの電力を落とす段階を有する請求項1から4のいずれか1項に記載の方法。前記命令フェッチユニットの電力を落とす段階は、分岐予測ユニット、次命令ポインタ、および/または命令変換ルックアサイドバッファITLBの電力を落とす段階を有する請求項1から5のいずれか1項に記載の方法。命令をストリーミングする段階は、前記命令プリフェッチバッファから命令を読み出し、前記命令をプロセッサパイプラインのデコード段階に供給する段階を有する請求項1から6のいずれか1項に記載の方法。プロセッサ上での電力消費を低下させる装置であって、アドレッシング情報が対応付けられた分岐を予測する命令フェッチユニットと、前記アドレッシング情報を命令プリフェッチバッファ内のエントリと比較して、前記命令プリフェッチバッファに実行可能な命令ループが存在するかを判定するループストリーム検出器ユニットとを備え、前記比較の結果、命令ループが検出されると、前記命令フェッチユニットおよび/または前記命令フェッチユニットのコンポーネントの電力を落とし、クリア条件が検出されるまで、前記命令プリフェッチバッファから直接的に命令をストリーミングする装置。前記アドレッシング情報は、カレントリニアインストラクションポインタCLIP、分岐オフセット、および/または分岐対象アドレスを含む請求項8に記載の装置。前記クリア条件は、誤予測された分岐を含む請求項8または9に記載の装置。前記命令ループは、入れ子状命令ループを含む請求項8から10のいずれか1項に記載の装置。前記命令フェッチユニットの電力を落とすとき、命令キャッシュおよび/または命令デコードキャッシュの電力を落とす請求項8から11のいずれか1項に記載の装置。前記命令フェッチユニットの電力を落とすとき、分岐予測ユニット、次命令ポインタ、および/または命令変換ルックアサイドバッファITLBの電力を落とす請求項8から12のいずれか1項に記載の装置。命令をストリーミングするとき、前記命令プリフェッチバッファから命令を読み出し、前記命令をプロセッサパイプラインのデコード段階に供給する請求項8から13のいずれか1項に記載の装置。ディスプレイ装置と、命令を記憶するメモリと、前記命令を処理するプロセッサとを備え、前記プロセッサが、アドレッシング情報が対応付けられた分岐を予測する命令フェッチユニットと、前記アドレッシング情報を命令プリフェッチバッファ内のエントリと比較して、前記命令プリフェッチバッファに実行可能な命令ループが存在するかを判定するループストリーム検出器ユニットとを有し、前記比較の結果、命令ループが検出されると、前記命令フェッチユニットおよび/または前記命令フェッチユニットのコンポーネントの電力を落とし、クリア条件が検出されるまで、前記命令プリフェッチバッファから直接的に命令をストリーミングするコンピュータシステム。前記アドレッシング情報は、カレントリニアインストラクションポインタCLIP、分岐オフセット、および/または分岐対象アドレスを含む請求項15に記載のコンピュータシステム。前記クリア条件は、誤予測された分岐を含む請求項15または16に記載のコンピュータシステム。前記命令ループは、入れ子状命令ループを含む請求項15から17のいずれか1項に記載のコンピュータシステム。前記命令フェッチユニットの電力を落とすとき、命令キャッシュおよび/または命令デコードキャッシュの電力を落とす請求項15から18のいずれか1項に記載のコンピュータシステム。前記命令フェッチユニットの電力を落とすとき、分岐予測ユニット、次命令ポインタ、よび/または命令変換ルックアサイドバッファITLBの電力を落とす請求項15から19のいずれか1項に記載のコンピュータシステム。命令をストリーミングするとき、前記命令プリフェッチバッファから命令を読み出し、前記命令をプロセッサパイプラインのデコード段階に供給する請求項15から20のいずれか1項に記載のコンピュータシステム。以下の記載では、説明の目的において、数多くの特定的な詳細を明記して、以下に記載される本発明の実施形態の完全な理解を促す。しかし、本発明の実施形態は、これらの特定的な詳細がなくても実施しうることは、当業者には明らかであろう。他の例では、本発明の実施形態の基礎にある原理が曖昧にならないように、周知の構造および装置は、ブロック図形式で示す。本発明の一実施形態は、CPUコアが入れ子状ループおよび/または入れ子状分岐等の繰り返し命令群を実行しているとき、CPUコアの動的電力を減らす。たとえば、分岐予測器により予測される命令群がプリフェッチバッファから検出されると、本発明の一実施形態は、フェッチユニットおよび関連する命令フェッチ回路もしくはその一部の電力を落として電力を節約する。その後、命令は、さらなる命令が必要になるまでは、プリフェッチバッファから直接的にストリーミングされ、さらなる命令が必要になったとき、命令フェッチユニットの電力が投入される。本発明の実施形態は、シングルスレッドおよびマルチスレッドの両方の環境で動作しうる。一実施形態においては、シングルスレッド環境では、プリフェッチバッファのエントリの全てが、シングルスレッドに割り当てられ、マルチスレッド環境では、プリフェッチバッファのエントリは、複数のスレッド間で均等に分割される。一つの特定的な実施形態は、プリフェッチバッファを有し、繰り返し命令群を検出するループストリーム検出器LSDを備える。ループストリーム検出器プリフェッチバッファは、マルチスレッドモードでは、エントリ6個分の深さスレッド-0に3個、スレッド-1に3個を持ち、シングルスレッドモードでは、エントリ3個分の深さを持ってよい。または、シングルスレッドモードで、6個のエントリの全てをシングルスレッドに用いてもよい。一実施形態では、シングルスレッドモードにおいて、プリフェッチバッファにおけるエントリの数は、3または6に設定することができる。一実施形態では、ループストリーム検出器プリフェッチバッファは、プリフェッチバッファに書き込まれる分岐対象バッファBTB予測分岐ごとに、カレントリニアインストラクションポインタCLIP、オフセット、およびプリフェッチバッファの分岐対象アドレス読み出しポインタ等の分岐情報を記憶する。BTBが分岐を予測すると、その分岐のCLIPおよびオフセットがプリフェッチバッファのエントリと比較され、この分岐がすでにプリフェッチバッファに存在するかが判定される。一致するものが存在する場合、フェッチユニット、または、その一部、たとえば、命令キャッシュが停止され、クリア条件たとえば、誤予測された分岐に遭遇するまでは、プリフェッチバッファから命令がストリーミングされる。プリフェッチバッファの命令ループ内にBTB予測分岐が存在する場合、これらもプリフェッチバッファからストリーミングされる。一実施形態では、ループストリーム検出器は、直接分岐および条件付分岐に対して起動され、挿入フローおよび戻り/呼び出し命令に対しては起動されない。入れ子状ループ、分岐、およびその他の繰り返し命令群がプリフェッチバッファから検出されたことに応じてフェッチユニットおよび/またはその他の回路の電力を落とすプロセッサアーキテクチャの一実施形態を図2に示す。図示されるように、この実施形態は、本明細書に記載される多様な機能を実行するループストリーム検出器ユニット200を備える。特に、ループストリーム検出器200は、分岐対象バッファBTBにより予測された分岐をプリフェッチバッファ201内のエントリと比較する比較回路202を有する。上記したように、本発明の一実施形態では、ループストリーム検出器200は、プリフェッチバッファ内から一致するものが検出されると、それに応答して、命令フェッチユニット210もしくはその一部の電力を落とす図2にオン/オフ線で示す。ループストリーム検出器からの信号に応答して、分岐予測ユニット211、次命令ポインタ212、命令変換ルックアサイドバッファITLB、命令キャッシュ214、および/またはプリデコードキャッシュ215等の命令フェッチユニット210の多様な周知のコンポーネントの電力を落としてよく、これにより、プリフェッチバッファ内に繰り返し命令群が検出された場合の電力量が大幅に節約される。以降は、命令はプリフェッチバッファから直接的に、命令パイプラインの残りの段階、たとえば限定としてではなく例示として挙げると、デコード段階220、実行段階230等にストリーミングされる。図3は、命令バッファ内から命令群たとえば、入れ子状ループが検出されたことに応答して、フェッチユニットもしくはその一部の電力を落とす方法の一実施形態を示す。本方法は、図2に示すプロセッサアーキテクチャ、または、別のプロセッサアーキテクチャを用いて実施してよい。301で、分岐命令が予測され、分岐命令のカレントリニアインストラクションポインタCLIP、分岐オフセット、および/または分岐対象アドレスが判別される。302で、CLIP、分岐オフセット、および/または分岐対象アドレスが、プリフェッチバッファ内のエントリと比較される。一実施形態では、比較は、入れ子状ループがプリフェッチバッファ内に記憶されているかを判定することを目的とする。一致するものが見つかったと303で判定されると、304で、命令フェッチユニットおよび/またはその各コンポーネントが停止され、305で、命令がプリフェッチバッファから直接的にストリーミングされる。命令は、306でクリア条件たとえば、誤予測された分岐が発生するまで、プリフェッチバッファからストリーミングし続けられる。図4は、本発明の一実施形態に係るループストリーム検出器が稼働される様子を示す。具体的には、図4では、命令パイプラインのIF2_L段階で予測器により分岐が予測されBTクリア、次命令ポインタIP多重化段階が、バブルにより予測された分岐対象アドレスにリダイレクトされる。段階ID1で、CLIP、分岐オフセット、および対象読み出しポインタ分岐対象を指定するポインタがプリフェッチバッファに記録される。CLIP、分岐オフセット、および/または対象読み出しポインタの一致が検出されたことに応答して、ループストリーム検出器が稼働され、一実施形態では、フェッチユニットがディセーブルされる。これは図4の下部に示されており、CLIPの比較および分岐オフセットの比較が行われ、ループストリーム検出器ロックが設定され、それによりフェッチユニットおよび/またはその一部の電力が落とされることが示されている。図5は、ループストリーム検出器を稼働するのに使用される複数のフィールドを有するループスストリーム検出器プリフェッチバッファの一実施形態の構成を示し、図7は、図5に示す例のループストリーム検出器について用いられる模範的な命令シーケンスを示す。便宜を図るべく、模範的な命令シーケンスを以下にも示す。LSDプリフェッチバッファ内で使用されるフィールドとしては、プリフェッチバッファエントリナンバー501この特定的な例では、0から5までの6個のPFBエントリが存在する、カレントリニアインストラクションポインタCLIP502、分岐オフセットフィールド503、対象読み出しポインタフィールド504、およびエントリ有効フィールド505がある。図に示されるように、カレントリニアインストラクションポインタCLIPが0x120hのところで分岐を有するループがフェッチユニットにより展開されてプリフェッチユニットに書き込まれるとき、書き込まれるCLIPおよび分岐オフセットは各PFBエントリの有効CLIPフィールドおよび分岐オフセットフィールドと比較される。比較に応じて、図に示すように、有効ビットがPFBエントリ3に設定される。さらに、PFBエントリ3にはリダイレクトPFB読み出しポインタが記録され、PFBからの命令のストリーミングがイネーブルされる。一実施形態では、以下の動作が実行される。1分岐が予測される。2CLIPおよびオフセットがPFBの既存のエントリと比較される。3PFBのLSD構造のエントリのうち1つ図の例では、エントリ0と一致すると、エントリ0のPFB対象読み出しPtrフィールドがLSD構造のエントリ3に複写され、PFBエントリの書き込みのときにエントリ有効ビットが設定される。一実施形態では、PFBエントリは、16バイトのキャッシュラインデータと、マクロ命令の終わりを示す1バイトあたり1個のプリデコードビットとを含む。4PFB読み出しポインタがエントリ3に到達すると、PFB対象読み出しポインタおよび有効ビットを含むエントリ3の情報の全てを読み出すべく、PFB読み出しポインタが用いられる。5有効ビットに基づいて、順番では次にあるPFBエントリ4を読み出すかわりに、対象読み出しポインタを用いるエントリ1にリダイレクトされる。6PFBエントリが、エントリ1、エントリ2、エントリ3の順に読み出される。7エントリ3で、PFB有効ビットが読み出され、PFBは対象読み出しポインタを用いて次のPFBエントリを読み出す。8段階6および7が繰り返される。一実施形態では、各PFBエントリが、PFBからストリーミングされる命令を含む完全な16バイトキャッシュラインを含む。キャッシュラインローデータrawdataとともに、プリデコードビットと、分岐命令の最終バイトを示すBTBマーカとが、PFBにさらに記憶される。プリデコードビットは、プリデコードキャッシュ215に記憶される。プリデコードキャッシュには、1バイト当たり1ビットのキャッシュラインが存在する。このビットは、マクロ命令の終わりを示す。BTBマーカも1バイト当たり1ビットで分岐命令の最終バイトを示す。PFBエントリに書き込まれる16バイトキャッシュラインには、最大16個までの命令が含まれうる。BTB予測分岐命令については、分岐対象の命令を含むキャッシュラインは、常に、PFBにおいて順番が次のエントリに書き込まれる。一実施形態では、4:1マルチプレクサ4:1MUXが設けられ、その出力がPFBエントリの読み出しに用いられる。MUXへの入力は、1通常、PFBエントリから命令をストリーミングし、エントリからすべての命令をストリーミングしたとき、値が進むPFB読み出しポインタ、2分岐命令がPFBエントリからストリーミングされるときの分岐対象PFB読み出しポインタ、3誤予測分岐等のクリア条件後のPFB読み出しポインタ常に、第1PFBエントリをポイントする、および4LSDの稼働によるPFB対象読み出しポインタ、である。図6は、PFBLSDの別の実施形態を示すが、LSDフィールドのエントリの数は、PFBエントリの数より小さく、電力/面積が削減される。具体的には、この例では、LSDフィールドには4個のエントリLSDエントリナンバー0から3があり、PFBフィールドには6個のエントリナンバー0から5がある。各PFBエントリにおけるヘッドポインタ値は、フェッチユニットの予測器により予測された分岐命令に対応付けられたLSDエントリをポイントするべく用いられる。たとえば、ヘッドポインタ0001は、LSDエントリナンバー0をポイントし、ヘッドポインタ0010は、LSDエントリナンバー1をポイントし、ヘッドポインタ0100はLSDエントリナンバー2をポイントし、ヘッドポインタ1000は、LSDエントリナンバー3をポイントする。ヘッドポインタ値0000は、PFBエントリが、LSDエントリをポイントするBTB予測分岐を有さないことを示す。したがって、1一致するCLIPおよび分岐オフセットが検出された場合、および、2一致するLSDエントリに、PFBエントリのいずれかから自身をポイントする対応する有効ヘッドポインタがある場合、プリフェッチバッファで一致が検出される。一実施形態では、PFBエントリのヘッドポインタのビット0は、論理和演算され、一致すると認識される。3一実施形態では、PFBのLSD構造のエントリのうち1つと一致する場合、一致するエントリのPFB対象読み出しPtrフィールドが、PFBのうちBTB予測を含む対応キャッシュラインが書き込まれているエントリに複写される。さらに、BTB予測分岐命令を有する現在書き込まれているPFBエントリに、LSD有効ビットが設定される。4PFB読み出しポインタがLSD有効ビットが設定されたエントリに到達すると、PFB読み出しポインタを用いて、PFB対象読み出しポインタおよびLSD有効ビットを含む全ての情報がエントリから読み出される。5LSD有効ビットに基づいて、順番では次にあるPFBエントリを読み出すかわりに、対象読み出しポインタを用いるエントリにリダイレクトされる。6次に、PFB有効ビットを含むエントリが読み出されるまで、PFBエントリが順番に読み出され、PFBは対象読み出しポインタを用いて次のPFBエントリを読み出す。7上記の動作5および6が繰り返される。本発明の一実施形態では、本発明の実施形態が実施されるプロセッサは、インテル登録商標コーポレーションにより設計されたAtom登録商標プロセッサ等の低電力プロセッサを含む。しかし、本発明の根底にある原理は、なんらかの特定的なプロセッサアーキテクチャに限定されない。たとえば、本発明の根底にある原理は、インテル社により設計されたコアi3、i5、および/またはi7プロセッサ等の多様なプロセッサアーキテクチャ上、または、スマートホン、および/またはその他の携帯型コンピュータ装置に用いられる多様な低電力システムオンチップSoCアーキテクチャ上で実施してよい。図8は本発明の実施形態を実施してよい模範的なコンピュータシステム800を示す。コンピュータシステム800は、情報を伝達するシステムバス820、およびバス820に接続され、情報を処理するプロセッサ810を備える。コンピュータシステム800は、バス820に接続され、情報およびプロセッサ810により実行される命令を記憶するランダムアクセスメモリRAMもしくはその他の動的記憶装置825本明細書では、メインメモリと呼ぶをさらに備える。メインメモリ825は、プロセッサ810により命令が実行されている間、一時的な変数もしくはその他の中間的な情報を記憶するのにも用いられうる。コンピュータシステム800は、バス820に接続され、プロセッサ810により使用される静的情報および命令を記憶する読み出し専用メモリROMおよび/またはその他の静的記憶装置826をさらに備えてよい。磁気ディスクもしくは光ディスク等のデータストレージ装置827およびそれに対応するドライブも、情報および命令を記憶するべくコンピュータシステム800に接続してよい。コンピュータシステム800は、I/Oインターフェース830を介して第2I/Oバス850に接続することもできる。ディスプレイ装置843、入力装置たとえば、英数字入力装置842および/またはカーソル制御装置841等の複数のI/O装置をI/Oバス850に接続してよい。通信装置840は、ネットワークを介してその他のコンピュータサーバまたはクライアントにアクセスし、多様な種類のデータをアップロード/ダウンロードするべく用いられる。通信装置840は、モデム、ネットワークインターフェースカード、または、イーサネット登録商標、トークンリング、もしくはその他の種類のネットワークに接続するために用いられるもの等のその他の周知のインターフェース装置等であってよい。図9は、本発明のいくつかの実施形態で用いられうる別の模範的なデータ処理システムを示すブロック図である。たとえば、データ処理システム900は、ハンドヘルドコンピュータ、携帯情報端末PDA、移動体電話、携帯ゲームシステム、携帯メディアプレーヤ、ならびに、移動体電話、メディアプレーヤ、および/もしくは、ゲームシステムであってよいタブレットもしくはハンドヘルドコンピューティング装置等であってよい。別の例では、データ処理システム900は、ネットワークコンピュータ、または、別の装置に組み込まれた処理装置であってよい。本発明の実施形態によると、データ処理システム900の模範的アーキテクチャを、上記の移動体装置に用いてよい。データ処理システム900は、集積回路上に1つ以上のマイクロプロセッサおよび/またはシステムを有してよい処理システム920を備える。処理システム920は、メモリ910、電源9251つ以上の電池を含む、オーディオ入出力940、ディスプレイコントローラおよびディスプレイ装置960、任意の入出力950、入力装置970、ならびに無線送受信機930に接続される。図9には示されないさらなるコンポーネントを、本発明の所定の実施形態においてデータ処理システム900の一部としてよく、本発明の所定の実施形態では、図9に示すよりも少ないコンポーネントを含めてよい。さらに、図9に示されない1つ以上のバスを用いて、当技術分野で周知の通りに、多様なコンポーネントを相互接続してよい。メモリ910は、データおよび/またはデータ処理システム900により実行されるプログラムを記憶してよい。オーディオ入出力940は、マイクおよび/またはスピーカを含んでよく、それにより、スピーカおよびマイクを介して、たとえば、音楽の再生、および/または、電話機能の提供を行ってよい。ディスプレイコントローラおよびディスプレイ装置960は、グラフィカルユーザインターフェースGUIを含んでよい。無線たとえば、RF送受信機930たとえば、ワイファイ送受信機、赤外線送受信機、ブルートゥース登録商標送受信機、無線形態電話送受信機等は、その他のデータ処理システムと通信するべく用いてよい。1つ以上の入力装置970は、ユーザがシステムに入力を行えるようにする。これらの入力装置は、キーパッド、キーボード、タッチパネル、マルチタッチパネル等であってよい。任意のその他の入出力950は、ドックのコネクタであってよい。本発明のその他の実施形態は、携帯電話、ページャたとえば、ソフトウェアがマイクロチップに埋め込まれている、ハンドヘルドコンピューティング装置たとえば、携帯情報端末、スマートホン、および/または、プッシュホン式電話上で実施してよい。しかし、本発明の根底にある原理は、なんらかの特定の種類の通信装置もしくは通信媒体に限定されないことは理解されるべきである。本発明の実施形態は、上記した多様な段階を含みうる。段階は、汎用もしくは専用のプロセッサに実行されるべく用いられてよい機械可読命令として実施してよい。または、これらの段階は、段階を実行するためのハードワイヤードロジックを含む特定のハードウェアコンポーネントにより、または、プログラムされたコンピュータコンポーネントおよびカスタマイズしたハードウェアコンポーネントの任意の組み合わせにより、実行してよい。本発明の要素は、処理を実行するようコンピュータもしくはその他の電子装置をプログラムするべく用いてよい命令を記憶した機械可読媒体であってよいコンピュータプログラムプロダクトとして提供してよい。機械可読媒体は、フロッピー登録商標ディスケット、光ディスク、CD-ROM、光磁気ディスク、ROM,RAM、EPROM、EEPROM、磁気もしくは光カード、伝搬媒体、もしくは、電子的命令を記憶するのに適したその他の種類の媒体/機械可読媒体であってよいが、これらに限定されない。たとえば、本発明は、コンピュータプログラムプロダクトとしてダウンロードしてよく、プログラムは、遠隔コンピュータたとえば、サーバから要求元コンピュータたとえば、クライアントに、通信リンクたとえば、モデムもしくはネットワーク接続を介して、搬送波もしくはその他の伝搬媒体に重畳されたデータ信号として転送される。詳細な記載の全体を通して、説明の目的において、数多くの特定的な詳細を明記して、本発明を完全に理解できるようにした。しかし、これらの特定的な詳細のいくつかが無くても、本発明を実施しうることは当業者には明らかであろう。所定の例では、本発明の主題が曖昧にならないように、周知の構造および機能については、詳細に記載しなかった。したがって、本発明の範囲および趣旨は、以下の特許請求の範囲によって判断されるべきである。"