JP2005141757A - クロック信号を動的に変化させるためのシステムおよび方法 - Google Patents

クロック信号を動的に変化させるためのシステムおよび方法 Download PDF

Info

Publication number
JP2005141757A
JP2005141757A JP2004323479A JP2004323479A JP2005141757A JP 2005141757 A JP2005141757 A JP 2005141757A JP 2004323479 A JP2004323479 A JP 2004323479A JP 2004323479 A JP2004323479 A JP 2004323479A JP 2005141757 A JP2005141757 A JP 2005141757A
Authority
JP
Japan
Prior art keywords
delay
clock signal
chip
signal
voltage
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2004323479A
Other languages
English (en)
Other versions
JP4033856B2 (ja
Inventor
Eric S Fetzer
エリック・エス・フェッツァー
Samuel D Naffziger
サミュエル・ディー・ナフジガー
Benjamin J Patella
ベンジャミン・ジェイ・パテラ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Original Assignee
Hewlett Packard Development Co LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Development Co LP filed Critical Hewlett Packard Development Co LP
Publication of JP2005141757A publication Critical patent/JP2005141757A/ja
Application granted granted Critical
Publication of JP4033856B2 publication Critical patent/JP4033856B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Pulse Circuits (AREA)
  • Power Sources (AREA)

Abstract

【課題】電子システムの駆動電圧や周波数といった動作パラメータを動的に制御するための手段を提供する。
【解決手段】少なくとも1つの実施形態において、システムは、クロック信号を利用して動作を実行するための手段(111)を備える。システムはさらに、その実行手段に変動する動作電圧を供給するための手段(101)と、その変動する動作電圧の観察された変化に応答してクロック信号の周波数を動的に変更するための手段(104)を備える。
【選択図】図1

Description

本発明は電子システムの制御に関し、特に、電子システムの動作電圧や周波数といった動作パラメータを制御することに関する。
集積回路(一般に「チップ」とも呼ばれる)などの回路が利用される用途はますます増え続けている。例えば、マイクロプロセッサなどのチップは、一般に、パーソナル・コンピュータ(PC)やラップトップ・コンピュータだけでなく、一般に、携帯情報端末(PDA)、携帯電話、ページャ、および他の様々なタイプの装置のようなさらに小さい(かつより持ち運びしやすい)装置に実装されている。チップの性能が常に進歩し続けているので、チップ設計者には消費電力が益々大きな問題になってきている。例えば、消費電力は、高速マイクロプロセッサの性能を制限する大きな要素になっている。ほとんどのマイクロプロセッサ・システムの設計目的は、多くの演算を必要とするコード用にできるだけ最高の性能を提供し、同時にマイクロプロセッサ・システムの消費電力を削減することである。特にそのようなマイクロプロセッサ・システムが携帯型電子装置に実装されたときの装置のバッテリ寿命を最大にするには、(少なくとも低活動期間に)消費電力を少なくすることが望ましい。チップの消費電力は、一般に、P=C2*Fの式を使用して計算することができ、ここで、Pは消費電力を表し、Cはスイッチング・キャパシタンスを表し、Vは動作電圧を表し、Fはチップのクロック周波数を表す。この式から、スイッチング・キャパシタンス(C)、電圧(V)および周波数(F)がすべて、チップの消費電力(P)を決定する要素であることがわかる。多くの場合、プロセッサのクロック周波数(F)は、チップの消費電力(P)を所与のシステム(例えば、デスクトップ装置や携帯型装置内)で使用できる所定のレベルよりも低く保持するように制限される。
マイクロプロセッサ・チップは、一般に、その電圧と周波数が、チップが特定の量よりも多く電力を消費するのを防ぐために決定された一定のものにされた状態で実装されている。通常、マイクロプロセッサ・チップを設計する際に、設計者は、チップに重い計算負荷を作り出すソフトウェア・コードでチップを試験して、チップが重い演算負荷を受けたときに消費電力が特定の量を超えないようにチップに実施できる適切な電圧と周波数を決定する。しかしながら、実施された後、そのような重い演算負荷は、比較的まれにしか遭遇することがなく、多くの時間、マイクロプロセッサにかかっている演算負荷は低い(または、負荷がない)。したがって、最悪の場合の計算負荷によってチップの電圧と周波数が決定され、それによりチップの性能が損なわれる(例えば、最悪の場合に必要とされる低減された周波数のために)。
1つの電力節約方法は、演算の集中していない活動中にクロック周波数(F)だけを低くしようとするものである。これは電力を減少させるが、1処理当たりに消費される全エネルギーには影響を及ぼさない。すなわち、周波数(F)が下がるととそれに比例して消費電力が減少するが、これに比例してタスク実行時間も長くなり、これにより、1タスク当たりのエネルギーが一定に維持される。一方、プロセッサの電圧(V)だけを低くすると、エネルギー効率は高くなるが、その最大性能が損なわれる。
演算負荷の需要に応じてクロック周波数(F)と電源電圧(V)を動的に変化させると、演算の少ない期間に1処理当たりに消費されるエネルギーを少なくすることができ、同時に、必要なとき(すなわち、演算の多い期間)に最大性能が維持されることが分かっている。そのような演算負荷に基づいたクロック周波数(F)と電源電圧(V)の動的変更を利用しようとする設計戦略は、一般に、動的電圧スケーリング(DVS)と呼ばれる。そのようなDVS技術の例には、Intel Corporationから入手可能なSpeedStep(商標)技術と、Advanced Micro Devices, Inc.から入手可能なPowerNOW技術が含まれる。従来の実施は、オペレーティング・システム(OS)の直接制御によってマイクロプロセッサ上でDVSを使用する。そのような実施では、DVSシステムのOSに、マイクロプロセッサの実行時にプロセッサ速度と電圧を動的に調整するために利用される1つまたは複数の電圧スケジューラ・アルゴリズムが含まれる。電圧スケジューラは、コプロセッサ・レジスタに所望の周波数(MHz単位)を書き込むことによってマイクロプロセッサのクロック周波数(F)と電源電圧(V)を制御する。電圧スケジューラは、システムの現在と過去の状態を解析して、プロセッサの将来の作業負荷を予測する。例えば、個別のアプリケーションが完了期限を提供し、電圧スケジューラは、アプリケーションの前の実行履歴を使用して必要なプロセッサ・サイクル数を決定し、それに従ってクロック周波数(F)を設定する。
DVS技術は、従来から、システム利用率を定期的に解析して周波数と電圧を制御する期間ベースの電圧スケジューラを利用している。例えば、電圧スケジューラが、前の期間が50%を超えてアクティブであったと判定した場合は、次の期間の周波数と電圧を高めることができる。したがって、システムは、OSにクロック周波数(F)を現在アクティブなプロセスに必要な最低レベルに動的に調整させることによって、マイクロプロセッサが消費する電力量を節約しようとする。クロック周波数(F)をそのようなレベルに調整するために、OSは、Fを高くしたり低くしたりすることがある。Fを高くするとき、OSは、まずチップの動作電圧(V)を所望のFをサポートするのに適した値まで高め、次にFが高められ、またFを所望のレベルまで下げるときは、まずFをそのレベルまで下げ、次にチップの動作電圧を、下げたFをサポートするのに十分な値まで下げる。
しかしながら、OSを利用してマイクロプロセッサの電圧と周波数を動的に制御するこの手法は、問題があったり不適切であったりする場合が多い。まず、一般に、この手法を実施するようにシステムのOSを変更するには、きわめて時間がかかりかつ/またはコストがかかる。システム管理者は、一般に、使用しているハードウェアを改善するためにOSをアップグレードすることを嫌がる。さらに、チップが実際にどれだけ電力を消費しておりまたその演算の需要が何であるかの情報が不完全であるため、OSを利用する手法は、あまり信頼できるものではない。より正確に言うと、OSは、チップ・レベルで必要なものを推定/推測することを試みることしかできない。さらに、OSがチップの消費電力および/または演算需要を知的に推定するために必要なデータは、一般にチップに固有なものであり、したがって、そのようなOSを利用する手法の実施やアップグレードはより困難になる(OSの実装を、実装する特定のチップ技術に合わせなければならないため)。
本発明の目的の1つは、電子システムの駆動電圧や周波数といった動作パラメータを動的に制御する手段を提供することである。
少なくとも1つの実施形態によれば、システムは、クロック信号を利用して動作(演算)を実行する手段を含む。システムは、さらに、その実行する手段に変動動作電圧を供給する手段と、観察された変動動作電圧の変化に応じてクロック信号の周波数を動的に変化させる手段とを含む。
図1には、クロック信号を動的に変化させるための回路の1実施形態の実装例を含むシステム100の一部分を示す。図示したように、電源101が、チップ103に電力を供給する。より具体的には、電圧信号とアースが、電源101によって供給され、一般にある程度のパッケージ寄生容量102を介してチップ103に送られる。そのようなパッケージ寄生容量102は、電子回路技術分野の当業者には周知であり、したがって、ここでは詳しく説明しない。このように、得られた電圧信号V1とアースG1が、チップ103によって受け取られる。チップ103は、後でさらに説明するように、チップの変動しうる電源電圧(または変動供給電圧または可変供給電圧。以下同じ)V1の変化に応じて、チップのクロック「CLK」(コア・チップ回路111のクロック信号として利用される)を動的に変化させるように動作可能な電圧−周波数変換回路(本明細書では、「クロック最適化回路」または「クロック管理回路」と呼ぶことがある)104を含む。チップ103は、マイクロプロセッサを含むがそれに限定されない任意のタイプの集積回路でよい。コア・チップ回路111は、マイクロプロセッサ内で命令を実行するロジック、チップが動作を実行するために利用できる情報のための記憶要素、演算処理ロジックなど、チップ103の任意のクロック駆動される(例えばクロックに同期して動作する)回路構成要素を含むことができる。
図1のこの例示的な実施形態において、電圧−周波数変換回路104は、電圧追跡制御部105、電圧スイッチ106、プログラム可能遅延線路107、遅延制御部108、位相比較器109、およびクロック・コントローラ110を含み、これらについては後でさらに詳しく説明する。図示したように、この例示的な実施形態において、クロック・コントローラ110は、コア・チップ回路111によって使用されるチップ・クロック「CLK」を出力する。また、クロック「CLK」は、プログラム可能遅延線路107と位相比較器109によって受け取られる。プログラム可能遅延線路107は、電圧V1に基づいて、「遅延CLK(遅延クロック)」として示した遅延されたクロック信号を生成する。位相比較器109は、クロック「CLK」を「遅延CLK」と比較して、クロック・コントローラ110に指示してクロック「CLK」の周波数を変化させる(例えば、クロック「CLK」の周波数を増減する)かどうかを決定する。より具体的には、位相比較器109は、クロック「CLK」の位相を「遅延CLK」と比較した結果を示すクロック制御信号を出力する。このクロック制御信号に基づいて、クロック・コントローラ110は、クロック「CLK」の周波数を変化させるかどうかを決定する。
これにより、プログラム可能遅延線路107は、チップの電源電圧(供給電圧)V1に応じて変化するCLKに対する遅延を有する「遅延CLK」を所定の方法で生成する。後で図3と関連して考察するように、特定の実施形態において、遅延線路は、作成時に回路に整合させるために電源電圧V1の変化に対する感度を増減(すなわち、プログラム)できるように「プログラム可能」である。実際に回路を作成する前に、様々な電源電圧に対してその回路がどのように挙動するかを予測することは困難である。(例えば、シリコン内に)回路が実際に作成された後で、特定の実施形態は、(シリコン内に)作成した回路の特性を正確に考慮するように遅延線路107をプログラムして、電圧−周波数変換回路104が、変動電源電圧V1の変化に応じてチップのクロック周波数「CLK」を適切に変化させることができる。後述する図2A〜図2Cに示したような例示的な実施形態において、「遅延CLK」信号は、1クロック・サイクル長になるように構成される。チップのクロック信号「CLK」は遅延線回路107に入力され、遅延線回路107は、正確に1クロック・サイクル遅れることが予想される「遅延CLK」を出力する。これにより、チップの動作電圧が与えられた場合に、位相比較器109は、「遅延CLK」をチップのクロック「CLK」の次のサイクルと比較して、「CLK」の周波数が適切かどうかを決定することができる。
図1に示したように、この例示的な実施形態では、受け取った電圧信号V1とアース信号G1が、コア・チップ回路111と電圧−周波数変換回路104の両方に送られる。この実施形態において、電圧−周波数変換回路104は、生成されたクロック「CLK」の周波数を、電圧V1の値に少なくとも部分的に基づいて調整する。より具体的には、V1は、チップ103に供給される変動電源電圧(variable_supply。本明細書では、変動供給電圧または変動電源とも呼ぶ)であり、電源112は、図1に示したようにチップ103に一定電圧信号「V_fixed」を供給する。図示したように、変動電源電圧V1と一定電源電圧V_fixedは両方とも電圧−周波数変換回路104に供給され、後で図5でさらに考察するように、そのV1とV_fixed信号は、チップのクロック信号CLKを管理するためにプログラム可能遅延線路107の遅延要素によって使用される。
電圧スイッチ106は、プログラム可能遅延線回路107の感度をチップの電源電圧V1の変動に合わせるために、プログラミングによって(例えば、電圧追跡制御部105によって)制御されるスイッチである。そのような電圧スイッチ106は、実際上は、アナログ・マルチプレクサ(MUX)である。動作において、電圧スイッチ106は、プログラム可能遅延線路107に、固定電圧V_fixedを送るか(生成された「遅延CLK」の遅延が、チップの変動電源電圧V1の変化に影響を受けないように)、またはチップの変動電圧V1を送る。このように、チップの変動電源電圧V1が、プログラム可能遅延線路107に送られた場合(例えば、図5と関連して後で考察するように、遅延線回路107の遅延要素の伝達ゲートに送られた場合)、その電源電圧V1が変化するので、生成される「遅延CLK」の遅延は増減する。したがって、電圧の低下が起きた場合、生成される「遅延CLK」は、「CLK」信号のちょうど1クロック・サイクル後ではなく、もう少し後で生じる。その場合、位相比較器109は、「遅延CLK」が「CLK」のクロック・サイクルよりも長いことを検出し、「CLK」の周波数を低くするためにクロック・コントローラ110に信号を送る。
前述の位相比較器109による「遅延CLK」と「CLK」の比較と、クロック・コントローラ110による「CLK」の周波数の変更は、きわめて迅速に行われることが好ましい(例えば、約300ピコ秒で)。その時間中(例えば、300ピコ秒)にチップの電源電圧が変動する量はきわめて小さい。したがって、電圧−周波数変換回路104は、このような電源電圧によってサポートされるクロック周波数が下がるよりも速く電源電圧が下がることに起因する故障状態にチップが陥いらないようにする。より適切に言うと、電圧−周波数変換回路104は、チップの電源電圧V1の変化をきわめて迅速に認識し、それに従ってチップのクロック「CLK」の周波数を調整することができる。したがって、きわめて小さなガードバンド機能(guard banding)をチップ103のために実施することができる。
換言すると、チップの電源電圧V1は、電圧−周波数変換回路104が電源電圧V1の変化を検出しそれに応答する速さによりもゆっくり変化する(例えば、「CLK」の周波数を適切に調整することにより)。したがって、チップの電源電圧V1によって支援される周波数にクロック「CLK」を維持するために、電圧−周波数変換回路104は、チップの電源電圧V1の変化に応じて「CLK」の周波数を迅速に調整することによって、チップ103に対して安全な動作範囲を維持することができる。
このようにして、電圧−周波数変換回路104は、変動電源電圧V1に基づいてクロック「CLK」の周波数を動的に調整するように動作可能である。例えば、負荷の変化(寄生容量の低下(parasitic drop)の結果としてまたはチップまたはシステム・コントローラから、チップの動作中に電源電圧V1に変化が生じることがある。例えば、電圧V1が低下したとき、電圧−周波数変換回路104から出力される「CLK」の周波数が下がり(それにより、クロック周波数は、下がった電源電圧によって支援され)、電圧V1が上昇したとき、電圧−周波数変換回路104から出力される「CLK」の周波数が上昇する(その結果、クロック周波数は、高くなった電源電圧を利用する)。
その結果、この例示的な実施形態のオンチップ回路104は、チップ103がその消費電力を自動調節することを可能にする。チップ103の消費電力は式P=C2*Fを利用して計算することができ、ここでPは消費電力を表し、Cはスイッチング・キャパシタンスを表し、Vは動作電圧(例えば、電圧V1)を表し、Fはチップ103のクロック周波数を表す(例えば、CLKの周波数)。したがって、電圧−周波数変換回路104が、変動電源電圧V1の変化に応じてチップ103のクロック周波数(すなわち、「CLK」の周波数)を動的に調整することによって、チップは、その消費電力を自動調整することができる。
図1の例示的な実施形態の動作において、システム・クロック(または、「チップ・クロック」)「CLK」は、電圧−周波数変換回路104から(および、より具体的にはクロック・コントローラ110から)出力され、コア・チップ回路111に入力され、それにより実行されるクロック駆動される動作(例えばクロックに同期した動作)のために使用される。さらに、クロック「CLK」は、電圧−周波数変換回路104に入力される。より具体的には、クロック「CLK」は、プログラム可能遅延線路107と位相比較器109に入力される。図3〜図5と関連して後で説明するように、特定の実施形態において、プログラム可能遅延線路107は、バイパス可能な遅延要素を含むことができ、遅延を、ターゲット電圧V1においてクロック「CLK」のターゲット期間になるようにプログラムすることができる。ターゲット電圧およびクロック周波数は、例えばチップ仕様から得ることができる。
電圧V1がターゲット(目標値)にあり、クロック「CLK」のクロック周期がターゲット(目標値)にある場合、図1に「遅延CLK」と示した遅延線路107から出力される遅延クロックは、次のクロック・サイクルのシステム・クロック「CLK」の立ち上がりエッジと一致する立ち上がりエッジを有する。したがって、位相比較器109は、「遅延CLK」とクロック「CLK」の次のクロック・サイクルの一致を検出し、システム・クロック・コントローラ110は、(位相比較器109から出力されたクロック制御信号によって)何もしない(すなわち、クロック「CLK」の周波数を変化させない)ように指示される。変動電源電圧V1がターゲットより高い場合、遅延されたクロック「遅延CLK」は、システム・クロック「CLK」の次のサイクルより前に位相比較器109に到達し、クロック・コントローラ110は、(位相比較器109から出力されるクロック制御信号によって)クロック「CLK」の周波数を高くするように信号を送られる。電圧V1がターゲットよりも低い場合、遅延されたクロック「遅延CLK」は、システム・クロック「CLK」の次のサイクルよりも後に位相比較器109に到達し、クロック・コントローラ110は、(位相比較器109から出力されるクロック制御信号によって)クロック「CLK」の周波数を下げるように信号を送られる。観察された動作電圧V1に応じて「遅延CLK」をこのように変化させるようにプログラム可能な遅延要素の例については、図3〜図5と関連して後でさらに詳しく説明する。
電圧スイッチ106は、プログラム可能遅延線路107が、電圧の変化に対して異なる応答を有することを可能にする。後で図3と図5でさらに詳しく説明するように、一定電源電圧V_fixedをプログラム可能遅延線路107のいくつかの遅延要素に効果的に多重化することによって、遅延線路107は、電圧の変化に対する応答性が低くなる。そのような電圧スイッチ106を使用することによって、電圧V1の変化に対する遅延線路107の応答の大きさは、例えば、チップ103のダイ上のクリティカル・パスのものと一致するように設定される。
図2A〜図2Cは、クロック「CLK」を「遅延CLK」と比較する際に位相比較器109が遭遇する可能性のあるシナリオの例を示す。例えば、図2Aは、「遅延CLK」の位相「遅延1」がクロック「CLK」の位相「クロック2」と一致する例を示す。例えば、クロック「CLK」の位相「クロック1」は、クロック制御部(クロックコントローラ)110から出力される第1のクロック・サイクルである。この「クロック1」は、プログラム可能遅延線路107によって受け取られ、プログラム可能遅延線路107は、「遅延CLK」の位相「遅延1」を出力する。次に、クロック制御部110は、クロック「CLK」の第2のクロック・サイクル「クロック2」を出力する。位相比較器109は、「CLK」と「遅延CLK」を受け取り、「遅延CLK」の位相「遅延1」を「CLK」の位相「クロック2」と比較する。図2Aの例では、位相比較器109から出力されたクロック制御信号は、「遅延CLK」と「CLK」が一致していることを示し、従ってクロック・コントローラ110は、システム・クロック「CLK」が適正な速さであり、その周波数を変化させないことを決定する。すなわち、チップのコア回路111に電源電圧V1が提供された場合に、チップのクロック「CLK」が適正(または「最適」)な周波数で動作していることが決定される。
図2Bは、「遅延CLK」の位相「遅延1」が、クロック「CLK」の位相「クロック2」から遅れている例を示す。例えば、最初に、クロック制御部110から「CLK」のクロックサイクル「クロック1」のクロックが出力される。この「クロック1」は、プログラム可能遅延線路107によって受け取られ、プログラム可能遅延線路107は、「遅延CLK」の位相「遅延1」を出力する。次に、クロック制御部110は、「CLK」の第2のクロック・サイクル「クロック2」を出力する。位相比較器109は、「CLK」と「遅延CLK」を受け取り、「遅延CLK」の位相「遅延1」を「CLK」の第2のクロック・サイクルの位相「クロック2」と比較する。図2Bの例において、位相比較器109から出力されたクロック制御信号は、「遅延CLK」の位相が「CLK」の位相の後にある(すなわち、「遅延CLK」の位相「遅延1」が「CLK」の位相「クロック2」の後に生じる)ことを示し、したがってクロック・コントローラ110は、システム・クロック「CLK」が早すぎると決定し、その結果その周波数を低くすることができる。
図2Cは、「遅延CLK」の位相「遅延1」が「CLK」の第2のクロック・サイクルの位相「クロック2」の前に生じる例を示す。例えば、最初に、「CLK」の第1のクロック・サイクル「クロック1」がクロック制御部110から出力される。この「クロック1」は、プログラム可能遅延線路107によって受け取られ、プログラム可能遅延線路107は、「遅延CLK」の位相「遅延1」を出力する。次に、クロック制御部110は、「CLK」の第2のクロック・サイクル「クロック2」を出力する。位相比較器109は、「CLK」と「遅延CLK」を受け取り、「遅延CLK」の位相「遅延1」を「CLK」の第2のクロック・サイクルの位相「クロック2」と比較する。図2Cの例では、位相比較器109から出力されたクロック制御信号は、「遅延CLK」の位相が「CLK」の位相よりも進んでいる(すなわち、「遅延CLK」の位相「遅延1」が「CLK」の位相「クロック2」よりも前に生じる)ことを示し、したがって、クロック・コントローラ110は、システム・クロック「CLK」が遅過ぎると決定し、その結果その周波数を高くすることができる。
以上の点から、位相比較器109は、1)「CLK」の立ち上がりエッジが「遅延CLK」の立ち上がりエッジにある量を加えたものよりも後にくる場合(第1の条件)、2)「遅延CLK」の立ち上がりエッジが「CLK」の立ち上がりエッジにある量を加えたものよりも後にくる場合(第2の条件)、3)これら2つの条件がどちらも真でない場合(すなわち、「遅延CLK」と「CLK」の立ち上がりエッジが、指定された量内で一致する場合)(第3の条件)を決定するように実施されることができる。第1の条件が満された場合、位相比較器109は、クロック制御回路110に「CLK」を速くさせる信号を出力する。第2の条件が満たされた場合、位相比較器109は、クロック制御回路110に「CLK」を遅くさせる信号を出力する。また、第3の条件が検出された場合(すなわち、最初の2つの条件のどちらも真でない場合)、位相比較器109は、クロック制御回路110に「CLK」をまったく変化させない。
位相比較器109の1つの例示的な実施形態として、位相比較器109は、上記第1の条件が真であるかどうか(すなわち、「CLK」の立ち上がりエッジが「遅延CLK」の立ち上がりエッジにある量を加えたものよりも後にくるかどうか)を決定するために使用されるセット−リセット(S−R)ラッチ回路を含むことができる。同様に、位相比較器109は、上記第2の条件が真であるかどうか(すなわち、「遅延CLK」の立ち上がりエッジが「CLK」の立ち上がりエッジにある量を加えたものよりも後にくるかどうか)を決定するために使用されるS−Rラッチ回路を含むことができる。また、位相比較器109は、上記第3の条件(すなわち、「遅延CLK」と「CLK」の立ち上がりエッジが指定された量内で一致する場合)を検出するための組合せゲートを含むことができる。当然ながら、代替実施形態において位相比較器109を実施する際に、位相比較器109の前述の機能を実行するために現在既知のまたは今後開発される任意の他の回路を使用することができる。
図3は、1つの実施形態による図1の電圧−周波数変換器104の一部分の例示的な実施形態を示す。この例示的な実施形態では、図1のプログラム可能遅延線路107を構成するために、複数の遅延要素が配列されている。より具体的には、図3に、遅延要素301A−D、302A−D、303A−D、および305A−Dを示す。また、図3の例には、それぞれ粗遅延制御(Coarse Delay Control)信号と精密遅延制御(Fine Delay Control)信号を介して遅延制御回路108によって制御されるマルチプレクサ(MUX)304および306が含まれている。この例示的な実施形態は、生成される遅延クロック信号に粗制御を行う第1の部分307(本明細書では粗遅延段と呼ぶ)と、生成される遅延クロック信号に精密制御を行う第2の部分308(本明細書では精密遅延段と呼ぶ)を有する。図3のこの例において、遅延要素301A−D、302A−Dおよび303A−Dは、MUX304と共に、粗遅延段307を構成し、遅延要素305A−DとMUX306は、精密遅延段308を構成する。
さらに図3に示したように、この例では、電圧追跡制御部105は、8ビットのトラック信号(トラック[7:0])を出力し、その各ビットが、1つまたは複数の遅延要素に入力される。より具体的には、トラック[7](すなわち、トラック信号の最上位ビット)が、粗遅延段307の遅延要素301、302および303に入力され、トラック[6]が、粗遅延段307の遅延要素301、302および303に入力され、トラック[5]が、粗遅延段307の遅延要素301、302および303に入力され、トラック[4]が、粗遅延段307の遅延要素301、302および303に入力される。トラック[3]が、精密遅延段308の遅延要素305に入力され、トラック[2]が、精密遅延段308の遅延要素305に入力され、トラック[1]が、精密遅延段308の遅延要素305に入力され、トラック[0](すなわち、トラック信号の最下位ビット)が、精密遅延段308の遅延要素305に入力される。
後で図5によりさらに詳しく説明するように、トラック信号が、ある遅延要素に対してハイ(論理1)に設定され、これによりその遅延要素が追跡モードになった場合、その遅延要素から出力される信号の遅延の量は、チップの変動電圧V1に応じて変化する。一方、トラック信号が、ある遅延要素に対してロー(論理0)に設定された場合は、遅延要素から出力される信号の遅延の量は、チップの変動電圧V1に応じて変化しない。その結果、電圧追跡制御部105は、トラック信号の各ビットごとに適切な値を出力して、遅延要素のいくつかを選択的に追跡モードにして、チップの変動電源電圧V1に対する「遅延CLK」信号の所望の感度レベルを達成することができる。
図3の例示的な実施形態に示したように、チップのクロック信号「CLK」は、第1の遅延要素301に入力され、第1の遅延要素301は、それが生成する出力信号の「CLK」信号にある量の遅延(すなわち、ゲート遅延)を与える。すなわち、第1の遅延要素301は、「CLK」信号に対してある量の遅延を有する出力信号を生成する。第1の遅延要素301の出力は、第2の遅延要素301に入力され、第2の遅延要素301は、「CLK」信号に対してさらに遅れた出力を生成する。第2の遅延要素301の出力は、第3の遅延要素301に入力され、第3の遅延要素301は、「CLK」信号に対してさらに遅れた出力を生成し、第3の遅延要素301の出力は、第4の遅延要素301に入力され、第4の遅延要素301は、「CLK」信号に対してさらに遅れた出力を生成する。第4の遅延要素301からの出力は、MUX304に第1の入力「A」として入力され、遅延要素302にも入力される。したがって、「CLK」信号は、第1の直列の遅延要素(要素301〜301)に入力され、第1の直列の遅延要素は、「CLK」信号に対して第1の遅延を有する第1の出力信号を生成する。
遅延要素301からの出力信号は、第2の直列の遅延要素302〜302に入力され、第2の直列の遅延要素302〜302は、「CLK」信号に対して遅延要素301からの出力信号よりも大きい遅延を有する第2の出力信号を(遅延要素302から)生成する。遅延要素302によって生成された出力信号は、MUX304に第2の入力「B」として入力され、遅延要素303にも入力される。
遅延要素302からの出力信号は、第3の直列の遅延要素303〜303に入力され、第3の直列の遅延要素303〜303は、「CLK」信号に対して遅延要素302からの出力信号よりも大きい遅延を有する第3の出力信号を(遅延要素303から)生成する。遅延要素303によって生成された出力信号は、MUX304に第3の入力「C」として入力される。
その結果、「CLK」信号は、第1の直列の遅延要素(要素301〜301)に入力され、第1の直列の遅延要素は、「CLK」信号に対して第1の遅延を有する第1の出力信号を生成する。第1の出力信号は、MUX304に入力Aとして入力され、第2の直列の遅延要素(要素302〜302)にも入力され、第2の直列の遅延要素は、「CLK」信号に対して第2の遅延を有する第2の出力信号を生成する。第2の出力信号は、MUX304に入力Bとして入力され、第3の直列の遅延要素(要素303〜303)にも入力され、第3の直列の遅延要素は、「CLK」信号に対して第3の遅延を有する第3の出力信号を生成する。第3の出力信号は、MUX304に入力Cとして入力される。第1の出力信号、第2の出力信号および第3の出力信号はいずれも、粗遅延制御信号により、粗遅延段307のMUX304によって出力される信号として選択することができる。
粗遅延段307からの出力は、精密遅延段308に入力される。より具体的には、粗遅延段307のMUX304からの出力信号が、精密遅延段308の第1の遅延要素305に入力される。遅延要素305は、「CLK」信号に対してある量の遅延を有する出力信号を生成する。遅延要素305の出力は、MUX306に入力「D」として入力され、また精密遅延段308の第2の遅延要素305に入力される。遅延要素305Bは、「CLK」信号に対してさらに大きな遅延を有する出力信号を生成し、この出力信号は、MUX306に入力「C」として入力され、精密遅延段308の第3の遅延要素305にも入力される。遅延要素305は、「CLK」信号に対してさらに大きな遅延を有する出力信号を生成し、この出力信号は、MUX306に入力「B」として入力され、精密遅延段308の第4の遅延要素305にも入力される。遅延要素305は、「CLK」信号に対してさらに大きな遅延を有する出力信号を生成し、この出力信号は、MUX306に入力「A」として入力される。MUX306の入力信号A、B、CおよびDはいずれも、精密遅延制御信号により、「遅延CLK」信号としてMUX306によって出力される信号として選択することができる。
この例示的な実施形態では、粗遅延段307にそれぞれ直列をなす4つの遅延要素を示し、精密遅延段308に4つの遅延要素を示したが、他の実施形態では、各段に、様々な量の遅延を提供するために必要な任意の数の遅延要素を実装することができる。さらに、粗遅延段307に3つの直列の遅延要素を示しているが、他の実施形態では、この粗遅延段307に、様々な量の遅延を提供するために必要な任意の数の直列の遅延要素を実装することができる。
さらに、この実施形態により、選択した遅延要素によって生成される「遅延CLK」信号を、チップの動作電圧V1に基づいて動的に変化させることができる。例えば、粗遅延制御部による出力にMUX304からの出力Bが選択され、精密遅延制御部による出力にMUX306から出力Aが選択されるとすると、「遅延CLK」信号は、12個の遅延要素(すなわち、遅延要素301A−D、302A−D、および305A−D)から生じる遅延を有する。この例の場合、12個の遅延要素からの遅延は、「CLK」のターゲット・クロック・サイクルの位相(例えば、2GHzクロック信号の位相)と一致するように選択される。遅延要素から出力されるこの「遅延CLK」信号は、チップの動作電圧V1に基づいて動的に変化させることができる。より具体的には、チップの動作電圧V1の変化に応じるか(感度を有するか)どうかを各遅延要素ごとにプログラムによって制御するために、電圧追跡制御部105から出力される追跡信号が使用される。後で示す図4のグラフに例示するように、チップの動作電圧V1に応じて動的に変化させるように「遅延CLK」信号の生成に関係するより多くの遅延要素をプログラムすることによって、チップの動作電圧の変化に対する「遅延CLK」信号の感度を制御することができる。
図4は、1つの実施形態について、様々な異なるトラック信号設定値に関して図3の例示的な回路によって作成される遅延の感度を示すグラフを示す。より具体的には、図4は、異なるトラック信号設定値にそれぞれ対応する5つの曲線を示す。曲線は、5つの異なるトラック信号設定値に関して、チップの様々な異なる動作電圧(V1)値にわたって図3の例示的な遅延線回路により「遅延CLK」信号に生成される遅延の量をプロットしている。この例では、チップのV_fixed(固定電圧)は1.1ボルトである。トラック信号設定値の設定に応じて、遅延された「CLK」信号に生成される遅延の量は、チップの動作電圧V1がほぼV_fixedである値(この例では1.1ボルト)よりも低下または上昇したときに変化することができる。曲線はすべて、チップの動作電圧V1が1.1ボルト(V_fixed)のときに同じ遅延を提供する。
トラック信号の適切なビットを選択的に設定することによって、チップの動作電圧V1の特定の値に対して図3の回路によって生成される遅延の量を調整することができる。例えば、図4のグラフの曲線の1つによって示したように、トラック信号のすべてのビットを0に設定すると(すなわち、トラック[7:0]=00000000)、様々な異なるV1にわたって遅延「CLK」に一定の遅延が提供される。したがって、図3の回路のすべての遅延要素に関して追跡モードが無効にされると、遅延線回路は、チップの動作電圧V1の変化に応答せず、図示の様々な動作電圧にわたって遅延「CLK」に一定の遅延を生成する。
図4のグラフに示した第2の曲線は、トラック信号の最上位ビットが設定されたとき(すなわち、トラック[7:0]=10000000)に様々な動作電圧にわたって生成される遅延の量に対応する。図3の回路では、これにより、遅延要素301、302および303が追跡モードになる。この場合、図4の対応する曲線で示したように、遅延は、チップの動作電圧の変化にある程度敏感である(すなわちある程度応答する)。
図4のグラフに示した第3の曲線は、トラック[7:0]=11000000のときに様々な動作電圧にわたって生成される遅延の量に対応する。図3の回路では、これにより、遅延要素301、302、303、301、302および303が追跡モードになる。この場合、遅延は、図4の対応する曲線で示したように、トラック[7:0]=10000000のときよりもチップの動作電圧の変化に敏感である。
図4のグラフに示した第4の曲線は、トラック[7:0]=11001000のときに様々な動作電圧にわたって生成される遅延の量に対応する。図3の回路では、これにより、粗遅延段307の遅延要素301、302、303、301、302、303が追跡モードになり、精密遅延段308の遅延要素305Aが追跡モードになる。この場合、図4の対応する曲線によって示したように、遅延は、トラック[7:0]=11000000のときよりもチップの動作電圧の変化にさらに敏感になる。
図4のグラフに示した第5の曲線は、トラック信号のすべてのビットが1(すなわち、トラック[7:0]=11111111)に設定されたときに様々な動作電圧にわたって生成される遅延の量に対応する。図3の回路では、これにより、遅延要素301A−D、302A−D、303A−D、および305A−Dのすべてが追跡モードになる。この場合、図4の対応する曲線で示したように、遅延は、チップの動作電圧の変化にきわめて敏感である。
図5に移り、1つの実施形態による図3の単一遅延要素のような遅延回路の例示的な実施形態を示す。より具体的には、図5は、遅延要素301の例示的な実施形態を示しており、図3の他の遅延要素301B−D、302A−D、303A−D、305A−Dはそれぞれ同じように実施されることができる。後でさらに詳しく説明するように、遅延要素301のこの例示的な実施形態は、反転器501および504、pFET(p形電界効果トランジスタ)502、503、507、508、510および512、ならびにnFET(n形電界効果トランジスタ)506、509、511、および513を含む。このような反転器、pFETおよびnFETは、当技術分野において周知である。一般に、FETにおいて、電流は、チャネルと呼ばれる半導体経路に沿って流れる。チャネルの一端に、ソースと呼ばれる電極がある。チャネルの他端に、ドレインと呼ばれる電極がある。チャネルの物理的直径は一定であるが、ゲートと呼ばれる制御電極に電圧を印加することによって実際上の電気的直径を変化させることができる。FETの導電性は、任意の所定の瞬間において、チャネルの電気的直径に依存する。ゲート電圧を少し変化させると、ソースからドレインへの電流を大きく変化させることができる。換言すると、ゲートに印加する電圧を変化させることによって、FETの抵抗を変化させることができる。
反転器501は、入力として「トラック」信号を受け取り、信号「トラックB」を出力する。「トラック」信号は、図3に関して説明したように、この遅延要素301に入力されるトラック信号のビットに対応する(すなわち、この例では、トラック[7]が、遅延要素301に入力されるように示されている)。前述のように、遅延要素が受け取った「トラック」ビットは、必要に応じて、遅延要素を追跡モードにするために使用される。
反転器504は、図3に示したようなチップのクロック信号「CLK」である信号「入力」を受け取る。すなわち、遅延要素301の反転器504への「入力」信号は、チップのクロック信号「CLK」である。当然ながら、図3に示したように、他の遅延要素への入力は、前の遅延要素の出力である。例えば、図3の遅延要素301の反転器504は、遅延要素301から「出力」信号(すなわち、図5において遅延要素301の「出力」と表示された信号)を受け取る。
さらに、pFET502および503が、信号「変動供給電圧(variable_supply)」(本明細書では「V1」とも呼ぶ)を受け取って「反転変動供給電圧(variable_supply_inv)」を出力するアナログ反転器を提供する。「変動供給電圧(すなわち「V1」)」は、図1に関して考察したように、チップのコア回路に供給される変動電源電圧である。また、図示したように、一定電源電圧は、本明細書では基準電源と呼ばれ、図5で「V_fixed」と示されており、遅延要素301の一部分に供給される。1つの例示的な実施形態において、図4に関して説明したように、「V_fixed」の電圧は1.1ボルトであり、アース(「GND」)は0ボルトであり、変動供給電圧は、0.75ボルト〜1.2ボルトの間で変化することができる。当然ながら、他の実施形態において、「V_fixed」とGNDの値を、回路に適した任意の値に設定することができる。nFET502とpFET503の構成は、例えば「変動供給電圧」が一定供給電圧「V_fixed」よりも200ミリボルト低い場合に、「反転変動供給電圧」がGNDよりも200ミリボルト高くなるようにアナログ反転器を提供する。より詳細には、ゲート接地pFET503が抵抗器のように働き、pFET502が通常のpFETのように働き、その結果、「変動供給電圧」の値が「V_fixed」より低くとき、「反転変動供給電圧」はGNDよりも高くなる。したがって、pFET502および503はアナログ反転を行い、出力「反転変動供給電圧」の変化は、入力「変動供給電圧」の変化に比例する。
また、nFET506およびpFET507は、伝達ゲート505を提供するように構成されている。後でさらに詳しく説明するように、伝達ゲート505の両端間の実効抵抗が、出力信号に与えられる遅延の量を制御する。伝達ゲート505の両端間の実効抵抗は、nFET506とpFET507のゲートへの入力によって制御される。
後でさらに詳しく説明するように、遅延要素301は、その遅延要素301が追跡モードとしてアクティブであるかどうかによって(すなわち、遅延要素に入力される「トラック」信号ビットの値によって)2つの異なる方式の一方の方式で動作する。この例において、遅延要素のトラック・ビットがロー(すなわち、論理0)に設定されている場合、その遅延要素301は追跡モードとしてアクティブではない。この事例では、伝達ゲート505のnFET506のゲートに「一定電圧」が提供され、伝達ゲート505のpFET507のゲートにアース(「GND」)が提供されている。一方、遅延要素のトラック・ビットがハイ(すなわち、論理1)に設定された場合は、この遅延要素301が追跡モードであり、伝達ゲート505のnFET506のゲートに「変動供給電圧」が提供され、伝達ゲート505のpFET507のゲートに「反転変動供給電圧」が提供される。nFET506とpFET507のゲートへの入力に応じて、通過ゲート505の両端間の抵抗が変化する。したがって、追跡モードがアクティブなとき、「変動供給電圧」信号と「反転変動供給電圧」信号が、伝達ゲート505の抵抗を制御し、したがって出力信号の遅延の量を制御する。より具体的には、この構成において、「変動供給電圧」信号が低くなるほど、出力信号が遅延される量が多くなる。別の状況において、追跡モードがアクティブでないとき、「V_fixed」とGNDが、伝達ゲート505の抵抗を制御してその抵抗が一定のままになるようにし、それによりその遅延要素301の出力信号の遅延が変化しないようにする。
遅延要素301のこの例示的な実施形態の動作をさらに検討するために、トラック・ビットがロー(すなわち、論理0)に設定され、それによりこの遅延要素301が追跡モードでないと想定する。この場合、反転器501から出力されるトラックB信号はハイ(すなわち、論理1)である。ローのトラック・ビット信号は、pFET510のゲートに提供され、それによりこのpFET510を効果的にオンにし(すなわち、スイッチを閉じ)、トラックB信号は、pFET508のゲートに提供され、それによりそのpFET508を効果的にオフにする(すなわち、スイッチを開く)。このように、「V_fixed」が、pFET510を介して、伝達ゲート505のnFET506のゲートに提供される。さらに、トラック・ビット信号が、nFET509のゲートに提供され、それによりこのnFET509に流れる電流が効果的に遮断され、トラックB信号が、nFET511のゲートに提供され、それによりそのpFET511に効果的に電流が流れる。これにより、アース「GND」は、nFET511を介して、伝達ゲート505のpFET507のゲートに提供される。したがって、追跡モードがアクティブでないとき、「V_fixed」とGNDは、伝達ゲート505の抵抗を制御して、抵抗を一定ままにし、それにより遅延要素301の出力信号の遅延が変化しないようにする。
次に、トラック・ビットがハイ(すなわち、論理1)に設定され、それにより遅延要素301が追跡モードになると仮定する。この場合、反転器501から出力されるトラックB信号はロー(すなわち、論理0)である。ハイのトラック・ビット信号が、pFET510のゲートに提供され、それによりそのpFET510は有効にオフになり、トラックB信号がpFET508のゲートに提供され、それによりそのpFET508が有効にオンになる。これにより、「変動供給電圧」が、pFET508を介して、伝達ゲート505のnFET506のゲートに提供される。さらに、トラック・ビット信号が、nFET509のゲートに提供され、それによりそのnFET509が有効にオンになり、トラックB信号がnFET511のゲートに提供され、それにより、そのpFET511が有効にオフになる。これにより、「反転変動供給電圧」が、nFET509を介して伝達ゲート505のpFET507のゲートに提供される。前述のように、この構成において、伝達ゲート505によって出力信号に与えられる遅延は、変動供給電圧が減少するほど長くなる。より具体的には、nFET506のゲートへの供給電圧が低くなり、pFET507のゲートへの負の(またはアース)供給電圧が高くなるほど、遅延要素301の「入力」から「出力」に送られるデータは遅くなる(すなわち、伝達ゲート505の実効抵抗が大きくなる)。
この例示的な実施形態は、さらにpFET512とnFET513を含み、このpFET512とnFET513は、反転器504の出力と駆動的に競合することによって伝達ゲート505の出力をさらに遅延させるように動作する。例えば、遅延要素301Aが追跡モードでないとき、トラックB信号はハイ(すなわち、論理1)であり、これにより、前述のように、nFET511がオンになってpFET507のゲートにGNDが供給される。また、これにより、GNDがnFET511を介してnFET513のゲートに供給され、これにより、nFET513が有効にオフになり(すなわち、スイッチが開かれ)、その結果それは出力には影響を与えない。また、追跡モードでないときは、前述のように、トラック・ビット信号はロー(すなわち、論理0)であり、これによりpFET510がオンになってnFET506のゲートに「V_fixed」が供給される。また、これにより、「V_fixed」がpFET510を介してpFET512のゲートに供給され、pFET512が有効にオフになり(すなわち、スイッチが開かれ)、それは出力には影響を与えない。
一方、遅延要素301が追跡モードの場合、トラックB信号はロー(すなわち、論理0)であり、これによりnFET511がオフになる(すなわち、スイッチが開かれる)。トラック・ビット信号がハイであり、これによりnFET509がオンにされ(すなわち、スイッチが閉じられ)、上述のように、pFET507のゲートに「反転変動供給電圧」が供給される。また、これにより、「反転変動供給電圧」が、nFET509を介してnFET513のゲートに供給される。前述のように、「変動供給電圧」が「V_fixed」よりも低いとき、「反転変動供給電圧」はGNDよりも高く、「反転変動電源」がGNDよりも高くなると、その「反転変動供給電圧」によってnFET513が部分的にオンになりえる。同様に、トラック・ビット信号がハイであるため、前述のように、トラックB信号がローであり、これによりpFET508がオンになりnFET506のゲートに「変動供給電圧」が供給される。またこれにより、「変動供給電圧」がpFET508を介してpFET512のゲートに供給され、それによりそのpFET512が部分的にオンになる。したがって、追跡モードのとき、伝達ゲート505からの出力信号は、その出力信号と駆動的に競合するpFET512とnFET513によってさらに遅延される。
図6は、1つの実施形態による図1の電圧−周波数変換回路104のようなオンチップ・クロック管理回路の動作流れ図を示す。動作ブロック601で、チップの遅延線回路107が、チップのクロック信号「CLK」の最初の位相を受け取る。動作ブロック602で、遅延線回路107の図3と図5の遅延要素301のような少なくとも1つの遅延要素が、受け取った「CLK」信号の最初の位相に対して遅れた位相を有する遅延クロック信号(「遅延CLK」)を生成する。動作ブロック603で、チップの比較回路109は、生成した「遅延CLK」信号を、チップの「CLK」信号の後の方の位相(すなわち、受け取った「CLK」信号の最初の位相よりも時間的に遅い「CLK」の位相)と比較する。動作ブロック604で、チップのクロック制御回路110は、生成した「遅延CLK」信号とチップの「CLK」信号の上記後の方の位相との比較に少なくとも部分的に基づいて、チップの「CLK」信号の周波数を変更すべきかどうか決定する。
図7は、少なくとも1つの実施形態に従って、観察されたチップの動作電圧の変化に応じてチップの「CLK」信号に対する遅延量を変化させることができる遅延「CLK」信号を生成するように動作可能な、図3の回路例と同じようなオンチップ回路の動作流れ図を示す。ここでさらに説明するように、かかる遅延信号は、例えば、チップの「CLK」信号の周波数を動的に管理する際に使用することができる。動作ブロック701で、オンチップ回路は、チップの動作電圧を観察する。例えば、図5に関して説明したように、遅延要素301は、チップの動作電圧を受け取ることができる。動作ブロック702で、オンチップ回路は、クロック信号を受け取る。例えば、図5に関して説明したように、遅延要素301は、入力としてチップの「CLK」信号を受け取ることができる。動作ブロック703で、オンチップ回路は、受け取ったクロック信号に対してある遅延量を有する遅延クロック信号を生成する。この遅延量は、観察された動作電圧の変化に応じて変化するようにプログラム的に選択可能である。例えば、「遅延CLK」信号を生成する際に遅延要素301によって与えられる遅延の量を観察された動作電圧の変化に応じて変化させるべきかどうかを、図5に関して説明したように、その遅延要素に供給されるトラック信号によってプログラム的に設定することができる。
図8は、チップの製造後にクロック管理回路を特にチップに合わせ、それにより製造されたときのチップの特定の特性(例えば、電気的特性など)を考慮できるようにクロック管理回路をチップ上に実装するための動作流れ図を示す。動作ブロック801で、図1の回路例104のように、観察されたチップの変動動作供給電圧の変化に応じてチップのクロック信号を動的に管理するためのクロック管理回路を含むチップを作成する。動作ブロック802で、例えば図3〜図5に関して前述したトラック信号を使用して、作成したチップ上のクロック管理回路の感度を、観察されたチップの変動動作電圧の変化に合わせるようにプログラムする。例えば、図3〜図5のトラック信号を使用して、(すべての遅延要素ついて追跡モードをディスエーブルにすることによって)クロック管理回路を観察されたチップの変動動作電圧の変化に応答しない(すなわち、感度を有しない)ようにすることができ、または、そのようなトラック信号をある値に設定して、チップの変動動作電圧に対するクロック管理回路の感度を任意の所望の大きさに調整することができる。
前述の実施形態は、クロック信号を動的に変化させるシステムおよび方法を提供する。より具体的には、特定の実施形態は、回路(例えば、チップ)のクロック信号の周波数を、観察された回路の動作電圧の変化に応じて動的に変化させるシステムおよび方法を提供する。特定の実施形態において、クロック信号を受け取り、回路の動作電圧に少なくとも部分的に基づいた量だけクロック信号から遅延した遅延クロック信号を生成するように動作可能な遅延線回路が提供される。例えば、チップのクロック信号「CLK」は、クロック駆動による動作(たとえば、クロック同期動作)の実行に使用するためにチップのコア回路111に供給され、また変動動作電圧V1は、チップのコア回路111に供給される。遅延線回路107は、クロック信号「CLK」を受け取り、チップのコア回路111の観察された動作電圧V1に少なくとも部分的に基づいて遅延クロック信号「遅延CLK」を生成することができる。例えば、変動動作電圧が低いほど、チップのクロック信号に対する遅延クロック信号の遅延の量が大きくなる。次に、遅延クロック信号をクロック信号と比較して(例えば、遅延クロック信号の位相をクロック信号の位相と比較して)、チップのクロック信号の周波数を調整する(例えば、増減する)べきかどうかを決定することができる。こうして、観察された動作電圧に基づいてチップのクロック周波数を動的に変化させることができる。
前述のように、特定の実施形態は、マイクロプロセッサなどの、チップ103のためのプログラム可能遅延線回路107を実装する。このプログラム可能遅延線回路107は、図3と図5に関して上述した遅延要素301のように、チップの変動動作電圧V1に基づいて遅延クロック信号に遅延を与えるために各々を選択的にアクティブにすることができる複数の遅延回路(または、「要素」)を含むことができる。したがって、受け取ったクロック信号に遅延を与えるように選択された遅延要素が多いほど、生じる遅延クロック信号に与えることができる遅延の量が多くなる。複数の遅延要素のうちの任意の1つまたは複数がチップの動作電圧V1の変動に応じて変化する遅延を与えるかどうを選択的に制御するために、制御信号(または、「トラック」信号)を使用することができる。チップの動作電圧に応じて遅延量を変化させるために遅延要素が選択されているとき、それは、本明細書では「追跡モード」で動作していると呼ばれる。
デジタル回路の速さは、動作供給電圧(動作電源電圧)、動作温度、およびその製造において生じた処理効果を含む様々な因子に依存する。例えば、デジタル回路は、一般に、電源電圧が高くなるほど動作が早くなり、電源電圧が低くなるほど動作が遅くなる。したがって、任意の所与の時間におけるチップの動作電圧に対してチップのクロック信号の周波数を動的に最適化するのが望ましい場合がある。前述のように、いくつかの実施形態は、それを行うためだけ、すなわち、任意の所与の時間に観察されたチップの動作電圧(または、「変動供給電圧」)に対してチップのクロック信号の周波数を動的に最適化するために、チップ上にクロック最適化回路(または、「電圧−周波数変換回路」または「クロック管理回路」)を設ける。
いくつかの実施形態によれば、デジタル回路の速さを測定するためにプログラム可能遅延線路が実装される。前述のように、いくつかの実施形態において、そのようなプログラム可能遅延線路107は、チップの電流動作電圧V1に基づいてチップのクロック速度を最適化するためにチップに実装されたクロック最適化回路104に含まれてもよい。例えば、1つの例示的な実施形態において、プログラム可能遅延線路107は、位相比較器109と共にチップ上に実装され、そのような回路は、チップについて観察された所与の動作電圧V1に対してチップのクロック周波数を最適化するために、システム・クロック・コントローラ110への信号を生成するために使用される。デジタル回路の速さを測定することが望ましい様々なタイプのシステムにおいて、このプログラム可能遅延線路107は、デジタル回路の速さを効果的に測定するためにデジタル回路と同じダイ上に実装されてもよく、その測定結果を利用して、例えばデジタル回路の速さ(すなわち、クロック周波数)を所望の方式(例えば、消費電力の制御のためにクロック周波数を最適化する方式)で動的に変化させることができる。
クロック最適化回路の一実施形態の動作において、チップのコア回路111に供給される変動動作電圧V1に少なくとも部分的に基づいて遅延クロック信号を生成するために、チップ上にプログラム可能遅延線路107が実装される。例えば、クロック信号「CLK」が、クロック制御回路110によって生成され、このクロック信号「CLK」は、クロック駆動動作(例えば、クロックに同期した動作)の実行に使用するためにチップのコア回路111に提供される。また、クロック信号「CLK」は、プログラム可能遅延線回路107に入力され、プログラム可能遅延線回路107は、チップの変動動作電圧V1(チップのコア回路に供給される)に基づいて、遅延クロック信号(「遅延CLK」)を生成する。例えば、動作電圧V1が低くなるほど、プログラム可能遅延線回路107によって生成される遅延クロック信号の遅延が長くなる。
位相比較器109を利用して、生成された遅延クロック信号をクロック信号の次の位相と比較して、クロック信号の周波数を調整する(例えば、増減する)べきかどうかを決定することができ、クロック信号コントローラ110は、それに従ってクロック信号の周波数を調整することができる。したがって、一般に、動作電圧V1が低くなると、遅延クロック信号の遅延が大きくなるが、これは、チップのクロック信号の周波数と比較したときにクロック信号が速すぎ、それにより(低くなった動作電圧V1がクロック信号の周波数をサポートできるように)クロック信号を遅くしなければならないこと示す。一方、動作電圧V1が高くなると、遅延クロック信号の遅延が小さくなるが、これは、チップのクロック信号の周波数と比較したときにクロック信号が遅すぎ、これにより(チップのクロックが高くなった動作電圧V1がサポートする最適な周波数で動作するように)クロック信号を速くしなければならないことを示す。
前述のように、いくつかの実施形態において、「トラック」信号を使用して遅延線回路107をプログラムすることができる。例えば、図3〜図5に関して上述したように、複数の遅延要素を実装し、必要に応じてその遅延要素のうちのどれを「追跡モード」動作にするかを指定するためにトラック信号を使用することができる。追跡モードにされた遅延要素が多いほど、変動動作電圧V1の変動に対する遅延線回路107の感度が高くなる。例えば、1つの遅延要素が追跡モードの場合、遅延クロック信号の遅延は、動作電圧V1が低くなるほど大きくなり、2つの遅延要素が追跡モードの場合、遅延クロック信号の遅延は、動作電圧V1の変化により敏感になる(例えば、動作電圧V1が所与の大きさだけ低下した場合に遅延クロック信号の遅延が大きくなる)。したがって、かかるプログラム可能遅延線回路107を、チップ103を製造した後で、特にそのチップ103に遅延を合わせるようにプログラムすることができ、それによりチップの真の特性が考慮される。すなわち、チップの動作電圧V1の変化に対するチップのクロック信号の感度は、その特定のチップ103に合わせるようにプログラムすることができる。
前に図5によって説明したように、特定の実施形態において、チップ上に実装された各遅延要素は、トラック信号の値に依存して一定の供給電圧と変動供給(動作)電圧のどちらかが提供される伝達ゲートを含む。例えば、ある遅延要素と関連したトラック信号が1に設定された場合は(追跡モードにするため)、その遅延要素の伝達ゲートに変動動作電圧が提供され、トラック信号が0に設定された場合は(追跡モードを解除するため)、その遅延要素の伝達ゲートに一定の供給電圧が提供される。入力信号(例えば、チップのクロック信号)の遅延の量を制御して遅延されたクロック信号を生成するために、伝達ゲートに提供される供給電圧によって伝達ゲートの抵抗が効果的に制御される。例えば、伝達ゲートに変動動作電圧が提供される場合(すなわち、遅延要素が追跡モードのとき)、その遅延要素が入力クロック信号を遅延させる量は、動作電圧が低くなるほど大きくなり、またその逆も成り立つ。
本発明による少なくとも1つの実施形態において、システムは、クロック信号を利用して動作を実行するための手段(111)を備える。システムはさらに、その実行手段に変動する動作電圧を供給するための手段(101)と、その変動する動作電圧の観察された変化に応答してクロック信号の周波数を動的に変更するための手段(104)を備える。
チップのクロック信号を動的に変化させるための1実施形態の実施例を含むシステムの一部分を示す図である。 チップのクロック信号を管理するために電圧−周波数変換器の1実施形態における、チップのクロック信号を遅延クロック信号と比較するときに遭遇する可能性のある例示的なシナリオを示す図である。 チップのクロック信号を管理するために電圧−周波数変換器の1実施形態における、チップのクロック信号を遅延クロック信号と比較するときに遭遇する可能性のある例示的なシナリオを示す図である。 チップのクロック信号を管理するために電圧−周波数変換器の1実施形態における、チップのクロック信号を遅延クロック信号と比較するときに遭遇する可能性のある例示的なシナリオを示す図である。 1実施形態による、図1の電圧−周波数変換器の一部分の実施例を示す図である。 1実施形態による、様々な異なるトラック信号設定値に対して図3の回路例によって生成される遅延の感度を示すグラフである。 1実施形態による図3の電圧−周波数変換器の遅延要素の実施例を示す図である。 1実施形態の例示的な動作流れ図である。 1実施形態によるもう1つの例示的な動作流れ図である。 1実施形態によるプログラム可能なオンチップ・クロック管理回路を実施するための例示的な動作流れ図である。
符号の説明
100 システム
101 電源(供給電圧)
103 チップ
104 電圧−周波数変換回路
105 電圧追跡制御部
107 プログラム可能遅延線路
111 コア回路

Claims (10)

  1. クロック信号を利用して動作を実行する手段(111)と、
    前記実行する手段に変動動作電圧を供給する手段(101)と、
    観察された前記変動動作電圧の変化に応答して前記クロック信号の周波数を動的に変化させる手段(104)
    とを有するシステム。
  2. 動的に変化させる前記手段が、
    前記クロック信号の最初の位相を受け取り、前記クロック信号の前記受け取った最初の位相に対してある遅延を有する遅延クロック信号を生成する手段(107)と、
    前記生成された遅延クロック信号を前記クロック信号の第2の位相と比較する手段(109)とを有することからなる、請求項1に記載のシステム。
  3. 前記動作電圧のある値に対して前記遅延クロック信号に生成される遅延の量をプログラムするための手段(105)をさらに有する、請求項2に記載のシステム。
  4. 前記比較する手段に少なくとも部分的に基づいて前記クロック信号を制御するための手段(110)をさらに有し、前記生成された遅延クロック信号が前記クロック信号の前記第2の位相よりも進んでいる場合には、前記制御する手段が前記クロック周波数を高くし、前記生成された遅延クロック信号が前記クロック信号の前記第2の位相より遅れている場合には、前記制御する手段が前記クロック周波数を下げることからなる、請求項2に記載のシステム。
  5. 電圧−周波数変換回路であって、
    クロック信号を受け取り、受け取ったクロック信号に対してある遅延量を有する遅延クロック信号を出力する少なくとも1つの遅延要素(301)を有し、前記少なくとも1つの遅延要素が、トラック信号(TRACK)の値に基づいて一定供給電圧(V_fixed)と変動供給電圧(variable_supply)のいずれかが提供される伝達ゲート(505)を有し、前記変動供給電圧が前記伝達ゲートに提供された場合には、前記伝達ゲートは、前記変動供給電圧の変化に応答して前記遅延クロック信号の前記遅延量を変化させることからなる、電圧−周波数変換回路。
  6. 前記遅延クロック信号を生成するために、前記受け取ったクロック信号に遅延を与えるようにそれぞれが動作可能な複数の遅延要素(301A−D、302A−D、303A−D、305A−D)をさらに備える、請求項5に記載の電圧−周波数変換回路。
  7. 前記遅延クロック信号を生成するために、前記複数の遅延要素のうち、前記受け取ったクロック信号に遅延を与える際に使用される所望の数の遅延要素を選択するための遅延制御回路(108)をさらに備える、請求項6に記載の電圧−周波数変換回路。
  8. 前記複数の遅延要素のそれぞれにトラック信号を入力して、各遅延要素の前記伝達ゲートが、前記受け取ったクロック信号に前記遅延要素によって与えられる前記遅延量を前記変動供給電圧の変化に応答して変化させるかどうかを制御するためのトラック制御回路(105)をさらに備える、請求項6に記載の電圧−周波数変換回路。
  9. チップのクロック信号の最初の位相を前記チップの遅延線回路で受け取るステップ(601)と、
    前記遅延線回路の少なくとも1つの遅延要素によって、前記受け取ったクロック信号の前記最初の位相に対して遅れた位相を有する遅延クロック信号を生成するステップ(602)と、
    前記チップ上の比較回路によって、前記生成された遅延クロック信号を前記チップのクロック信号の後の方の位相と比較するステップ(603)であって、前記チップのクロック信号の前記後の方の位相が、前記チップのクロック信号の前記最初の位相よりも遅れていることからなる、ステップと、
    前記チップ上のクロック制御回路によって、前記生成された遅延クロック信号と前記チップのクロック信号の前記後の方の位相との比較に少なくとも部分的に基づいて、前記チップのクロック信号の周波数を変化させるかどうかを決定するステップ(604)
    とを含む、方法。
  10. オンチップ回路によって、チップの動作電圧を観察するステップ(701)と、
    クロック信号を受け取り(702)、オンチップ回路により前記受け取ったクロック信号に対してある遅延量を有する遅延クロック信号を生成する(703)ステップ
    とを含み、前記遅延量が、前記観察された動作電圧の変化に応じて変更するためにプログラム的に選択可能である、方法。
JP2004323479A 2003-11-07 2004-11-08 クロック信号を動的に変化させるためのシステムおよび方法 Expired - Fee Related JP4033856B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US10/704,252 US6927605B2 (en) 2003-11-07 2003-11-07 System and method for dynamically varying a clock signal

Publications (2)

Publication Number Publication Date
JP2005141757A true JP2005141757A (ja) 2005-06-02
JP4033856B2 JP4033856B2 (ja) 2008-01-16

Family

ID=34552076

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004323479A Expired - Fee Related JP4033856B2 (ja) 2003-11-07 2004-11-08 クロック信号を動的に変化させるためのシステムおよび方法

Country Status (3)

Country Link
US (2) US6927605B2 (ja)
JP (1) JP4033856B2 (ja)
DE (1) DE102004034864B4 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008099878A1 (ja) * 2007-02-14 2008-08-21 Nec Corporation 半導体集積回路装置
JP2013211416A (ja) * 2012-03-30 2013-10-10 Lapis Semiconductor Co Ltd 動作マージン制御回路、半導体装置、電子機器、及び動作マージン制御方法
CN105828461A (zh) * 2016-05-16 2016-08-03 苏州经贸职业技术学院 一种电加热设备关机延时降温控制电路及降温保护方法

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7155617B2 (en) * 2002-08-01 2006-12-26 Texas Instruments Incorporated Methods and systems for performing dynamic power management via frequency and voltage scaling
US7224563B2 (en) * 2003-06-20 2007-05-29 Hewlett-Packard Development Company, L.P. Method and device for circuit control
US6927605B2 (en) * 2003-11-07 2005-08-09 Hewlett-Packard Development Company, L.P. System and method for dynamically varying a clock signal
US7437580B2 (en) * 2004-05-05 2008-10-14 Qualcomm Incorporated Dynamic voltage scaling system
JP2005321403A (ja) * 2004-05-10 2005-11-17 Ibeo Automobile Sensor Gmbh 距離測定のための方法及び装置
US7587622B2 (en) 2005-01-11 2009-09-08 Altera Corporation Power management of components having clock processing circuits
US7227395B1 (en) * 2005-02-09 2007-06-05 Altera Corporation High-performance memory interface circuit architecture
US7012956B1 (en) * 2005-02-11 2006-03-14 International Business Machines Corporation Circuit for optimizing a delay line used to de-skew received data signals relative to a received clock signal
JP4761833B2 (ja) * 2005-05-24 2011-08-31 株式会社東芝 半導体装置及びシステム
US20070150765A1 (en) * 2005-12-26 2007-06-28 Takayuki Ochiai Information processing apparatus having electronic device whose operating speed is controlled, and method of controlling the operating speed of the electronic device
JP5377843B2 (ja) * 2007-09-13 2013-12-25 ピーエスフォー ルクスコ エスエイアールエル タイミング制御回路及び半導体記憶装置
TWI349228B (en) * 2007-10-17 2011-09-21 Ind Tech Res Inst Speed-level calculator and calculating method for dynamic voltage scaling
US20090210740A1 (en) * 2008-02-14 2009-08-20 Song Huang Off-chip access workload characterization methodology for optimizing computing efficiency
WO2009131592A1 (en) * 2008-04-21 2009-10-29 Cluster Resources, Inc. System and method for managing energy consumption in a compute environment
US9405348B2 (en) 2008-04-21 2016-08-02 Adaptive Computing Enterprises, Inc System and method for managing energy consumption in a compute environment
FR2932336B1 (fr) * 2008-06-06 2010-06-18 Tiempo Circuit asynchrone insensible aux delais avec circuit d'insertion de delai
US8060766B2 (en) * 2009-03-06 2011-11-15 Oracle America, Inc. Microprocessor performance and power optimization through inductive voltage droop monitoring and correction
JP2011114773A (ja) * 2009-11-30 2011-06-09 Elpida Memory Inc 半導体装置、半導体装置の制御方法及び該半導体装置を用いたシステム
US8694811B2 (en) * 2010-10-29 2014-04-08 Texas Instruments Incorporated Power management for digital devices
WO2015097657A2 (en) * 2013-12-23 2015-07-02 Marvell Israel (M.I.S.L) Ltd. Apparatus and method for reacting to a change in supply voltage
JP6418971B2 (ja) * 2015-02-05 2018-11-07 キヤノン株式会社 情報処理装置及びその制御方法
US10503184B2 (en) * 2018-03-16 2019-12-10 Ambient Scientific, Inc. Dynamic adjustment of operating conditions of integrated circuits
US11281249B2 (en) 2019-09-23 2022-03-22 International Business Machines Corporation Voltage sensitive current circuit
US11204635B2 (en) * 2019-09-23 2021-12-21 International Business Machines Corporation Droop detection using power supply sensitive delay

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4330750A (en) * 1979-03-13 1982-05-18 International Computers Limited Variable delay circuits
US5153535A (en) * 1989-06-30 1992-10-06 Poget Computer Corporation Power supply and oscillator for a computer system providing automatic selection of supply voltage and frequency
US5135535A (en) * 1991-06-11 1992-08-04 Advanced Cardiovascular Systems, Inc. Catheter system with catheter and guidewire exchange
JP2837054B2 (ja) 1992-09-04 1998-12-14 三菱電機株式会社 絶縁ゲート型半導体装置
JPH06125252A (ja) * 1992-09-28 1994-05-06 Nec Ic Microcomput Syst Ltd 遅延回路装置
DE69308131T2 (de) 1993-08-18 1997-05-28 Cons Ric Microelettronica Schaltung zur Begrenzung des Maximalstroms, den ein Leistungstransistor an eine Last liefert
GB9423076D0 (en) 1994-10-12 1995-01-04 Philips Electronics Uk Ltd A protected switch
US5734585A (en) * 1994-11-07 1998-03-31 Norand Corporation Method and apparatus for sequencing power delivery in mixed supply computer systems
US5585749A (en) * 1994-12-27 1996-12-17 Motorola, Inc. High current driver providing battery overload protection
US5729158A (en) * 1995-07-07 1998-03-17 Sun Microsystems, Inc. Parametric tuning of an integrated circuit after fabrication
US5867644A (en) 1996-09-10 1999-02-02 Hewlett Packard Company System and method for on-chip debug support and performance monitoring in a microprocessor
US5880671A (en) 1996-10-31 1999-03-09 Hewlett-Packard Company Flexible circuitry and method for detecting signal patterns on a bus
US6092030A (en) * 1997-04-02 2000-07-18 Credence Systems Corporation Timing delay generator and method including compensation for environmental variation
US6336157B1 (en) * 1998-10-30 2002-01-01 Agilent Technologies, Inc. Deterministic error notification and event reordering mechanism provide a host processor to access complete state information of an interface controller for efficient error recovery
US6144187A (en) 1998-11-12 2000-11-07 Fairchild Semiconductor Corporation Power measurement for adaptive battery charger
US6157231A (en) * 1999-03-19 2000-12-05 Credence System Corporation Delay stabilization system for an integrated circuit
US6229364B1 (en) * 1999-03-23 2001-05-08 Infineon Technologies North America Corp. Frequency range trimming for a delay line
US6127816A (en) * 1999-08-04 2000-10-03 Hewlett-Packard Company Multiple frequency switching power supply and methods to operate a switching power supply
US6316987B1 (en) * 1999-10-22 2001-11-13 Velio Communications, Inc. Low-power low-jitter variable delay timing circuit
JP2002100967A (ja) * 2000-03-17 2002-04-05 Sony Corp 電源電圧制御装置、半導体装置およびその駆動方法
US6785829B1 (en) * 2000-06-30 2004-08-31 Intel Corporation Multiple operating frequencies in a processor
US20030074591A1 (en) * 2001-10-17 2003-04-17 Mcclendon Thomas W. Self adjusting clocks in computer systems that adjust in response to changes in their environment
JP3794312B2 (ja) * 2001-11-08 2006-07-05 ソニー株式会社 電源電圧周波数制御回路
US6784707B2 (en) * 2002-07-10 2004-08-31 The Board Of Trustees Of The University Of Illinois Delay locked loop clock generator
KR100935574B1 (ko) * 2002-11-04 2010-01-07 삼성전자주식회사 Cpu 과열방지시스템
US8086884B2 (en) * 2002-12-16 2011-12-27 Hewlett-Packard Development Company, L.P. System and method for implementing an integrated circuit having dynamically variable power limit
US8125261B2 (en) * 2003-07-22 2012-02-28 Nec Corporation Multi-power source semiconductor device
US7225349B2 (en) * 2003-07-25 2007-05-29 Intel Corporation Power supply voltage droop compensated clock modulation for microprocessors
US7154259B2 (en) * 2003-10-23 2006-12-26 Formfactor, Inc. Isolation buffers with controlled equal time delays
US6927605B2 (en) * 2003-11-07 2005-08-09 Hewlett-Packard Development Company, L.P. System and method for dynamically varying a clock signal

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008099878A1 (ja) * 2007-02-14 2008-08-21 Nec Corporation 半導体集積回路装置
US8004348B2 (en) 2007-02-14 2011-08-23 Nec Corporation Semiconductor circuit device controlling power source voltage
JP5359279B2 (ja) * 2007-02-14 2013-12-04 日本電気株式会社 半導体集積回路装置
JP2013211416A (ja) * 2012-03-30 2013-10-10 Lapis Semiconductor Co Ltd 動作マージン制御回路、半導体装置、電子機器、及び動作マージン制御方法
CN105828461A (zh) * 2016-05-16 2016-08-03 苏州经贸职业技术学院 一种电加热设备关机延时降温控制电路及降温保护方法
CN105828461B (zh) * 2016-05-16 2022-04-26 苏州经贸职业技术学院 一种电加热设备关机延时降温控制电路及降温保护方法

Also Published As

Publication number Publication date
DE102004034864A1 (de) 2005-06-16
US6927605B2 (en) 2005-08-09
US7394301B2 (en) 2008-07-01
US20050231259A1 (en) 2005-10-20
JP4033856B2 (ja) 2008-01-16
DE102004034864B4 (de) 2007-05-24
US20050099210A1 (en) 2005-05-12

Similar Documents

Publication Publication Date Title
JP4033856B2 (ja) クロック信号を動的に変化させるためのシステムおよび方法
US7779281B1 (en) Controlling input power
US8395440B2 (en) Apparatus and method for controlling power gating in an integrated circuit
JP5437077B2 (ja) プロセッサと電力システムとを備えるシステム及びこれの動作方法
US7076672B2 (en) Method and apparatus for performance effective power throttling
US6509788B2 (en) System and method utilizing on-chip voltage controlled frequency modulation to manage power consumption
JP6609319B2 (ja) 高速のスタートアップのスタンドバイモードを有するクロック生成回路
EP3164780B1 (en) Multi-domain heterogeneous process-voltage-temperature tracking for integrated circuit power reduction
EP3139244B1 (en) Power-control devices
JP2010160801A (ja) ダイナミック電圧スケーリングシステム
JP2007520008A (ja) デジタル処理システムにおけるオーバークロックのための方法及び装置
WO2013078311A1 (en) Frequency scaling of variable speed systems for fast response and power reduction
US7487370B2 (en) Semiconductor device and system
JP2008522258A (ja) 選択的なパワー・ゲーティングを用いて電力消費を低減する装置及び方法
US8402288B2 (en) Apparatus and method for controlling voltage and frequency using multiple reference circuits
US9824773B1 (en) Apparatus and method to adjust power and performance of integrated circuits
US11307244B2 (en) Adaptive voltage scaling methods and systems therefor
US20230195207A1 (en) Electronic device and method of controlling temperature in same

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070109

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070316

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070322

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070709

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20071016

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071023

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101102

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4033856

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111102

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121102

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131102

Year of fee payment: 6

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R360 Written notification for declining of transfer of rights

Free format text: JAPANESE INTERMEDIATE CODE: R360

R371 Transfer withdrawn

Free format text: JAPANESE INTERMEDIATE CODE: R371

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees