(57)【要約】  本発明は、監視される性能指標に応答して集積回路の性能を制御するための、方法および回路構成に関し、集積回路の電力供給は、前記性能指標に基づいて制御される。制御された電力供給の雑音レベルと前記集積回路内で発生されたクロック周波数の少なくとも一方が監視され、チェック結果が所定の範囲内にない場合、それぞれの制御信号が制御機能にフィードバックされる。それによって、プロセス変動への簡単で容易に拡張可能な自動適応が達成されることができる。
2008503138.tif 000002
【特許請求の範囲】
【請求項１】
監視される性能指標に応答して集積回路の性能を制御するための回路構成であって、
ａ）前記性能指標を受け取り、前記性能指標に基づいて前記集積回路の電力供給を制御するための性能制御手段と、
ｂ）前記制御された電力供給の少なくとも雑音レベルをチェックし、チェック結果が所定の範囲内にない場合、前記性能制御手段にそれぞれの制御信号を通知するための監視手段であって、電力供給電圧上の前記雑音が所定の最大値を超過したかどうかをチェックするための電力供給雑音監視手段を備える監視手段と、を備える、回路構成。
【請求項２】
前記性能制御手段が、前記電力供給を制御するための電圧制御手段に接続される、請求項１に記載の回路構成。
【請求項３】
前記電圧制御手段が、可変抵抗手段と電圧レギュレータ手段の少なくとも一方を備える、請求項２に記載の回路構成。
【請求項４】
前記監視手段が、クロック・パルスを所定遅延のクロック・パルスと同期した基準パルスと比較するためのクロック比較手段をさらに備える、前記請求項のいずれか１項に記載の回路構成。
【請求項５】
前記監視手段が、最悪ケース経路遅延に関連する所定の時間間隔だけ前記クロック・パルスを遅延させるための遅延手段をさらに備える、請求項４に記載の回路構成。
【請求項６】
前記性能制御手段が、現在のシステム状態についての情報を保存し、前記受け取った性能指標に対応する状態への遷移を制御する有限ステートマシンを備える、前記請求項のいずれか１項に記載の回路構成。
【請求項７】
前記性能制御手段が、前記それぞれの制御信号の受け取りに応答して状態遷移を抑制するための抑制手段を備える、請求項６に記載の回路構成。
【請求項８】
前記性能制御手段が、公称電力供給で動作し、前記監視手段が、前記制御された電力供給で動作する、前記請求項のいずれか１項に記載の回路構成。
【請求項９】
前記それぞれの制御信号のレベルをシフトするため、およびレベル・シフトされた制御信号を前記性能監視手段に供給するためのシフティング手段をさらに備える、請求項８に記載の回路構成。
【請求項１０】
前記性能制御手段が、前記集積回路のバック・バイアス電圧を制御するように構成される、前記請求項のいずれか１項に記載の回路構成。
【請求項１１】
少なくとも２つの絶縁回路領域を有し、前記性能制御手段が、前記少なくとも２つの絶縁回路領域の処理パイプラインの少なくとも１つのレジスタ手段をスキップするためのバイパス手段を制御するように構成される、請求項１から１０のいずれか１項に記載の回路構成。
【請求項１２】
少なくとも２つの絶縁回路領域を有し、前記可変抵抗手段と、調整されたクロック信号を前記絶縁回路領域に供給するためのクロック発生器手段とに接続されるシフト・レジスタ手段をさらに備え、前記シフト・レジスタ手段が、前記性能制御手段から供給される２進制御信号に基づいて制御され、前記２進制御信号が、前記集積回路の性能を引き上げるまたは引き下げるために、前記シフト・レジスタ手段に移される２進値を定義する、請求項３に記載の回路構成。
【請求項１３】
前記シフト・レジスタ手段のビット値が、前記クロック発生器手段の遅延セクションを個別にバイパスするために使用される、請求項１２に記載の回路構成。
【請求項１４】
前記性能制御手段が、複数のプロファイル・モードの中から所定のプロファイル・モードを選択するように構成され、各プロファイル・モードが、前記集積回路の１組の性能パラメータの間の所定の関係を定義する、請求項１〜１３のいずれか１項に記載の回路構成。
【請求項１５】
前記性能パラメータは、クロック周波数と、電力供給電圧と、閾値電圧とを備える、請求項１４に記載の回路構成。
【請求項１６】
前記所定のプロファイル・モードおよび前記性能パラメータが、検索テーブル内に保存される、請求項１４または１５に記載の回路構成。
【請求項１７】
前記複数のプロファイル・モードが、前記電力供給電圧と前記クロック周波数が一定の関係に維持されるプロファイル・モードを備える、請求項１４から１６のいずれか１項に記載の回路構成。
【請求項１８】
監視される性能指標に応答して集積回路の性能を制御するための方法であって、
ａ）前記性能指標に基づいて前記集積回路の電力供給を制御するステップと、
ｂ）前記制御された電力供給の少なくとも雑音レベルをチェックするステップと、
ｃ）チェック結果が所定の範囲内にない場合、前記制御ステップにそれぞれの制御信号をフィードバックするステップと、を備える、方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、監視される性能指標に応答して集積回路（ＩＣ）の性能を制御するための、回路構成および方法に関する。一例として、本発明は、電気的に絶縁された領域に細分され、各アイランドの供給電圧、クロック周波数などのパラメータが個別に制御され得る、集積回路に関することができる。
【背景技術】
【０００２】
新しいディープ・サブミクロン技術での回路およびシステムの実装は、システム性能をうまく実現可能にするために、新しいアイデアを必要とする。例えば１００ｎｍ技術またはそれを超える技術で実装されたシステム・オン・チップ（ＳｏＣ）の性能が、過剰なトランジスタ・リーク、局所的および大域的プロセス変動の影響、ならびに縮小された雑音余裕によって、大幅に妨げられ得ることは明らかである。したがって、この問題を電力供給および動作周波数などの設計パラメータを制限された性能条件下にリアルタイムに規制することによって解決する戦略が、開発され、使用されている。そのようなアプローチの目的は、速度および電力の両方に関して準最適な方法で一定レベルの性能が保証されるように、チップ、例えばＩＣまたはＳｏＣの絶縁領域を適応させることである。
【０００３】
図１は、従来の性能制御方式の処理ステップを示す概略フロー図であり、図１の左側部分は、制御方式のソフトウェア部分ＳＷに対応し、図１の右側部分は、制御方式のハードウェア部分ＨＷに対応する。フロー図は、システムが電力管理のためにどのように実施され得るかのアイデアを与える。（ソフトウェア）アプリケーションは、異なるセクションのために必要とされるハードウェア性能に関する情報を生成するように、または命令さえも生成するようにプロファイル（ｐｒｏｆｉｌｅ）される。この情報は、アプリケーションに含まれるまたは組み込まれる、性能指標を生成するために使用される。ハードウェアは、供給電圧およびクロック周波数に関して最適の動作条件を決定するために、これらの性能指標を取り出して使用する。より正確には、ステップ１０において、アプリケーションは、通常どおり、標準的なコンパイラによってコンパイルされる。次にステップ１１において、アプリケーションの挙動および性能要件に関する情報を与える、アプリケーションの実行プロファイルを取り出すために、標準的なプロファイラ（ｐｒｏｆｉｌｅｒ）が使用される。ステップ１１で取得された実行プロファイルに基づいて、ステップ１２において、性能指標が取り出されることができる。したがって、ステップ１２は、使用されるハードウェアに依存する。ステップ１４において、増補アプリケーションを取得するために、性能指標がアプリケーションに組み込まれる。次にハードウェア・セクションＨＷのステップ２０において、指標がアプリケーションから取り出される。この取り出しは、ステップ１４に依存する。次にステップ２１ａにおいて、アプリケーションが実行され、ステップ２１ｂにおいて、性能が指標に応じて調整される。
【０００４】
適応電圧供給が、単一チップ上の異なる機能領域について使用されるために提案されている。このようにして、それらの領域の供給電圧は、個別に最適化され、それによって、さらなる性能最適化を可能にする。一例として、Ｎｏｗｋａ他は、「Ａ  ３２−ｂｉｔ  ＰｏｗｅｒＰＣ  ｓｙｓｔｅｍ−ｏｎ−ａ−ｃｈｉｐ  ｗｉｔｈ  ｓｕｐｐｏｒｔ  ｆｏｒ  ｄｙｎａｍｉｃ  ｖｏｌｔａｇｅ  ｓｃａｌｉｎｇ  ａｎｄ  ｄｙｎａｍｉｃ  ｆｒｅｑｕｅｎｃｙ  ｓｃａｌｉｎｇ」、ＩＥＥＥ  Ｊｏｕｒｎａｌ  ｏｆ  Ｓｏｌｉｄ−Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ、２００２年１１月、Ｖｏｌ．３７、Ｎｏ．１１、１４４１〜１４４７ページにおいて、動的に変化する性能要求に適応するために、動的電圧スケーリングとオン・ザ・フライ周波数スケーリングとを使用する、システム・オン・チップ・プロセッサについて説明している。ＳｏＣは、電力消費をアプリケーションの要件に動的に合致させるために、有効電力削減技法を使用する。有効電力消費は、リソース要求が低い場合、動的電圧スケーリング、動的周波数スケーリング、ユニットおよびレジスタ・レベルのファンクショナル・クロック・ゲーティングの使用を通して削減される。このＳｏＣにおける動的電圧スケーリングをサポートするため、電力配分が４つの別個の電力ドメインに分割され、そのうちの２つのドメインが電圧制御される。
【０００５】
加えて、Ｍｉｙａｚａｋｉ他は、「Ａｎ  ａｕｔｏｎｏｍｏｕｓ  ｄｅｃｅｎｔｒａｌｉｚｅｄ  ｌｏｗ−ｐｏｗｅｒ  ｓｙｓｔｅｍ  ｗｉｔｈ  ａｄａｐｔｉｖｅ−ｕｎｉｖｅｒｓａｌ  ｃｏｎｔｒｏｌ  ｆｏｒ  ａ  ｃｈｉｐ  ｍｕｌｔｉ−ｐｒｏｃｅｓｓｏｒ」、ＩＥＥＥ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｃｉｒｃｕｉｔｓ  Ｃｏｎｆｅｒｅｎｃｅ、Ｄｉｇｅｓｔ  ｏｆ  Ｔｅｃｈｎｉｃａｌ  Ｐａｐｅｒｓ、米国、サンフランシスコ、２００３年２月８〜１３日、１０８〜１０９ページにおいて、自律的な非集中システムについて説明しており、各プロセッサは、指定された性能を維持しながら、最小電力消費で動作する。電力供給およびクロックは、グローバル・ルーティング・ライン（ｇｌｏｂａｌ−ｒｏｕｔｉｎｇ  ｌｉｎｅ）によって各モジュールに供給され、各モジュールは、電圧レギュレータと、クロック分周器とを備える。各モジュール内の自己命令検索テーブル（ｓｅｌｆ−ｉｎｓｔｒｕｃｔｅｄ  ｌｏｏｋ−ｕｐ  ｔａｂｌｅ）が、それぞれのモジュールに適用される電圧および周波数を決定する。複合組み込み自己試験ユニット（ｃｏｍｐｏｕｎｄ  ｂｕｉｌｔ−ｉｎ  ｓｅｌｆ  ｔｅｓｔ  ｕｎｉｔ）が、初期チップ試験フェーズの間に各モジュールの性能を測定し、そのデータを記憶および使用のために各検索テーブルに送る。
【０００６】
しかし、上記のシステムは、面積オーバヘッドおよび処理要件を増大させる、精巧な適応回路および電力変換回路を必要とする。一般に、上記の性能調整アプローチを実施する知られた方式は、必要とされる回路および監視に関して、複雑で規模的に扱いにくくなる。
【発明の開示】
【発明が解決しようとする課題】
【０００７】
したがって、本発明の目的は、集積回路の電気的に絶縁されたアイランドに、電力供給の独立制御用の、低い面積オーバヘッドを有する簡単な適応制御方式を提供することである。
【課題を解決するための手段】
【０００８】
上記の目的は、請求項１に記載の回路構成と、請求項１９に記載の制御方法とによって達成される。
【０００９】
したがって、性能制御のための非常に簡単で容易に拡張可能な自動制御方式が提供され、プロセス変動は、関連する性能パラメータの実施に基づいて適応される。提案されるシステムが、集積回路の個々の絶縁領域に非集中方式で提供される場合、個々の電力供給を調整するための可変抵抗手段の使用は、ＤＣ−ＤＣ変換器およびその他の専用回路を必要とする知られたソリューションに比べて、低い面積オーバヘッドという利点を提供し、簡単なデジタル制御および速い過渡応答を可能にする。さらに、ＤＣ−ＤＣ変換器の場合のように、付加的な外部構成要素は必要とされない。したがって、性能の所望状態への遷移は、電力供給を制御することによって、例えば供給電圧を変化させることによって、達成されることができる。
【００１０】
監視手段は、電力供給電圧上の雑音が所定の最大値を超過したかどうかをチェックするための、電力供給雑音監視手段を備えることができる。加えてまたは代替として、監視手段は、クロック・パルスを所定遅延のクロック・パルスと同期した基準パルスと比較するための、クロック比較手段を備えることができる。具体的には、監視手段はさらに、最悪ケース経路遅延に関連する所定の時間間隔だけ基準パルスを遅延させるための、遅延手段を備えることができる。したがって、監視手段は、電力供給が望まれるように制御され得ることを確実にするように働く。
【００１１】
さらに、性能制御手段は、現在のシステム状態についての情報を保存し、受け取った性能指標に対応する状態への遷移を制御する、有限ステートマシンを備えることができる。それによって、制御システムの簡単な構造および統合が、提供されることができる。具体的な一例として、性能制御手段は、それぞれの制御信号の受け取りに応答して状態遷移を抑制するための、抑制手段を備えることができる。この方策は、電力供給の（さらなる）変化が、集積回路の性能にとって有害な場合、停止または抑制されることを保証する。
【００１２】
性能制御手段は、公称電力供給で動作することができ、一方、監視手段は、制御された電力供給で動作することができる。レベルの誤解釈を回避するため、シフティング手段が、それぞれの制御信号のレベルをシフトし、レベル・シフトされた制御信号を適切に適応されたレベルで性能監視手段に供給するように、提供されることができる。
【００１３】
追加的な方策として、性能制御手段は、集積回路のバック・バイアス電圧を制御するように構成されることができる。それによって、制御システムの柔軟性が、さらに高められることができる。特に、絶縁回路領域の性能は、トランジスタのバルク端子に適切にバイアスをかけて、閾値電圧を変化させることによって、個別に制御されることができる。
【００１４】
調整された電力供給は、少なくとも２つの電気的に絶縁された回路領域に供給されるクロックを個別に調整するために、クロック発生手段に送られることができる。したがって、クロック発生手段は、電力供給がローカルな制御手段によって制御される、自律的アイランド内に配置されることができる。
【００１５】
さらに、性能制御手段は、少なくとも２つの絶縁回路領域の処理パイプラインの少なくとも１つのレジスタ手段をスキップするための、バイパス手段を制御するように構成されることができる。したがって、集積回路の性能を制御する別のまたは追加の方法が、効率的な構成を達成するために提供されることができる。
【００１６】
可変抵抗手段は、複数のトランジスタ・セグメントに分割されるトランジスタ手段を備えることができ、各セグメントまたはセグメントのサブセットは、性能制御手段によって設定される専用制御レジスタのビットに接続される。したがって、抵抗値の個別デジタル制御が導入されることができ、制御レジスタは、適応供給電圧制御を可能にするために、実行時に容易にプログラムまたは再プログラムされることができる。さらに、制御シフト・レジスタ手段は、調整されたクロック信号を絶縁回路領域に供給するためのクロック発生器手段に接続され、シフト・レジスタ手段は、ローカルな制御手段から供給される２進制御信号に基づいて制御されることができ、２進制御信号は、集積回路の性能を引き上げるまたは引き下げるために、シフト・レジスタ手段に移される少なくとも１つの２進値を定義する。このソリューションは、少なくとも１つの簡単な２進制御方式または信号に基づいて集積回路の性能が容易に制御され得るという利点を提供する。特に、シフト・レジスタ手段のビット値は、クロック発生器手段の遅延セクションを個別にバイパスするために使用されることができる。したがって、クロック発生器手段の周波数は、シフト・レジスタ手段に移されるビット値に基づいて、直接制御されることができる。
【００１７】
別の選択として、性能制御手段は、複数のプロファイル・モード（ｐｒｏｆｉｌｅ  ｍｏｄｅ）の中から所定のプロファイル・モードを選択するように構成されることができ、各プロファイル・モードは、絶縁回路領域の１組の性能パラメータの間の所定の関係を定義する。したがって、選択されたプロファイル・モードは、指定された性能を満たすために、物理変数または性能パラメータが継続的に変更されることを保証する。特に、パラメータのうちの特定のパラメータは、他のパラメータと結び付けられることができ、それによって、個々のパラメータの間の結合（ｃｏｕｐｌｉｎｇ）を提供する。特に、性能パラメータは、クロック周波数と、電力供給電圧と、閾値電圧とを備えることができる。所定のプロファイル・モードおよび性能パラメータは、検索テーブル内に保存されることができる。さらに、複数のプロファイル・モードは、電力供給電圧とクロック周波数が一定の関係に維持されるプロファイル・モードを備えることができる。
【００１８】
さらなる有利な変更は、従属請求項において定義される。
【００１９】
以下で、本発明は、添付の図面を参照しながら、好ましい実施形態に基づいて説明される。
【発明を実施するための最良の形態】
【００２０】
好ましい実施形態が、異なるアイランドに区分けされ得るＩＣに基づいて、今から説明される。各アイランドは、トリプル・ウェルＣＭＯＳ（相補型金属酸化膜半導体）技術の絶縁された第３のウェル内に含まれることができる。トリプル・ウェルＣＭＯＳ技術は、第１のタイプのウェル、例えばＰウェルが、第２のタイプのウェル、例えばＮウェルの内部に配置されることを可能にし、第１のタイプの単純なウェル、第２のタイプの単純なウェル、および第２のタイプの深いウェルとその内部の第１のタイプのウェルとからなる第３のタイプのウェルという、３種類のウェル構造をもたらす。第３のタイプのウェルは、その内部の回路を、第２のタイプの深いウェルと基板の間の逆方向バイアスによって、チップ上のその他のセクションから絶縁するのに役立つ。いくつかのパラメータに応じて、各ウェルは制御されることができ、その動作状態は変更されることができる。チップの残りの部分も、その他のパラメータに応じて、同様に制御されることができる。各アイランドは、１つまたは複数の実用値（ｕｔｉｌｉｔｙ  ｖａｌｕｅ）で動作し、第１のアイランドの少なくとも１つの実用値は、第２のアイランドの対応する実用値と異なることができる。
【００２１】
図２は、第１の好ましい実施形態による性能制御回路構成の概略回路図を示しており、ＣＭＯＳ技術または別の集積技術による回路が、ＩＣまたはＩＣの専用アイランド上に提供され、グローバルまたは公称供給電圧ＶＤＤＭＡＸを供給する電源に、線形可変抵抗（ＬＶＲ）３２を介して接続される。集積回路には、クロック発生ユニット（ＣＧＵ）３０によってチップ上でローカルに発生されるクロックＣＬＫのクロック周波数を監視するための、監視機能またはユニットＭと、ＰＭＵ２０に供給される性能指標ＰＩに基づいて供給電圧ＶＤＤを適切に変更することによって、ＩＣまたは専用アイランドの性能をローカルに制御または調整するための、ローカル電力管理ユニット（ＰＭＵ）２０とが設けられる。
【００２２】
第１の好ましい実施形態によれば、供給電圧およびクロック周波数の制御は、ＩＣ、専用アイランド、または専用アイランドのクループについて実行される。符号化もしくは非符号化２進制御ワード、メモリもしくは検索テーブルをアドレスするための２進アドレス、またはアナログ信号など任意の形式をとることができるＰＩが、ＰＭＵ２０に提供される。ＰＭＵ２０は、単純に有限ステートマシン（ＦＳＭ）からなることができ、ＦＳＭは、現在のシステム状態を知りまたは保存し、かつ供給されたＰＩに対応し、関連し、または割り当てられた状態への遷移を規制または制御する。状態遷移は、ＬＶＲ３２を用いて供給電圧ＶＤＤを階段状にまたはその他の任意の変化形態で変化させることによって起こる。制御された供給電圧ＶＤＤは、ＣＧＵ３０にも供給され、次にＣＧＵ３０も、システムのクロック周波数をしかるべく変化させる。
【００２３】
供給電圧の変化がＩＣまたは専用アイランドに有害な影響をもたないことを確実にするため、２つの制御機能が、監視ユニットＭ内に制御ループとして提供される。第１の制御ループは、雑音制御に責任をもち、少なくとも１つの電力供給雑音モニタ（ＰＳＮＭ）６６を備え、ＰＳＮＭ６６は、ＬＶＲ３２から得られる制御された供給電圧ＶＤＤ上の雑音が所定の最大許容値を超過したかどうかをチェックするために働く。チェック結果は、それぞれの雑音制御信号Ｂ上のパルスを用いて、例えば２進値として、通知される。図２の例では、これは、デジタル雑音レベル信号をＰＳＮＭ６６（またはそれの並列ステージ）で発生させ、この雑音レベル信号を、制限および／またはパルス整形および／またはその他の信号形成機能を有する少なくとも１つの信号形成ユニット６２を介して、雑音レベル信号を外部的に供給される許容可能最大雑音を表す最大雑音指数（ＭＩＮＩ）と比較する雑音比較ユニット６４に供給することによって達成される。比較結果に基づいて、論理ハイ・レベル「１」のパルスが、または反対のパルスが、過剰雑音の存在を表すために、雑音比較ユニット６４の出力において雑音制御信号Ｂとして生成され、またはこの逆のことが行われる。
【００２４】
第２の制御ループは、クロック制御に責任をもち、ＣＧＵ３０によって供給される制御されたクロック周波数がシステムの正しい性能または動作を可能にできるほど十分遅いかどうかをチェックするように適応される。これは、クロック・ハイ・パルスを、システム内の最悪経路遅延の半分に等しい遅延を有するクロック・パルスと同期した基準パルスと比較する、クロック比較機能を用いて達成される。図２の例では、この基準パルスは、ＣＧＵ３０のクロックＣＬＫを、複数のバッファまたは増幅器回路７１とインバータ回路７３とからなる遅延経路に供給することによって生成される。遅延され反転されたクロック信号は、その後、論理ＡＮＤゲート７４の一方の端子に与えられ、他方の端子は、変更されていないクロックＣＬＫを受け取る。ＡＮＤゲート７４の出力は、変更されたクロック信号と変更されていないクロック信号のオーバラップ部分に一致するパルス長を有する基準パルスに対応し、したがって、遅延経路によって導入される遅延時間に対応する。クロック比較は、基準パルスが、一方の端子に与えられ、変更されていないクロックＣＬＫが、遅延マッチング・ユニットとして働く第２のＡＮＤゲート７２を介して、他方の端子に与えられる、単純なＸＯＲゲート７６を提供することによって達成されることができる。ＸＯＲゲート７６の出力信号は、２つの入力信号が同じ論理レベルを有する場合に、ハイ・レベルにある。後続の低域通過フィルタ７８は、スプリアス・パルスを除去するために使用される。したがって、パルスＡは、ＣＧＵ３０によって生成されたクロック周波数が、最悪経路遅延に照らして高すぎる場合に、生成される。
【００２５】
パルスまたは制御信号ＡおよびＢは、供給電圧ＶＤＤのさらなる変化動作を停止または抑制するために、電圧レベル調整のための電圧シフティング・ユニット７５と、制御信号ＡおよびＢの両方がアクティブである場合、そのうちの一方だけを送り出すために使用され、代替としてＯＲゲートによって置き換えられ得る相互排除ユニット７９とを介して、ＰＭＵ２０に供給される。１つまたは複数の電圧シフティング・ユニット７５が、ＰＭＵ２０は（左上の点線フレームによって表されるように）公称供給電圧ＶＤＤＭＡＸで動作し、回路の残りの部分は（他の点線フレームによって表されるように）制御された供給電圧ＶＤＤで動作するという事実のために必要とされる。
【００２６】
図３は、第２の好ましい実施形態による性能制御回路構成の概略回路図を示しており、バック・バイアシングまたはボディ・バイアシングを制御するための制御機能の提供を除いて、第１の好ましい実施形態と同様である。これを達成するため、デジタル・バイアシング制御信号が、ＰＩに基づいてＰＭＵ２０によって生成され、デジタル／アナログ変換器（ＤＡＣ）８２に供給される。ＤＡＣ８２によって生成される同等のアナログ信号が、増幅器またはバッファ回路８４を介して、ＩＣ基板に供給される。バイアシング制御機能、すなわちＤＡＣ８２およびバッファ回路８４も、（図３の左上の拡大された点線フレームによって表されるように）公称供給電圧ＶＤＤＭＡＸで動作することに留意されたい。制御されたバイアス電圧の影響は、追加の監視機能または制御ループが必要にならないように、監視ユニットＭの制御ループによっても捉えられる。ボディ・バイアスは、任意の方法で生成されることができ、提案される性能制御方式に大きな影響はもたない。
【００２７】
上記の第１および第２の実施形態では、ＬＶＲ３２は、電力供給電圧ＶＤＤを制御するために提供されるアクチュエータとして機能する。制御された電力供給電圧ＶＤＤは、ＰＩの関数として０とＶＤＤボルトの間の広い範囲で変化することができる。可変抵抗は、任意の半導体回路、または制御可能抵抗機能を有するもしくは制御可能抵抗として機能するその他の回路に基づいて、実装されることができる。ＬＶＲ３２の代替として、任意の汎用電圧レギュレータ、例えばＤＣ／ＤＣ変換器も、同様に使用されることができる。
【００２８】
以下では、第３の好ましい実施形態が説明され、ＰＭＵ２０は、制御される回路内に提供される少なくとも１つの処理機能のパイプラインの深さを変化させるために適応される。
【００２９】
現代のプロセッサは、性能を改善させるため、命令実行を直列化および最適化するのにパイプラインを使用する。しかし、最適なパイプラインの深さは、動作アプリケーションにまたはその現在セクションにさえ依存することがよく知られている。したがって、ＰＭＵ２０が、制御される回路の処理ステージまたは機能のパイプラインの深さを、いくつかのパイプライン・ステージを合併またはスキップすることによって変更できるようにすることが提案されており、それは、動作またはクロック周波数を変更する必要も生じさせる。したがって、パイプラインの深さは、各アイランドが性能を最適化するように、個別に選択されることができ、例えば、マルチメディア・アプリケーションは、最大のパイプライン深さを必要とし、一方、リアルタイム・アプリケーションは、中程度のパイプライン深さを必要とするなどである。任意のパイプラインは、このアプローチから利益を得るが、２つのレジスタ・バンク間のロジックが同様の遅延を有する均衡がとられたパイプラインであっても、最大の利益を得る。
【００３０】
図４は、第３の好ましい実施形態による可変深さパイプラインを示しており、２つの動作ＡおよびＢが、それぞれの処理または論理ユニットにおいて実行される。中間のレジスタＲＡがスキップされ得る場合、動作Ａ、Ｂは、１クロック・サイクルで実行されることができ、パイプラインの深さは、効果的に２に変更されることができる。これを達成するため、特別なロジックＰＤ（パイプライン使用不可）が追加され、それが中間のレジスタＲＡのクロックをゲート制御することを可能にする。さらに、マルチプレクサまたはその他の選択スイッチング回路とすることができるバイパス・ユニットＢＰが、ロジックまたは動作Ｂへの適切な入力を選択するために追加される。これらの構造をあらゆるレジスタ障壁に追加することによって、パイプラインの深さは、完全に変更されることができる。
【００３１】
アプリケーションまたはＰＭＵ２０がパイプラインの深さの変更を試みることができる多くの方法が存在し得る。１つの方法は、どのレジスタ障壁がスキップされるべきか、および上記のμ制御機能によって設定される必要な動作周波数を定義する、パイプライン・プロファイルを指定することである。パイプライン・ステージの使用可および使用不可も同様に、ソフトウェア・ルーチンの対応する命令に基づくことができる。
【００３２】
図４に示された例では、パイプラインは、後にレジスタＲＡが続く動作Ａと、後にレジスタＲＢが続く動作Ｂとを備える。動作Ａは入力値ＩＡに基づいて出力値ＯＡを計算するが、動作Ｂは入力値ＩＢに基づいて出力値ＯＢを計算する。入力値ＩＢは、前のクロック・サイクルにおける動作Ａの結果である。
【００３３】
パイプライン化された動作の難点は、待ち時間（ｌａｔｅｎｃｙ）が増加することである。パイプラインに供給されるクロック周期Ｔは、チェーン内で発生する最長遅延時間に適応されなければならない。したがって、τＡおよびτＢをそれぞれ動作ＡおよびＢの待ち時間として、出力値ＯＢが利用可能になる待ち時間は、Ｔ＋τＢで表され、これは通常、τＡ＋τＢよりも長い。
【００３４】
第２の好ましい実施形態では、パイプライン内の１つまたは複数のレジスタのスキップを可能にするため、ＰＭＵ２０が、バイパス・ユニットＢを制御する。レジスタをスキップすることは、パイプラインにおける動作が付随的に実行されさえすればよい場合に有利である。制御は、制御値を制御ラッチまたはフリップフロップＣ０に設定することによって実行されることができ、一方、入力値ＩＡは、入力レジスタＲ０に供給される。したがって、待ち時間が短縮されることができ、それはパイプラインのスループットに相応の影響を有する。このスループットは、一定の時間間隔内に実行され得る命令の数に対応する。１つまたは複数のレジスタ・ステージをスキップすることで、待ち時間は短縮されるが、新しい入力値が両方のステージで処理されることができるまで待機時間（ｗａｉｔｉｎｇ  ｔｉｍｅ）が導入されなければならないので、スループットは引き下げられる。
【００３５】
次に、クロック周波数と供給電圧の組合せ制御のための、（図２および図３のＬＶＲ３２を置き換えることができる）変更された供給電圧アクチュエータが、第４の好ましい実施形態に関して説明される。特に、変更されたアクチュエータ調整機能は、図２および図３の制御される回路の性能の容易な制御を可能にする。
【００３６】
性能要求が低い場合、電力供給は引き下げられることができ、低下された性能をもたらすし、それとともに著しい電力削減をもたらす。高い性能要求の場合、最高の供給電圧が、最速の設計動作周波数で最高の性能をもたらす。さらに、そのようなアプローチは、プロセスおよび温度変動を追跡するために使用されることができる。このアプローチをこれまで実施してきたすべての方式は、制御されるシステムに供給される所望のクロック周波数と供給電圧とに通常は対応する、１つまたは複数の性能指標を受け取ることに基づいている。したがって、電力供給および動作周波数のような電気的パラメータの操作の背後のインテリジェンスは、制御される回路から外部に配置される。
【００３７】
第４の好ましい実施形態によるアクチュエータの基本アイデアは、与えられた性能表示のフィロソフィ（ｐｈｉｌｏｓｏｐｈｙ）を、より高いまたは低い性能を単に要求することによって置き換えることである。これは、２進信号、すなわち最大で２つのビット値を用いて達成されることができ、シフト・レジスタまたは先入れ先出し（ＦＩＦＯ）メモリ、制御される回路用の制御された供給電圧を生成するために使用される可変抵抗、ならびに線形プログラム可能なクロック発生器、例えば図２および図３のＣＧＵ３０に基づいて、非常に簡素化された実装をもたらす。
【００３８】
図５は、この制御方式の汎用的な実施を示している。２進制御信号ＵＰおよびＤＮが、ＰＭＵ２０によって供給され、より高い性能が必要とされているのか、あるいはより低い性能が必要とされているのかを表す。両方の信号が、ＦＩＦＯまたはシフト・レジスタ３１を制御し、プッシュまたはポップ信号として使用される。代替として、単一の２進制御信号が使用されることができ、それは供給され、ＵＰおよびＤＮの値を得るために、非反転バージョンと反転バージョンに分割される。
【００３９】
シフト・レジスタ３１に保存されるビットは、可変抵抗３２およびＣＧＵ３０に送られる。それに応答して、ＣＧＵ３０は、調整されたクロックＲＣＬＫを発生させ、可変抵抗３２は、調整された供給電圧ＲＳＰを発生させる。
【００４０】
図６は、ＣＧＵ３０の一例の概略回路図を示している。図６によれば、ＣＧＵ３０は、インバータと、シフト・レジスタ３１の個々の偶数ビット位置から取り出される制御信号Ｃ０、Ｃ２、．．．、Ｃ２ｎに基づいてバイパスされることができる複数の遅延セクションＤ１からＤ３とを備えるループからなる。ＣＧＵ３０のループの総遅延が調整されたクロック周波数ＲＣＬＫを決定するという事実のため、クロック周波数は、シフト・レジスタ３１内に保存されたビット値に基づいて制御されることができる。
【００４１】
図７は、調整された供給端子ＲＳＰと調整されていない供給端子ＵＲＳＰの間に接続されたＬＶＲ３２の一例の概略回路図を示している。ＬＶＲ３２は、シフト・レジスタ３１の個々の奇数ビット位置の反転または否定から得られる制御信号／Ｃ１、／Ｃ３、．．．、／Ｃ２ｎ＋１に基づいて、個々にスイッチングされることができる複数の並列抵抗ブランチを備える。もちろん、図７の制御可能抵抗回路は、トランジスタ・セグメントによって置き換えられることができ、その場合、制御信号は、トランジスタ・セグメントの制御端子に供給される。
【００４２】
パターン内における論理「１」の値の数を増加させるにつれ、（図６におけるアクティブな遅延セクションの数が減少するので）ＣＧＵ３０の総遅延は増大し、（図７におけるオープンな抵抗ブランチの数が増えるので）ＬＶＲ３２の総抵抗は引き下げられる。
【００４３】
制御方式は、以下のように機能する。
【００４４】
最初に、シフト・レジスタ３１は、その第１のビット位置またはスロットに論理「１」を有し、残りのビット位置またはスロットは、論理「０」で満たされ、その結果、パターン「１００．．．０００」が生じている。これは、可変抵抗が、最小値にあり（すべての抵抗ブランチは接続または閉じられている）、ＣＧＵ３０が、（１つの遅延セクションＤ１だけがアクティブである）最低の総遅延に対応する最速クロックを供給することを保証するが、これは恣意的な選択である。ＰＭＵ２０が制御信号ＤＮをイネーブルにすると、論理「１」をシフト・レジスタ３１に移す（図７では右にシフトする）ことによって、論理「１」を含むスロットの数が増やされて、パターン「１１０．．．０００」を得る。シフト操作によって設定された新しいスロット、すなわち奇数スロットまたは偶数スロットに応じて、供給電圧またはクロック周波数が引き下げられる。一方で、ＰＭＵ２０が制御信号ＵＰをイネーブルにすると、論理「１」をシフト・レジスタ３１から除く（図５では左にシフトする）ことによって、論理「１」を含むスロットの数が減らされて、パターン「１００．．．０００」を得る。どのスロット、すなわち奇数スロットまたは偶数スロットがリセットされるかに応じて、供給電圧またはクロック周波数が引き下げられる。
【００４５】
一連の動作は、供給電圧より前にクロック周波数が引き下げられ、クロック周波数より前に供給電圧が引き上げられるという形になる。提案される制御方式では、制御信号ＵＰおよびＤＮの上昇（およびもちろん解除）は、シフト・レジスタ３１の状態にただ１つの変化を引き起こす。制御信号ＵＰまたはＤＮがハイに保たれている限り、複数のスロットがセットまたはリセットされるように、シフト・レジスタ３１に、図５の点線によって示されるように、生成されたクロックＲＣＬＫを供給することも可能である。
【００４６】
制御される回路は、シフト・レジスタ３１が論理「０」だけで満たされる場合、最大性能で動作し、一方、シフト・レジスタ３１が論理「１」だけで満たされる場合、最大の電力節約が得られる。ＰＭＵ２０は、ＣＧＵ３０を制御するので、シフト・レジスタ３１の与えられたデータ・ワードに対するクロック周波数または動作周波数を知っている。一方で、制御される回路の性能のリアルタイム測定を実行するため、性能モニタ、例えばリング発振器およびカウンタが使用されることもできる。
【００４７】
図８は、調整されたクロック信号ＲＣＬＫ、制御信号ＵＰ、および制御信号ＤＮの波形を上部から下部まで示す信号図を示している。図８から推察し得るように、調整されたクロック信号ＲＣＬＫは、制御信号ＵＰがハイ論理状態にあるときに周波数を高め、一方、調整されたクロック信号ＲＣＬＫは、制御信号ＤＮがハイ論理状態にあるときに周波数を下げる。
【００４８】
図９は、調整された供給電圧ＲＳＰまたはＶＤＤの波形を経時的に示す信号図を示しており、シフト・レジスタ３１の内容の対応する変化に基づいた階段状の電圧低下が観察されることができる。
【００４９】
図１０は、第４の好ましい実施形態による提案される制御方式の処理ステップを示す概略フロー図を示しており、図１０の左側部分はやはり、制御方式のソフトウェア部分ＳＷに対応し、図１０の右側部分はやはり、制御方式のハードウェア部分ＨＷに対応する。
【００５０】
ステップ１０において、アプリケーションは、通常どおり、標準的なコンパイラによってコンパイルされる。次にステップ１１において、アプリケーションの挙動および性能要件に関する情報を与える、アプリケーションの統計的プロファイルを取り出すために、標準的なプロファイラが使用される。ステップ１１で取得された統計的プロファイルに基づいて、ステップ１２において、性能指標が取り出されることができる。したがって、ステップ１２は、使用されるハードウェアに依存する。提案されるソリューションの場合、この仮定は必要でなく、指標は、アプリケーションのセクションの性能要件を、その他のセクションの１つと比較して表すことができるだけである。
【００５１】
ステップ１３において、指標または制御値ＵＰおよびＤＮが、それぞれの部分的ステップ１３ａおよび１３ｂで取り出される。この取り出しは、ハードウェアから独立して実行されることができ、またはハードウェアに、例えば制御信号ＵＰおよびＤＮが参照される特定の初期保証性能に適合されることができる。ステップ１４において、制御値ＵＰおよびＤＮが、固定または可変アプリケーション・セクションについての各命令の２ビットまたは１ビット・フィールドとして、または別個のプログラムとして、アプリケーションに埋め込まれる。すでに上述されたように、ＵＰおよびＤＮ制御値は、単一の２進制御値またはビットから導き出されてもよく、単一の制御値の第１の状態は、制御信号ＵＰのハイ値に関連し、制御ビットの第２の状態は、制御信号ＤＮのハイ値に関連する。
【００５２】
ハードウェア・セクションＨＷのステップ２０において、指標がアプリケーションから取り出される。この取り出しは、ステップ１４に依存する。次ステップ２１において、部分的ステップ２１ａおよび２１ｂでそれぞれ、アプリケーションが実行され、ハードウェアが制御値ＵＰおよびＤＮに応じて調整される。
【００５３】
次に、第５の好ましい実施形態が説明され、第５の実施形態は、制御される回路の供給電圧、クロック周波数、およびボディ・バイアスを制御するための制御方式に関する。特に、第５の実施形態は、指定された性能を満たすために、性能指標が供給され、３つの物理変数、すなわちクロック周波数、電圧供給、およびボディ・バイアスがしかるべくまた継続的に変更される、非常に簡単な自律的方式に関する。この第５の実施形態の１つの利点は、クロック周波数が供給電圧に結び付けられることである。言い換えると、供給電圧ＶＤＤを上げ下げするスケーリングが、クロック周波数の対応する変化を生じさせる。この態様は、回路およびクロックの速度が電力供給の適切なスケーリングに合致させられるという事実のために、性能の自律的アイランド（ＡＩｏＰ：ａｕｔｏｎｏｍｏｕｓ  ｉｓｌａｎｄｓ  ｏｆ  ｐｅｒｆｏｒｍａｎｃｅ）において重要である。
【００５４】
システムの観点から、ＡＩｏＰアプローチは、将来のＩＰプラットフォームのための主要回路設計技術を開発することを目的としており、ＳｏＣがアイランドから構成されることを仮定している。基本的に、ＡＩｏＰ技術は、速度および電力の両方に関して一定レベルの性能が保証されるように、アイランドまたはアイランドのクラスタの性能を適応させるため、ＡＩｏＰシェルと呼ばれるハードウェア基盤を提供する。ＡＩｏＰ技術は、速度および／または電力消費に関する与えられた所望の性能にとっての、アイランド最適電力供給および閾値電圧を選択する。
【００５５】
図１１は、入力がプロファイル・モードとアイランド目標周波数とからなる、ＡＩｏＰシェルの概略ブロック図を示している。較正位相も可能である。シェルは、プロファイル、周波数、および較正要求のすべてを認識する。（周波数ポインタＦＰによって定義される）周波数、（プロファイル・ポインタＰＰによって定義される）プロファイル、および電力供給値ＶＤＤは、検索テーブル（ＬＵＴ）５０内に保持される。ＡＩｏＰコントローラ４８−１および４８−２、ならびに較正ユニット４９は、制御下のアイランドの動的調整のためにＬＵＴ５０を使用する。アイランドは別個の電力供給電圧を有することができるので、他のアイランドと通信するために、レベル・シフタ４２が必要とされる。
【００５６】
較正ユニット４９は、較正スタート（ＣＳ）信号によって制御され、較正レディ（ＣＲ）信号を生成する。閾値コントローラ４８−１は、プロファイル・レディ（ＰＲ）信号を生成し、供給コントローラ４８−２は、周波数レディ（ＦＲ）信号および周波数エラー（ＦＥ）信号を生成する。さらに、アイランド４０上に提供されたＡＩｏＰシェルは、制御される回路の電圧閾値を監視するための閾値監視ユニット４３と、回路速度を監視するための速度監視ユニット４７および制御される回路の電力供給雑音を監視するためのＰＳＮ監視ユニット４６とを含む。
【００５７】
さらに、トリプル・ウェルＣＭＯＳ技術の絶縁された第３のウェル内に提供されることができるアイランド４０は、制御される回路の処理要素が配置されるＮウェル領域４４およびＰウェル領域４５と、クロック生成領域または機能４１とを備える。これらの領域は、閾値モニタ４３、ＰＳＮモニタ４６、および速度モニタ４７によって監視される。
【００５８】
図１１のＡＩｏＰシェルは、ＡＩｏＰアイランド４０を異なるプロファイル・モードに設定する可能性を提供する。一般に、２つのプロファイル・モード、すなわちアクティブ・モードとスランバイ・モードが、区別されることができる。アクティブ・モードでは、以下のプロファイルが選択されることができる。
【００５９】
−高性能プロファイル、このプロファイルでは、閾値電圧は、最小値にされ、電力供給は、必要とされるクロック周波数と１組にされ、または固定的に関係付けられる。
【００６０】
−標準性能プロファイル、このプロファイルでは、閾値電圧は、標準値に保たれ、電力供給は、必要とされる周波数と１組にされ、または固定的に関係付けられる。
【００６１】
−低電力性能プロファイル、このプロファイルでは、閾値電圧は、最大値にされ、電力供給は、必要とされるクロック周波数と１組にされ、または固定的に関係付けられる。
【００６２】
一方、スタンバイ・モードでは、以下のプロファイルが選択されることができる。
【００６３】
−クール（ｃｏｏｌ）・プロファイル、このプロファイルでは、クロック・ゲーティングが適用され、電力供給は、最小許容可能値まで引き下げられ、一方、閾値電圧は、最大許容可能値まで引き上げられる。このモードまたはプロファイルは、低電力目的のために使用されることができる。
【００６４】
−コールド（ｃｏｌｄ）・プロファイル、このプロファイルでは、クール・プロファイルの場合と同じ設定が使用されるが、フリップフロップまたはラッチなどの回路状態を保持しながら、電力供給が組合せロジックから切り離される。このモードまたはプロファイルは、低電力、低リークの必要性に適している。
【００６５】
−極低温（ｃｒｙｏｇｅｎｉｃ）プロファイル、このプロファイルでは、アイランド４０全体が単純にオフにされる。
【００６６】
ＡＩｏＰシェルの調整方式は、電力供給電圧とクロックの対を、閾値電圧の選択に応じた与えられたプロファイル・モードに合致させる。したがって、電力供給電圧の変化は、クロック周波数と回路速度における変化によって反映される。このアプローチの直接の結果は、考察下のアイランドの周波数スペクトルが、供給電圧範囲を上限および下限に制限することである。電力供給とクロックが１組にされるという事実のため、電力供給ステップのサイズが、クロックの周波数ステップも決定する。
【００６７】
図１２は、第４の好ましい実施形態による、プログラム可能クロック周波数を取得する際に使用されるクロックと供給電圧のペアリングを示す、周波数対電圧図を示している。
【００６８】
ＡＩｏＰ技術は、周波数が安全に、離散的に、すなわち任意の値から他の任意の値に１クロックの予測可能な待ち時間で変更され得るような方法で動作できる、プログラム可能クロックを使用する。この周波数ステップは、大ステップΔｆｍｊと呼ばれる。図１２では、２つの矢印が、最小供給電圧ＶＤＤ，ｍｉｎから公称供給電圧ＶＤＤ，ｎｏｍへの供給電圧の変化と対応する大ステップΔｆｍｊとの間の調整関係を示している。クロックがプログラムされると、小周波数ステップΔｆｍｎが、点線によって示されるように、制御される回路１０の電力供給をスケーリングすることによって取得され、クロックは、電力供給の適切なスケーリングによって、合致させられることができる。
【００６９】
上記の好ましい実施形態の特定の特徴は、本発明の範囲から逸脱することなく、組み合わされまたは交換され得ることが指摘されなければならない。特に、第３の好ましい実施形態による特定のアクチュエータは、第１および第２の好ましい実施形態のＬＶＲ３２に置き換わることができる。任意の種類のスイッチング構成が、図２および図３に示されたＬＶＲ３２を形成するトランジスタまたは抵抗要素をスイッチングするために使用されることができる。さらに、図４のパイプラインの可変深さ制御は、少なくとも１つのレジスタをバイパスするのに適した他のスイッチングおよび／または制御構成によって得られることができる。第１および第２の好ましい実施形態の組み合わされたクロックおよび雑音制御機能は、クロック周波数だけまたは電力供給だけが監視されるそれぞれ独自の実施形態で別々に提供されることができる。
【００７０】
さらに、本発明が上記の好ましい実施形態に限定されず、添付の特許請求の範囲内で変更され得ることにも留意されたい。特に、説明された図面は、概要的なものであるに過ぎず、限定的なものではない。図面において、説明目的のため、いくつかの要素のサイズは誇張され、実寸に比例して描かれていない場合がある。「ｃｏｍｐｒｉｓｉｎｇ（備える）」という語は、この説明および特許請求の範囲で使用される場合、その他の要素またはステップを排除しない。単数名詞を参照する場合に使用される不定冠詞または定冠詞、例えば「ａ」または「ａｎ」、「ｔｈｅ」は、他に特段の言及がなければ、その名詞の複数も含む。説明および特許請求の範囲における第１、第２、および第３などの語は、同様の要素を区別するために使用され、必ずしも順番または時間的順序を表すために使用されてはいない。本明細書で説明された本発明の実施形態は、本明細書で説明または例示された以外の順序で動作可能であることを理解されたい。さらに、好ましい実施形態、特定の構造および構成が本明細書で説明されたが、添付の特許請求の範囲から逸脱することなく、形態および細部の様々な変更または修正が施されることができる。
【図面の簡単な説明】
【００７１】
【図１】従来の性能制御方式の処理ステップを示す概略フロー図である。
【図２】第１の好ましい実施形態による性能制御回路構成の概略ブロック図である。
【図３】第２の好ましい実施形態による性能制御回路構成の概略ブロック図である。
【図４】第３の好ましい実施形態による可変深さパイプライン構成を示す概略ブロック図である。
【図５】第４の好ましい実施形態による４次元制御方式の概略フロー図である。
【図６】第４の好ましい実施形態による線形プログラム可能クロック発生器の概略回路図である。
【図７】第４の好ましい実施形態による制御可能並列可変抵抗の概略回路図である。
【図８】好ましい実施形態で使用されるクロック波形の一例を示す信号図である。
【図９】第４の好ましい実施形態による供給電圧の一例を示す信号図である。
【図１０】第５の好ましい実施形態による制御機能の概略フロー図である。
【図１１】第５の好ましい実施形態によるＡＩｏＰシェル・インタフェースの概略ブロック図である。
【図１２】第５の好ましい実施形態によるクロック対供給電圧ペアリングを示す概略図である。
【図１】
2008503138.tif 000003
【図２】
2008503138.tif 000004
【図３】
2008503138.tif 000005
【図４】
2008503138.tif 000006
【図５】
2008503138.tif 000007
【図６】
2008503138.tif 000008
【図７】
2008503138.tif 000009
【図８】
2008503138.tif 000010
【図９】
2008503138.tif 000011
【図１０】
2008503138.tif 000012
【図１１】
2008503138.tif 000013
【図１２】
2008503138.tif 000014
【国際調査報告】
2008503138.tif 000015
2008503138.tif 000016
2008503138.tif 000017
2008503138.tif 000018
2008503138.tif 000019