JP5259877B2 - 適応電圧スケーラ(avs)、電圧レベルをスケーリングする方法、回路、及び、コンピュータ可読媒体 - Google Patents

適応電圧スケーラ(avs)、電圧レベルをスケーリングする方法、回路、及び、コンピュータ可読媒体 Download PDF

Info

Publication number
JP5259877B2
JP5259877B2 JP2012502323A JP2012502323A JP5259877B2 JP 5259877 B2 JP5259877 B2 JP 5259877B2 JP 2012502323 A JP2012502323 A JP 2012502323A JP 2012502323 A JP2012502323 A JP 2012502323A JP 5259877 B2 JP5259877 B2 JP 5259877B2
Authority
JP
Japan
Prior art keywords
avs
voltage level
operating frequency
circuit
functional circuit
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.)
Active
Application number
JP2012502323A
Other languages
English (en)
Other versions
JP2012522293A (ja
Inventor
リチャード・エー・ムーア
ジェラルド・ピー・ミハラク
ジェフリー・ティー・ブリッジス
Original Assignee
クアルコム,インコーポレイテッド
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 クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2012522293A publication Critical patent/JP2012522293A/ja
Application granted granted Critical
Publication of JP5259877B2 publication Critical patent/JP5259877B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05FSYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
    • G05F1/00Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
    • G05F1/10Regulating voltage or current
    • G05F1/46Regulating voltage or current wherein the variable actually regulated by the final control device is dc
    • G05F1/462Regulating voltage or current wherein the variable actually regulated by the final control device is dc as a function of the requirements of the load, e.g. delay, temperature, specific voltage/current characteristic
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • 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
    • 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
    • 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
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/01Details
    • H03K3/012Modifications of generator to improve response time or to decrease power consumption
    • 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 Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Electromagnetism (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Automation & Control Theory (AREA)
  • Power Sources (AREA)

Description

関連出願
本出願は、各々の全体が参照により本明細書に組み込まれる、2009年3月30日に出願された米国仮特許出願第61/164,882号および2009年7月2日に出願された米国仮特許出願第61/222,779号の優先権および利益を主張する。
本出願の技術は、所与の動作周波数において回路に電力供給する電圧レベルを制御するための適応電圧スケーラ(AVS)および関係するシステムに関する。
たとえば中央処理ユニット(CPU)やデジタル信号プロセッサ(DSP)など、同期デジタル回路は、回路中の論理のタイミングを合わせるためにクロック信号を必要とする。クロック信号の周波数は、論理のスイッチング速度またはレート、したがって回路のパフォーマンスを制御する。動作周波数と電圧レベルとの間には関係がある。動作周波数が増加すると、適切な動作のために回路に電力供給するために必要な最小電圧レベルが増加する。したがって、動作周波数が増加すると、概して、電力消費が増える。回路に電力供給する電圧レベルを低下させることによって、電力消費を減少させることができる。しかしながら、電圧レベルが減少すると、回路の可能な最大動作周波数が減少する。適切な動作のために必要な、回路の最小しきい値電圧レベルに達するまで、電圧レベルを減少させることができる。
概して、回路の動作周波数を最大にすることによって回路のパフォーマンスを最大にすることが望まれるが、動作周波数を最大にすることが必要とされないかまたは望まれない場合があり得る。この場合、回路の適切な動作に影響を及ぼすことなしに、電力を節約するために、回路に電力供給する電圧レベルを低減することができる。この点について、ダイナミック電圧スケーラ(DVS)が採用され得る。DVSは、回路の所望の動作周波数を判断し、所望の動作周波数において回路のためのクロック信号を生成するようにクロック発生器を制御することができる。DVSはまた、判断された動作周波数を使用して、回路の最小電圧レベルを判断することができる。DVSは、次いで、所望の最小電圧レベルを生成するように電圧調整器を制御することができる。このようにして、DVSは、適切な回路動作を維持しながら、電力を節約するために、所与の動作周波数において電圧を最小電圧レベルに調整することができる。
他のファクタが、所与の動作周波数において回路に電力供給するために必要とされる最小電圧レベルを上げ得る。たとえば、同期デジタル回路とそれらの構成要素とを製造するために使用されるナノメートル集積回路(IC)プロセスの変動性は、遅延変動を生じ得る。トランジスタの動作温度や時効効果などの環境条件は、伝搬遅延に影響を及ぼし得る。電圧源によって供給される電圧レベルは、電流ドローの変動により瞬間的に低下し、したがってパフォーマンスを瞬間的に低下させ得る。この点について、DVSは、実際にはワーストケース遅延シナリオが常に存在するわけではないが、適切な回路動作を保証するために、ワーストケース遅延シナリオに従って回路の最小電圧レベルを制御するように構成され得る。ワーストケース遅延シナリオが存在しないとき、電圧レベルは低下することがあり、回路は適切に動作する。特定の時間における、所与の動作周波数に対するワーストケース最小電圧レベルと、回路に電力供給するために必要とされる実際の最小電圧レベルとの差は、電圧または電力マージンとして知られている。電圧マージンは、所与の動作周波数において回路が適切に動作するために、理想的には消費される必要がなかった消費電力を表す。
発明を実施するための形態で開示する実施形態は、適応電圧スケーラ(AVS)、AVSシステム、ならびに関係する回路および方法を含む。AVSおよびAVSシステム、回路、および方法は、電圧マージンを回避または低減するために、機能回路のターゲット動作周波数と遅延変動条件とに基づいて、機能回路に電力供給する電圧レベルを適応的に調整するように構成される。電圧マージンを回避または低減することにより、機能回路の適切な動作を維持しながら電力を節約することができる。遅延変動は、各AVSおよび機能回路に固有の1つまたは複数の製造ばらつき、および/または環境条件の変動によって引き起こされる1つまたは複数の動作変動を含み得る。遅延変動条件は、動作周波数と、機能回路の適切な動作のために必要な最小電圧レベルとの間の関係をシフトし得る。機能回路は、一例として同期デジタル回路であり得る。AVSはまた、機能回路の動作周波数と電圧レベルとを設定するための、ダイナミック電圧スケーラ(DVS)への追加の電圧スケーラとして含まれ得る。
一実施形態では、AVSは、入力信号を受信するように構成された少なくとも1つの遅延回路を含む。AVSは、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する遅延量だけ入力信号を遅延させる。AVSはまた、AVSデータベースに結合されたAVS回路を含む。AVS回路は遅延出力信号に応答する。AVS回路は、機能回路の動作周波数と遅延出力信号中の遅延情報とに関連付けられた、データベース中の電圧レベルに基づいて電圧レベル設定信号を発生するように構成される。AVSデータベースは、電圧マージンを回避または低減するために、機能回路の様々な動作周波数に対する電圧レベルを記憶するように構成され得る。
別の実施形態では、AVSデータベースは、機能回路の所与の動作周波数についてAVSによって前に探査された学習電圧レベル設定を記憶するように構成され得る。このようにして、AVS回路は、機能回路の新しい動作周波数が与えられた後、機能回路中で新しい動作周波数が安定するのを待つ必要なしに、迅速な電圧レベル判断を行うことができる。AVSデータベースは、学習電圧レベルを用いて更新され続けるように構成され得る。AVS回路は、AVSデータベース中の学習電圧レベルを更新し得る。AVSデータベースは、突破してはならない、すべての動作周波数に対する最小電圧レベル設定を用いて構成され得る。この場合、機能回路が適切に動作するための最小電圧レベル設定よりも低い、判断された学習電圧レベルは、電圧レベルを設定するために使用されない。
AVSデータベース中の最小電圧レベル設定は、無効動作領域中で機能回路を動作させる危険を冒すことを回避するために、電圧レベルに許容差電圧マージンを与えるように構成され得る。しかしながら、別の実施形態では、AVS回路は、許容差電圧マージンをさらに回避または低減するために、ランタイム動作中に機能回路の無効動作領域を探査するように構成される。この実施形態では、AVSは、入力信号を受信することと、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する量だけ入力信号を遅延させることとを行うように構成された少なくとも1つの遅延回路を含み得る。AVSはまた、遅延出力信号に応答するAVS回路を含み得る。AVS回路は、機能回路のターゲット動作周波数と遅延出力信号中の遅延情報とに基づいて電圧レベル設定信号を発生するように構成され得る。AVS回路はまた、機能回路の無効動作領域を探査するために、機能回路の増加動作周波数をシミュレートするために少なくとも1つの遅延経路の遅延を増加させるように構成され得る。AVS回路は、許容差電圧マージンをさらに回避または低減するために、無効動作領域への遷移のポイントを使用して、現在の動作周波数に対する修正電圧レベル設定を判断することができる。
別の実施形態では、AVS回路は、所与の動作周波数に対する電圧レベル設定でのAVSデータベースのポピュレーションを加速するように構成され得る。AVS回路が現在の動作周波数に対する電圧レベルを学習すると、AVS回路は、AVSデータベース中のより低い動作周波数に対する電圧レベルを調べる。より低い動作周波数に対する記憶された電圧レベルが現在の動作周波数に対する学習電圧レベルよりも大きい場合、AVS回路は、より低い動作周波数に対する電圧レベルを、AVSデータベース中のより低い学習電圧レベルと置き換えることができる。機能回路は、より低い動作周波数に対する学習電圧レベルにおいて適切に動作することが可能であることが知られている。このようにして、AVSデータベースは、動作中に電圧マージンがより急速に回避または低減されるように、可能な場合、より低い電圧設定で、より急速にポピュレートされる。
別の実施形態では、機能回路の現在の動作温度レベルを与えるために、温度センサがAVSに組み込まれる。機能回路の動作温度は、機能回路の所与の動作周波数に対する最小電圧レベル設定をシフトし得る。AVS回路は、動作温度レベルを使用して、動作温度レベルに応じて電圧レベルをAVSデータベースに記憶し、更新する。AVS回路はまた、温度センサから受信された動作温度レベルを使用して、動作中に、現在の動作周波数と動作温度レベルとに対応する電圧レベルを選択することができる。このようにして、電圧マージンを回避または低減するために、動作温度に基づく、所与の動作周波数に対する電圧レベルのシフトを考慮に入れるとともに、無効動作領域中で機能回路を動作させることを回避することもできる。AVS回路は、動作温度レベルに応じた電圧レベルをAVSデータベースに記憶することができる。たとえば、AVSデータベースは、それぞれが異なる動作温度領域に対応する複数の学習電圧レベル設定テーブルを含み得る。
別の実施形態では、AVSは、電圧レベルが機能回路を無効動作領域中でいつ動作させたかを学習するように構成され得る。この実施形態では、入力信号を受信することと、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する量だけ入力信号を遅延させることとを行うように構成された少なくとも1つの遅延回路を含むAVSが提供され得る。AVSは、遅延出力信号に応答するAVS回路であって、遅延出力信号中の遅延情報に基づいて電圧レベル設定信号を発生するように構成されたAVS回路を含み得る。AVS回路は、電圧レベルが機能回路を無効動作領域中で動作させた場合、電圧レベル設定信号に電圧マージンを追加するようにさらに構成され得る。このようにして、AVS回路は、現在の動作周波数に対する電圧レベル設定を増加させることによって、AVSデータベース中の現在の電圧レベル設定を「バックアウトする」ように構成され得る。
別の実施形態では、AVSは、負バイアス温度不安定性(NBTI)について電圧レベルを補償するように構成され得る。この実施形態では、AVSは、入力信号を受信することと、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する量だけ入力信号を遅延させることとを行うように構成された少なくとも1つの遅延回路を含み得る。AVSはまた、遅延出力信号に応答するAVS回路であって、遅延出力信号中の遅延情報と、機能回路の経年変化インジケータに基づく電圧レベル補正とに基づいて、電圧レベル設定信号を発生するように構成されたAVS回路を含み得る。このようにして、AVSは、動作周波数に対する最小電圧レベルを時間とともに上げることによって、NBTIを補償するように構成され得る。AVSは、AVSデータベース中で最小電圧レベルを時間とともに上げるように構成され得る。いずれかの動作周波数に対する判断された電圧レベルが補償最小電圧レベルより下である場合、AVSは、補償最小電圧レベル設定をエンフォースするように構成され得る。学習電圧レベルは、AVSデータベース中の補償電圧レベルを用いて更新され得る。
別の実施形態では、機能回路に対する電圧レベルをスケーリングする方法が提供される。本方法は、少なくとも1つの遅延回路中で入力信号を受信するステップを含む。本方法は、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する遅延量だけ入力信号を遅延させるステップと、機能回路のターゲット動作周波数と、遅延出力信号中の遅延情報とに関連付けられた、データベース中の電圧レベルに基づいて電圧レベル設定信号を発生するステップとをさらに含む。
別の実施形態では、コンピュータ実行可能命令を記憶したコンピュータ可読媒体が提供される。AVSモジュールに、機能回路のターゲット動作周波数と、機能回路の少なくとも1つの遅延経路に関係する遅延量を表す遅延出力信号中の遅延情報とに関連付けられた、データベース中の電圧レベルに基づいて電圧レベル設定信号を発生させるための命令が提供される。
例示的な適応電圧スケーラ(AVS)、AVSシステムおよび機能回路の概略図である。 AVSデータベースに記憶された例示的なAVS周波数/電圧レベルテーブルである。 機能回路の動作領域を示す例示的な動作周波数対電圧レベル図である。 電圧マージンを回避または低減するために、動作周波数に基づいて機能回路の電圧レベルを設定するために学習電圧レベルを適応的に記憶し、使用するために、AVSデータベースを利用するための例示的なプロセスを与えるフローチャートである。 図1中のAVSの制御下でクロック発生器によって発生されるクロック信号の例示的な動作周波数タイミング図である。 図1中のAVSの制御下で電圧調整器によって発生される電圧信号の例示的な電圧レベルタイミング図である。 新しい動作周波数が安定するのを待つ必要なしに、AVSによって新しい電圧レベルを設定することができなかった場合の、電圧信号の例示的な電圧レベルタイミング図である。 探査された動作周波数に対する学習電圧レベルを記憶するためにAVSデータベース中に含まれ得る例示的なAVS学習値テーブルである。 機能回路の様々な動作領域を示す例示的な動作周波数対電圧レベル図である。 所与の動作周波数における機能回路の無効動作領域を探査し、そのような探査に基づく修正電圧レベルを記憶するための例示的なプロセスを与えるフローチャートである。 機能回路の動作領域を示す例示的な動作周波数対電圧レベル図である。 AVSデータベースに記憶された例示的なAVS周波数/電圧レベルテーブルである。 AVSデータベースに記憶された例示的な電圧レベル差テーブルである。 AVSデータベース中の所与の動作周波数に対する電圧レベルのポピュレーションを加速するための例示的なプロセスを与えるフローチャートである。 AVSデータベース中の電圧レベルの加速されたポピュレーションの例である。 様々な動作温度についての、AVSデータベースに記憶された例示的なAVS動作周波数/電圧レベルテーブルである。 機能回路が無効動作領域に入ったとき、電圧レベルに電圧マージンを追加するための例示的なプロセスを与えるフローチャートである。 様々な動作周波数に対応する、AVSデータベースに記憶された例示的な最小電圧レベル限界テーブルである。 機能回路の様々な動作領域を示す例示的な動作周波数対電圧図である。 負バイアス温度不安定性(NBTI)効果に基づいて、AVSデータベース中の電圧レベルに電圧レベル補正を追加するための例示的なプロセスを与えるフローチャートである。 別の例示的なAVSシステムの概略図である。 AVSを採用する例示的な中央処理ユニット(CPU)機能回路および関係するシステムのブロック図。
次に図面を参照しながら、本開示のいくつかの例示的な実施形態について説明する。「例示的」という単語は、本明細書では「例、事例、または例示の働きをすること」を意味するために使用する。本明細書で「例示的」と記載されたいかなる実施形態も、必ずしも他の実施形態よりも好ましいまたは有利であると解釈すべきではない。
発明を実施するための形態で開示する実施形態は、適応電圧スケーラ(AVS)、AVSシステム、ならびに関係する回路および方法を含む。AVSおよびAVSシステム、回路、および方法は、電圧マージンを回避または低減するために、機能回路のターゲットまたは所望の動作周波数と遅延変動条件とに基づいて、機能回路に電力供給する電圧レベルを適応的に調整するように構成される。電圧マージンを回避または低減することにより、機能回路の適切な動作を維持しながら電力を節約することができる。遅延変動は、各AVSおよび機能回路に固有の1つまたは複数の製造ばらつき、および/または環境条件の変動によって引き起こされる1つまたは複数の動作変動を含み得る。遅延変動条件は、動作周波数と、機能回路の適切な動作のために必要な最小電圧レベルとの間の関係をシフトし得る。機能回路は、一例として同期デジタル回路であり得る。AVSはまた、機能回路の動作周波数と電圧レベルとを設定するための、ダイナミック電圧スケーラ(DVS)への追加の電圧スケーラとして含まれ得る。
この点について、例示的な適応電圧スケーラ(AVS)システム10を図1に概略的に示す。AVSシステム10は、機能回路15中の論理のスイッチング速度またはレートを制御するための、クロック発生器14によって発生されるクロック信号12の動作周波数を判断し、設定するように構成されたAVS11を含む。機能回路15は、一例として同期デジタル回路であり得る。AVS11は、クロック信号12の動作周波数を制御するために、クロック発生器14への入力としての動作周波数設定信号16を発生する。クロック発生器14は、従来のクロック信号、グリッチフリークロック信号、または他のタイプの所望のクロック信号を与え得る。
AVS11はまた、機能回路15に電力供給するために機能回路15に供給される電圧信号18の電圧レベルを制御する。AVS11は、電圧信号18の電圧レベルを制御するために、電圧調整器22への入力としての電圧レベル設定信号20を発生する。電圧レベルは、AVS11によって判断された動作周波数と遅延変動条件とに基づいて判断される。機能回路15の動作周波数と、適切な動作のために機能回路15に電力供給するための最小電圧レベルとの間には関係がある。動作周波数が増加すると、適切な動作のために機能回路15に電力供給するための最小電圧レベルが増加する。動作周波数が減少すると、少なくとも機能回路15に電力供給するために必要な最小しきい値電圧に達するまで、適切な動作のために機能回路15に電力供給するための最小電圧レベルが減少する。
引き続き図1を参照すると、AVS11は、同調ループ24中で、周期的または非周期的に、経時的に繰り返し、機能回路15の動作周波数と電圧レベルとを適応的に判断する。動作周波数設定信号16は、パフォーマンス能力を超えることなしに、機能回路15のパフォーマンスマージンを回避または低減するように適応的に制御される。電圧レベル設定信号20は、ターゲット動作周波数を維持しながら、機能回路15のための電力を節約するために、電圧マージンを回避または低減するように同じく適応的に制御される。電圧信号18は、AVS11中のAVSモジュール28によって発生された電圧レベル設定信号20に従って電圧調整器22によって生成される。AVSモジュール28は回路である。AVS11は、作業負荷推定値27に応答して動作周波数設定信号16と電圧レベル設定信号20とを発生する。
機能回路15中で与えられる遅延変動条件に基づいて遅延を生成するために、AVS11中に1つまたは複数の遅延回路25が設けられる。機能回路15中での遅延は、製造プロセスおよび/または動作条件の変動により変動し得る。遅延回路25は、同調ループ24の一部としてクロック発生器14によって発生されたクロック信号12を入力信号として受信する遅延線クロック論理26を含む。遅延線クロック論理26は、遅延線30へのクロック信号12の遅延を表す出力信号29と、クロック周期遅延34へのクロック信号12の遅延を表す出力信号32とを発生する。遅延線30は、機能回路15中の1つまたは複数の選択された遅延経路に対応するように構成された複数の遅延経路(図示せず)を有する。選択された遅延経路は、動作中に遅延変動条件に基づいて機能回路15中の選択された遅延経路と同じまたは同様の方法でシミュレートし、調整するように構成された関連する遅延を有する。たとえば、遅延経路は、ゲート支配、配線支配、および/または拡散容量支配の遅延経路を含み得、遅延経路のうちの1つが、機能回路15の現在の動作条件に応じてより大きい遅延を生成する。選択された遅延経路はまた、機能回路15中の1つまたは複数の臨界経路(critical path)に対応し得る。遅延線30は、その中の選択された遅延経路が、AVS11に結合された特定の機能回路15に同調されることを可能にするためにプログラム可能であり得る。
遅延回路25中の遅延線30は、この実施形態では、コンパレータ38に入力される遅延線出力36を発生する。コンパレータ38は、一例として比較フリップフロップであり得る。コンパレータ38は、クロック周期遅延34からのクロック周期遅延信号40を受信すると、遅延出力信号42を発生する。遅延出力信号42は、AVSモジュール28への入力として遅延回路25から受信される。遅延出力信号42は、遅延線30中の最長遅延経路の選択を表し、したがって機能回路15中の遅延またはタイミングマージンを表す。AVSモジュール28は、電圧マージンを回避または低減しながら、機能回路15の適切な動作を維持するために、タイミングマージン情報を使用して、次の動作周波数を推定する。AVSモジュール28は機能回路15の次の動作周波数を選択する。より詳細には、AVSモジュール28は、次の動作周波数に従ってクロック信号12を変更するようにクロック発生器14を制御するために、動作周波数設定信号16を発生する。この実施形態では、AVSモジュール28はソフトウェア制御プロセッサまたはコントローラである。ただし、AVSモジュール28はまた、プロセッサまたはソフトウェアなしにディスクリート論理によって与えられ得るか、あるいは回路中で実行するソフトウェアによって部分的に制御可能であり得る。
AVSモジュール28は、次に、新しい動作周波数要求に基づいて機能回路15に電力供給するための新しい電圧レベルを判断する。新しい電圧レベルは、電圧マージンを回避または低減しながらも機能回路15を適切に動作させるための、動作周波数に対する安全な最小電圧レベルである。AVSモジュール28は、機能回路15中での動作周波数と電圧レベルとの間の関係をシフトし得る遅延変動条件に基づいて電圧レベルを調整し得る。新しい動作周波数に対する新しい電圧レベルを判断するAVSモジュール28の例を示す様々な実施形態を本明細書で開示する。AVSモジュール28は、新しい動作周波数に対する新しい電圧レベルを判断した後、新しい電圧レベルを適用する。AVSモジュール28は、新しい電圧レベルを電圧調整器22に与えるために電圧レベル設定信号20を発生する。電圧調整器22は、機能回路15に電力供給するために新しい電圧レベルで電圧信号18を発生する。クロック信号12および電圧信号18はまた、機能回路15中での動作周波数と遅延変動条件とに基づいて機能回路15の電圧レベルの適応制御を行うために、同調ループ24の次の反復中にAVS11に入力される。
AVSモジュール28は、さらに、場合によってはAVS11中に含まれる温度センサ48から受信される動作温度レベル信号46を使用して、次の動作周波数に対する電圧レベルをさらに調整することができる。温度レベルは、所与の動作周波数における機能回路15の適切な動作を維持するための最小電圧レベルをシフトし得る。次の電圧レベル設定を判断するための、AVS11による動作温度レベルの使用に関する詳細については、本出願中で後で説明する。
上記で説明したように、AVSモジュール28は、所与の新しい、判断された動作周波数に対する、機能回路15に電力供給するための新しい電圧レベルを判断する。新しい電圧レベルを判断するAVSモジュール28の一例を、図2中のAVS周波数/電圧レベルテーブル50において与える。AVS周波数/電圧レベルテーブル50は、AVSデータベース44に記憶され、新しい電圧レベルを判断するためにAVSモジュール28によってアクセスされ得る。AVSモジュール28はまた、本明細書で説明するように、AVS周波数/電圧レベルテーブル50中の学習電圧レベルを更新し得る。AVSモジュール28は、次の電圧レベルを判断するためにAVS周波数/電圧レベルテーブル50中の電圧レベルにアクセスするためのソフトウェア命令を実行するソフトウェア制御モジュールまたはプロセッサであり得る。代替的に、AVSモジュール28は、AVSモジュール28によって実行されるソフトウェアによって部分的に制御可能であり得る。AVSモジュール28はまた、次の動作周波数と電圧レベルとを判断するためのソフトウェア命令を実行し得る。AVSモジュール28をソフトウェアベースのモジュールとして与えることにより、AVS11および機能回路15が設計および/または製造された後、動作周波数および電圧レベルならびにAVSデータベース44に記憶された情報を判断するための、AVSモジュール28に含まれているパラメータおよびアルゴリズムを容易に構成または再構成することが可能になる。しかしながら、ソフトウェアベースのモジュールまたはデバイスを使用せずに電気回路中にAVSモジュール28を設けることもできる。
図2中のAVS周波数/電圧レベルテーブル50は、機能回路15の適切な動作を維持しながら電圧マージンを回避または低減するための、様々な所与の動作周波数に対する機能回路15の安全な、あらかじめ選択された最小電圧レベルを表す。したがって、AVS周波数/電圧レベルテーブル50は機能回路15に固有のものである。この実施形態におけるAVS周波数/電圧レベルテーブル50は、有限数の動作周波数と電圧レベルとのペア52を含んでいる。たとえば、図2に示すように、1.0ギガヘルツ(GHz)の動作周波数に対する、AVS周波数/電圧レベルテーブル50に記憶された最小電圧レベルは、1.32ボルト(V)である。動作周波数が低下するにつれて最小電圧レベルは低下する。AVS周波数/電圧レベルテーブル50は、AVSデータベース44中に所望の任意の数の動作周波数と電圧レベルとのペアを含んでいるように設計され得る。この実施形態では、AVS周波数/電圧レベルテーブル50中に含まれていない動作周波数ポイントに対する電圧レベルをAVSモジュール28によって補間することができる。直線性を仮定することが望まれない場合、AVSモジュール28は、AVS周波数/電圧レベルテーブル50中に含まれていない動作周波数に対する電圧レベルを、AVS周波数/電圧レベルテーブル50中に含まれている次に高い動作周波数の電圧レベルに設定することができる。
AVS11のリセット時に、同調ループ24は、AVSモジュール28が電圧レベルを適応的に判断することができるように、まだ反復していない。したがって、一実施形態では、適応電圧レベルが学習されるまで、AVS周波数/電圧レベルテーブル50中に含まれている各動作周波数ポイントに対する既知の安全な電圧レベルでAVS周波数/電圧レベルテーブル50を初期化することができる。代替的に、AVS周波数/電圧レベルテーブル50は、その中に含まれているすべての動作周波数ポイントを初期化されていないものとして最初に登録することができる。AVSモジュール28は、AVS周波数/電圧レベルテーブル50中に含まれている各新しい動作周波数がAVSモジュール28によって探査され、新しい動作周波数に対する新しい電圧レベルが判断されたとき、AVS周波数/電圧レベルテーブル50中の電圧レベルをポピュレートすることができる。
図2中のAVS周波数/電圧レベルテーブル50は、有限数の動作周波数と電圧レベルとのペア52を含んでいるが、この表現は、機能回路15の動作周波数対電圧レベル特性曲線に沿ったポイントのデジタルストレージの関数にすぎない。例示的な動作周波数の一例である図3に、その中で与えられる動作周波数対電圧レベル図55中に機能回路15の電圧レベル特性曲線54(本明細書では「特性曲線54」とも呼ぶ)が示されている。特性曲線54は、可能な動作周波数の範囲にわたって所与の動作周波数に対して機能回路15によって必要とされる最小電圧レベルを表す。特性曲線54を下回る動作周波数、電圧レベルポイントは機能回路15の無効動作領域56中にある。特性曲線54上またはそれより上の動作周波数、電圧レベルポイントは機能回路15の有効動作領域58中にある。特性曲線54は、図3の例では0.85Vである、動作周波数にかかわらず機能回路15を適切に動作させるための最小動作電圧をも示すことに留意されたい。
AVS周波数/電圧レベルテーブル50の代替として、動作周波数と電圧レベルとのペア52は、特性曲線54を近似する、AVSデータベース44またはAVSモジュール28中で与えられる多項式によって判断され得る。特性曲線54はまた、各々が特性曲線54中の動作周波数の下位範囲を表す複数の多項式によって表され得、これは、低次多項式を使用して特性曲線54を表すことを可能にし得る。
動作周波数、電圧レベル特性曲線54は、この例では、機能回路15の動作周波数に対する理想的な最小電圧レベルを表すが、遅延変動条件が特性曲線54を理想的な条件からシフトし得る。遅延変動条件は、機能回路中の所与の遅延経路中の遅延を変化させ得る条件であり得る。たとえば、遅延変動条件は、集積回路(IC)の製造中に生じる個々のICにわたるプロセス変動を含み得る。トランジスタの動作温度や時効効果などの環境条件も、機能回路15中の伝搬遅延に影響を及ぼし得る。電圧源によって供給される電圧レベルは電流ドローの変動により瞬間的に低下し、したがって機能回路15のパフォーマンスを瞬間的に低下させ得る。したがって、AVS11は、他の実施形態によれば、機能回路15の適切な動作を維持しながら、電圧マージンの回避または低減をさらに適応的に最適化するために、追加の利益およびパフォーマンスを提供するためのいくつかの追加の特徴およびデバイスを含むことができる。次に、これらの追加の特徴およびデバイス実施形態について説明する。
一実施形態では、所与の1つまたは複数の動作周波数についてAVS11によってすでに探査された学習最適電圧レベル設定を記憶するために、AVSデータベース44を利用することができる。このようにして、AVSモジュール28は、新しい動作周波数が安定するのを待つ必要なしに、機能回路15を、前に探査された新しい動作周波数に対する特定の最適電圧レベル設定に迅速に戻すために、電圧レベル設定信号20を発生することができる。機能回路15による総電力消費量をさらに節約するために、AVSモジュール28による新しい動作周波数の設定の時間と新しい動作周波数の安定との間に存在する追加の電圧マージンを回避または低減することができる。
この点について、図4に、AVSデータベース44に記憶された記憶学習電圧レベル設定に基づいて機能回路15の動作周波数と電圧レベルとを適応的に判断し、設定するために、AVS11中のAVSモジュール28によって実行され得る例示的なプロセスのフローチャートを与える。図4中のプロセスは、この実施形態では、同調ループ24の一部としてAVSモジュール28によって実行される。プロセスは、AVSモジュール28が機能回路15の新しい動作周波数要求を受信すること(ブロック60)によって開始する(ブロック59)。AVSモジュール28は、図1に示すように、新しい動作周波数要求を作業負荷推定値27として受信する。この実施形態では、AVSモジュール28は、次に、新しい動作周波数と電圧レベルとを設定する前に、以下でより詳細に説明するように、現在の動作電圧の電圧レベルを判断し、それに応じてAVSデータベース44を更新する(ステップ61)。代替的に、機能回路15の新しい動作周波数と電圧レベルとが設定された後に実行し、AVSデータベース44を更新するようにAVSモジュール28を構成することができる。同じく以下でより詳細に説明するように、他の特徴および機能がAVSモジュール28によって実行され得る。AVSモジュール28は、次いで、新しい動作周波数が現在の動作周波数よりも大きいかどうかを判断する(ブロック62)。新しい動作周波数が現在の動作周波数よりも大きくない場合、AVSモジュール28は、機能回路15の電圧レベルを調整すべきかどうかを判断する必要なしに、新しい動作周波数のための動作周波数設定信号16の設定を直ちに進めることができる(ブロック63)。機能回路15は、現在の電圧レベル設定に対して、より低い動作周波数において適切に動作することが可能であることが知られている。しかしながら、電圧マージンを回避または低減するために、可能な場合、現在の電圧レベルを低減することが依然として望まれる。この点について、AVSモジュール28は、機能回路15の新しい電圧レベルを判断するために、機能回路15中で新しい動作周波数が安定するのを待つ(ブロック64)。これは、いくつかのクロックサイクルと同調ループ24の反復とを必要とし得る。
新しい動作周波数が安定した後、AVSモジュール28は、新しい動作周波数がAVSデータベース44中でAVSモジュール28によって前に探査されたかどうかを判断する(ブロック65)。前に探査されていない場合、AVSモジュール28は、新しい動作周波数に対して電圧レベルを既知の安全な電圧レベルにプログラムする(ブロック66)。安全な電圧レベルはDVS設定に基づき得る。新しい動作周波数がAVSデータベース44中でAVSモジュール28によって前に探査されている場合(ブロック65)、AVSモジュール28は、AVSデータベース44に記憶された学習電圧レベルに基づいて電圧レベル設定信号20を機能回路15の新しい電圧レベルに設定する(ブロック67)。以下でより詳細に説明するように、AVSモジュール28は、機能回路15の変動条件と動作条件とに基づいて電圧マージンを回避または低減するために、探査された動作周波数に対応する学習電圧レベルをAVSデータベース44に記憶するように構成される。学習電圧レベルは、一般に、安全な電圧レベルよりも低くなり、したがって機能回路15によるエネルギー消費を低減する。したがって、AVSデータベース44を使用して学習電圧レベルを記憶することによって、他の場合よりも機能回路15中で電圧レベルをより迅速に低下させることができる。これを、以下で説明する図5および図6において例として示す。
図5は、図1中のAVS11の制御下でクロック発生器14によって発生されるクロック信号12の例示的な動作周波数タイミング図80を示す。図6Aは、同じく図1中のAVS11の制御下で電圧調整器22によって発生される電圧信号18の対応する例示的な電圧レベルタイミング図82を示す。図5に示すように、クロック信号12は、時間t3から時間t4まで動作周波数f3にある。時間t4において、AVSモジュール28はクロック発生器14のための新しい動作周波数をf1に設定する(たとえば、図4、ブロック63参照)。クロック信号12の動作周波数は、時間t4とt5との間にf3からf1へ下がり始め、時間t5において周波数f1で安定化する。AVSモジュール28が、機能回路15中で新しい動作周波数が安定したと判断した後(たとえば、図4、ブロック64参照)、AVSモジュール28はAVSデータベース44を調べる。AVSモジュール28は、AVSデータベース44を調べて、新しい動作周波数f1に対する電圧レベルが前に探査され、学習されたかどうかを判断する(たとえば、図4、ブロック65参照)。この例では、AVSデータベース44は、新しい動作周波数f1に対する、前に探査された学習電圧レベルを含んでいた(たとえば、図4、ブロック67参照)。したがって、図6A中の電圧レベルタイミング図82に示すように、AVSモジュール28は、新しい動作周波数が安定するのを待つ必要なしに、1クロックサイクル中で電圧レベル設定信号20を新しい、前に学習された電圧レベルに設定することができた。さもなければ、AVSモジュール28は、図6Bの電圧レベルタイミング図83に示すように、1クロックサイクル中で電圧レベル設定信号20を新しい電圧レベルに設定することができなかったであろう。プロセスは、AVSモジュール28が新しい動作周波数要求を受信するたびに、開始(ブロック59)に戻ることによって、ループ様式で図4中のステップを繰り返し続ける。
新しい動作周波数が現在の動作周波数よりも大きい場合(ブロック62)、図6Aの電圧レベルタイミング図82中の時間t1において例として示されているように、AVSモジュール28は動作周波数設定信号16を新しい動作周波数に直ちに設定しない。これは、図5の動作周波数タイミング図80中の時間t1において例として示されている。これは、AVSモジュール28が、新しい動作周波数を設定する前に、機能回路15が適切に動作することを保証するために、最初に新しい電圧レベルを判断するからである。この点について、AVSモジュール28は、新しい動作周波数がAVSデータベース44中でAVSモジュール28によって前に探査されたかどうかを判断する(ブロック70)。前に探査されていない場合、AVSモジュール28は、新しい動作周波数に対して電圧レベルを既知の安全な電圧レベルにプログラムする(ブロック71)。安全な電圧レベルはDVS設定に基づき得る。新しい動作周波数がAVSデータベース44中でAVSモジュール28によって前に探査されている場合(ブロック70)、AVSモジュール28は、AVSデータベース44に記憶された学習電圧レベルに基づいて電圧レベル設定信号20を機能回路15の新しい電圧レベルに設定する(ブロック72)。この場合も、AVSモジュール28は、機能回路15の変動条件と動作条件とに基づいて電圧マージンを回避または低減するために、電圧レベルをより迅速に低下させるために、探査された動作周波数に対応する学習電圧レベルをAVSデータベース44に記憶するように構成される。学習電圧レベルは、一般に、安全な電圧レベルよりも低くなり、したがって機能回路15によるエネルギー消費を低減する。その後、AVSモジュール28は、機能回路15中で新しい電圧レベルが安定するのを待つ(ブロック73)(たとえば、t1〜t2)。AVSモジュール28が、新しい動作周波数が設定され得る前に新しい電圧レベルが安定するのを待つ間、追加の周波数マージンが存在し得る。新しい電圧レベルが安定した後、AVSモジュール28は、機能回路15の新しい動作周波数をより高い動作周波数に安全に調整する(ブロック74)(たとえば、t2〜t3)。プロセスは、AVSモジュール28が新しい動作周波数要求を受信するたびに、開始(ブロック59)に戻ることによって、ループ様式で図4中のステップを繰り返し続ける。
図7に、AVS11が前に探査された動作周波数に対する電圧レベルを学習することの一部として、AVSデータベース44に記憶され、維持され得るAVS学習値テーブル90の例を示す。AVS11中のAVSモジュール28は、前に説明したように、AVS学習値テーブル90を調べて、電圧レベルが特定の動作周波数について前に探査され、学習されたかどうかを判断することができる(たとえば、図4、ブロック65およびブロック70参照)。AVSモジュール28は、AVSデータベース44の更新プロセスの一部としてAVS学習値テーブル90を更新し得る(たとえば、図4、ブロック69)。この実施形態では、図7に示すように、AVS学習値テーブル90は、図2中のAVS周波数/電圧レベルテーブル50と同様である。ただし、AVS学習値テーブル90は、電圧レベル列94に記憶された対応する電圧レベルが、動作周波数列96中の対応する動作周波数について前に探査され、学習されたかどうかを示す学習列92を含んでいる。たとえば、学習列92は、電圧レベル列94に記憶された値が、有効な、前に探査された学習電圧レベルであるか、あるいは初期または無効データを含んでいるかについてのインジケータを記憶するように構成され得る。たとえば、インジケータは、図7に示す妥当性ビット98であり得る。論理「1」は有効値を表し得、論理「0」は無効値を表し得、またはその逆である。図7に示すように、400MHzを除く動作周波数の各々は、前に学習された電圧レベルを含んでいる。
AVSモジュール28は、学習電圧レベル設定を用いてAVSデータベース44中のAVS学習値テーブル90を更新し続けることができる。前に説明したように、AVSモジュール28は、突破してはならない、機能回路15のすべての動作周波数に対する最小電圧レベル設定を用いて構成され得る。この場合、AVSモジュール28は、機能回路15のすべての動作周波数に対する最小電圧レベル設定よりも低い学習電圧レベル設定をAVSデータベース44に記憶しないように構成され得る。
この例では、図7のAVS学習値テーブル90に記憶されたいくつかの電圧レベルは、図2中のAVS周波数/電圧レベルテーブル50中の対応する電圧レベルよりも低い。これは、AVS11が、機能回路15中の電圧レベルと動作周波数との間の関係においてAVSモジュール28によって判断された追加の遅延変動を考慮に入れることによるものであり得る。AVSモジュール28は、遅延変動条件に基づいて他の電圧レベルを適応的に学習するまで、AVS学習値テーブル90中の電圧レベルを、図2のAVS周波数/電圧レベルテーブル50中の電圧レベルなど、機能回路の安全な電圧レベルで、最初にポピュレートするように構成され得る。一般に、AVS11の目的は、機能回路15中での動作パラメータと遅延条件とに基づいて電圧マージンを低減することであるので、学習電圧レベルの電圧レベルは初期電圧レベルよりも低くなる。
別の実施形態では、AVS11は、電圧マージンをさらに回避または低減するために、ランタイム中に機能回路15の無効動作領域を探査するように構成される。機能回路15の無効動作領域を探査する実施形態について説明する前に、図8中の例示的な動作周波数対電圧図100について最初に説明する。図8に示すように、機能回路15は、有効動作領域102と無効動作領域104との2つの動作領域を有する。機能回路15の特性曲線106のセットは、有効動作領域102中の動作周波数と最小電圧レベル値とのペアによって形成される線である。特性曲線106は無効動作領域104から有効動作領域102を分離する。動作周波数にかかわらず、機能回路15の適切な動作のための最小電圧レベルがあり、図8中の動作周波数対電圧図100では0.85Vとして例として示されている。定義された動作周波数より上では、有効動作領域102中での機能回路15の適切な動作を維持するために、最小電圧レベルを増加させなければならない。
ダイナミック電圧スケーラ(DVS)線108は、機能回路15中の電圧レベルを制御するためにDVSが採用された場合の、機能回路15の動作の下限を示す。DVS線108は、機能回路15中のプロセスと動作条件とのすべての許容変動にわたる有効動作領域102のための最小電圧レベルを与える。AVS線110は、DVS線108よりも低い、機能回路15の動作の限界を示す。AVS線110は、AVS11が、機能回路15中の電圧レベルを判断し、設定するときに、機能回路15中のプロセスと動作条件との遅延変動を考慮に入れることによる電圧マージンの低減を表す。図8中の動作周波数対電圧レベル図100には、図1中のAVS11からの3つの可能な決定を表す2つのAVS線112、114がある。これは、コンパレータ38が、若干の内蔵ヒステリシスを有し得る比較フリップフロップを含むことによる。3つの可能な決定は次の通りである。
・ 現在の電圧レベルが機能回路15の適切な動作のために必要な電圧レベルよりも高いことを意味する「Vdown」条件、
・ 現在の電圧レベルが機能回路15の適切な動作のために十分であることを意味する「変更なし」条件、および
・ 現在の電圧レベルが機能回路15の適切な動作のために必要な電圧レベルよりも低いことを意味する「Vup」条件。
電力消費の観点から機能回路15を動作させるための望ましいポイントは、「変更なし」から「Vup」までの動作領域からの遷移を定義するAVS線114である。このAVS線114上で、機能回路15の適切な動作を維持するための可能な最小電圧レベルが与えられる。しかしながら、AVS線114上では、電圧マージン許容差はほとんどまたはまったく与えられない。AVS線114がAVSモジュール28によって電圧レベルを制御するために使用された場合、AVS11がクロック信号12の動作周波数を測定することに関連するタイミング遅延により、機能回路15の無効動作を示す「Vup」条件が生じ得る。その結果、AVSモジュール28は、いくつかの時間期間中に無効動作領域104中の電圧レベルを設定し得る。「Vup」条件によりAVS11および機能回路15はリセットされ得る。したがって、AVS11の一実施形態では、AVS線112を使用して、所与の動作周波数に対する電圧レベルを判断する。AVS線112は、DVS線108よりも電圧マージンを低減するが、AVS線114よりも、無効動作領域104中で機能回路15を動作させることを回避するための電圧マージン許容差を含む。本明細書でさらに説明する実施形態は、電圧マージンをAVS線112からAVS線114上の0電圧マージンに、またはできる限り0に近い電圧マージンにさらに低減する。
この点について、AVS11の一実施形態は、一例として、図8中のAVS線112からAVS線114までなど、電圧マージン許容差を低減するために、ランタイム中に機能回路15の無効動作領域を探査するように構成される。無効動作領域を探査することにより、AVSモジュール28は、AVS11の固有の時間測定制約があるとすれば、電圧マージン許容差がさらに低減され得るかどうかを判断することが可能になる。一例として図8を参照すると、この実施形態では、AVSモジュール28は、所望される場合、AVS線112より下、および/またはAVS線112と114との間、あるいは0電圧マージン許容差のためのAVS線114に電圧レベルを設定することが可能であり得る。この点について、図9は、機能回路15の無効動作領域を探査するためにAVSモジュール28によって実行され得る例示的なプロセスを示すフローチャートである。本明細書中で与えられるように、AVSモジュール28は無効動作領域探査テストを周期的に開始する(ブロック120)。AVSモジュール28は、現在の動作周波数と電圧レベルとをAVSデータベース44中に第1のポイントとして記録する(ブロック122)。この第1のポイントは、図10中の例示的な動作周波数対電圧レベル図138に示すAVS線112上にp1と標示されている。図10中の例示的な動作周波数対電圧レベル図138は、図8中の図100と同様であるが、DVS線108はなく、図9中のフローチャートで参照されるいくつかの追加情報が含まれている。
AVSモジュール28は、次に、図1中のAVS11中の遅延線30中の遅延を増加させることによって、無効動作領域104(すなわち、「Vup」条件が生じる)を判断するために、動作周波数の増加をシミュレートする(ブロック124)。AVSモジュール28は、次いで、遅延の増加の結果として遅延出力信号42上で「Vup」条件が戻されるかどうかを判断する(ブロック126)。AVSモジュール28は、「Vup」条件がAVSモジュール28に戻されるまで(ブロック126)、遅延線30中に与えられる遅延量を増分的に増加させ続ける(ブロック128)。「Vup」条件が戻されると、AVSモジュール28は、現在の電圧レベルとシミュレートされた増加動作周波数とをAVSデータベース44中に第2のポイントとして記録し(ブロック130)、これは、図10中のAVS線114上にポイントp2として例として示されている。このAVSテストの目的は、電圧マージンをAVS線114上またはその近くにさらに低減するために、現在の動作周波数において電圧レベルが低減され得るかどうかを判断することであるが、ポイントp2は、AVS線114上のより高いシミュレートされた動作周波数にある。したがって、AVSモジュール28は、AVSデータベース44に記憶された電圧レベルから判断され得るAVS線112の傾きを使用して、AVS線114上の第3のポイントp3を計算する(ブロック132)。AVS線112と114は同じ傾きを有すると仮定され、したがって、ポイントp2における動作周波数とともにAVS線112の傾きを使用することにより、AVSモジュール28は、現在の動作周波数に対する、AVS線114上のポイントp3におけるより低い電圧レベルを判断することができる。
AVSモジュール28は、次いで、新しい動作周波数と電圧レベルポイントp3とをAVSデータベース44に記憶し(ブロック134)、AVSテストは終了する(ブロック136)。たとえば、AVSモジュール28は、現在の動作周波数において新しい電圧レベルを設定するために使用すべきポイントp3を、AVS学習値テーブル90(図7)またはAVS周波数/電圧レベルテーブル50(図2)に記憶することができる。たとえば、図11中の動作周波数対電圧レベルテーブル140に示すように、AVSモジュール28は、AVSデータベース44中の既存のテーブル中の、動作周波数に対する現在の記憶電圧レベル(たとえば、ポイントp1)に新しい電圧レベル(たとえば、ポイントp3)を上書きし得る。別の例として、AVSデータベース44は、現在の電圧レベル(たとえば、ポイントp1)と、このテストによって与えられた、所与の動作周波数に対する低減された電圧レベル(たとえば、ポイントp3)との差を、図12に示す電圧レベル差テーブル142に記憶するように構成され得る。AVSモジュール28は、AVS線112上の判断された電圧レベルがさらに低減され得るかどうかを判断するために、電圧レベル差テーブル142を調べるであろう。
リセット後に、AVSモジュール28は、機能回路15のすべての可能な動作周波数に対する電圧レベルをまだ発見していない。AVSモジュール28は、AVSデータベース44中の各所与の動作周波数が設定されたときにのみ電圧レベルを判断し得る。したがって、AVSモジュール28が前に設定されていない動作周波数を設定したとき、AVSモジュール28は、前に説明したように、その動作周波数に対する、AVSデータベース44に記憶された初期電圧レベルを選択し得る。初期電圧レベル値はAVSモジュール28による適応的学習電圧レベルではないので、新しい動作周波数に対する追加の電圧マージンが存在し得る。しかしながら、AVSモジュール28が所与の動作周波数に対する電圧レベルを学習すると、AVSモジュール28は、AVSデータベース44中の動作周波数に対する電圧レベルのポピュレーションを加速することができる。現在の電圧レベルが発見された電圧レベルよりも高い、より低い動作周波数における、AVSデータベース44中の電圧レベルを自動的に設定するようにAVSモジュール28を構成することができる。これは、機能回路が、より高い動作周波数に対する適応的学習電圧レベルにおいて適切に動作することができることが知られている場合、その電圧レベルは、より低い周波数における動作のためにも十分であるので、可能である。
この点について、図13は、AVSデータベース44中の動作周波数に対する電圧レベルのポピュレーションを加速するためにAVSモジュール28によって実行され得る例示的なプロセスを与えるフローチャートである。プロセスは、新しい動作周波数が設定されたとき、またはその後の任意の時間を含む、任意の時間にAVSモジュール28によって実行され得る。図13に示すように、プロセスは開始し(ブロック150)、AVSモジュール28は、AVSモジュール28によって設定された現在の動作周波数よりも低い動作周波数における、AVSデータベース44に記憶された電圧レベルについてAVSデータベース44を調べる(ブロック152)。より低い動作周波数のいずれかに対する、AVSデータベース44に記憶された電圧レベルが現在の電圧レベルよりも高い場合(ブロック154)、AVSモジュール28は、より低い動作周波数に対する、AVSデータベース44中の電圧レベルを現在の電圧レベルと置き換え(ブロック156)、プロセスは終了する(ブロック158)。他の場合、プロセスは、AVSデータベース44中の、より低い動作周波数に対する電圧レベルを改変することなしに終了する(ブロック158)。このようにして、たとえば初期電圧レベルを含む、AVSデータベース44中の、より低い動作周波数に対する電圧レベルを、機能回路15の適切な動作を維持することが知られている、より低い電圧レベルで急速にポピュレートすることができる。
図14に、電圧レベルの加速されたポピュレーションをさらに示すために、図1のAVSデータベース44に記憶され得る例示的なAVS動作周波数/電圧レベルテーブル160を示す。この例では、AVSモジュール28が、AVS動作周波数/電圧レベルテーブル160中のエントリ162に示すように、1GHzの動作周波数に対して1.0Vの電圧レベルを判断したと仮定する。エントリ164など、AVS動作周波数/電圧レベルテーブル160中のいずれかの初期電圧レベルが1.0Vよりも高い場合、AVSモジュール28は、図14に示すように、エントリ164の電圧レベルを1.0Vと置き換えることができる。この例では、AVSモジュール28がエントリ164の周波数において動作周波数を初めて設定したときに電圧マージンが低減される。
AVS11の別の実施形態は、AVS11への温度センサの組込みを含む。温度センサ48は、図1中のAVS11中の随意の構成要素であるものとして、すでに前に説明した。温度センサ48がAVS11中に含まれる場合、AVSモジュール28は、現在の動作温度に基づく、判断された電圧レベルをAVSデータベース44に記憶することができる。前に説明したように、動作温度レベルは、機能回路15の適切な動作ための電圧レベルをシフトし得る。したがって、動作温度レベルにさらに基づく電圧レベルを記憶することによって、AVSモジュール28は、機能回路15の適切な動作を保証しながら、電圧マージンを回避または低減し得る。この点について、図15は、それぞれが異なる動作温度T0〜TNに対応する複数の例示的なAVS動作周波数/電圧レベルテーブル170である。したがって、AVSモジュール28が、本明細書で開示する実施形態において与えられるように、所与の動作周波数に対する電圧レベルを判断するためにAVSデータベース44を調べるとき、AVSモジュール28は、温度センサ48からの受信された温度レベル信号46から受信された動作温度レベルを使用して、AVSデータベース44中のどのテーブル170を調べるべきかを判断することができる。さらに、AVSモジュール28は、温度センサ48から受信された動作温度レベルを使用して、AVSデータベース44中のどのテーブル170を、本明細書で開示する実施形態による初期、学習、探査、加速電圧レベル、または所望の任意の他の電圧レベルでポピュレートすべきかを判断することができる。AVSモジュール28は、温度センサ48からの受信された温度レベルについて、AVS動作周波数/電圧レベルテーブル170がAVSデータベース44中に与えられていない場合、複数のAVS動作周波数/電圧レベルテーブル170に基づいて電圧レベルを補間または外挿するように構成され得る。いくつかの動作温度は、異なる動作周波数において頻繁には生じないので、動作温度レベルごとに電圧レベルをAVSデータベース44に記憶することにより、AVSデータベース44中の電圧レベルの鮮度を延長することができる。したがって、AVSモジュール28が、ある寿命を超えた電圧レベルエントリを無効にし、および/または初期電圧レベルに戻すことを可能にするために、随意の時間要素をAVSデータベース44に組み込むことができる。
上述の実施形態のいずれかを用いて、AVSモジュール28は「Vup」条件を受信することが可能である。AVSモジュール28および/またはAVSデータベース44中のパラメータおよび/またはアルゴリズムは、機能回路15のすべての動作周波数のすべての遅延変動を完全に考慮することはできない。したがって、別の実施形態では、AVS11は、「Vup」条件が現在の動作周波数において発生された場合、現在の動作周波数に対する前に記憶または学習された電圧レベルを「バックアップする」かまたは「バックアウトする」ように構成される。AVSデータベース44中の電圧レベルの「バックアウト」または「バックアップ」は、「Vup」条件が生じた場合、電圧マージンを増加させるためにAVSデータベース44中の所与の動作周波数に対する電圧レベルを増加させることを含む。「Vup」条件は、機能回路15の有効動作領域が0または正の電圧マージンを必要とする、負の電圧マージンを示す。
この点について、図16は、あまりに低い電圧レベルによって引き起こされたと考えられる偶発的ハードウェアリセットが検出されたとき、電圧マージンを増加させるための例示的なプロセスのフローチャートである。たとえば、リセットまたは障害を生じた低電圧レベルの特性は、検出可能であるキャッシュパリティエラーの発生であり得る。このハードウェアリセットまたは障害は、図1のAVS11中のAVSモジュール28によって受信される「Vup」条件を生じることがあり得る。この場合、そのようなエラーが所与の動作周波数において1回またはそれ以上生じた場合、将来のリセットを回避するために、AVSモジュール28によって動作周波数に対応する電圧レベルを増加させて、電圧マージンを増加させることができる。
この点について、一例として、AVSモジュール28は、図16に示すように、「Vup」条件が受信されたとき(ブロック180)、割込みによって、または他の方法で、例外ハンドラにジャンプするように構成され得る。この例では、AVSモジュール28は、次いで、現在の動作周波数に関連付けられた、AVSデータベース44に記憶された電圧レベルに電圧マージンを追加する(ブロック182)。AVSモジュール28は、電圧調整器22に、機能回路15に与えられた電圧レベルに電圧マージンを追加させるように、電圧レベル設定信号20を設定する(ブロック184)。AVSモジュール28は、次いで、この実施形態では、リセット時およびさらなる動作時にAVSモジュール28が突破してはならない最小電圧レベルとして、現在の動作周波数における新しい電圧レベルをマークし(ブロック186)、プロセスは終了する(ブロック188)。言い換えれば、AVS11中で所与の電圧レベルが「Vup」条件を発生したことが学習されると、AVSモジュール28は、将来、現在の動作周波数に対する電圧レベルを低減しないはずである。代替的に、AVSモジュール28は、将来の通常動作中に、より低い電圧レベルが判断された場合、電圧レベルがAVSデータベース44中で上書きされることを可能にするように構成され得る。
AVSデータベース44は、AVSモジュール28によって設定された電圧レベルが、機能回路15の動作のための最小電圧レベルを下回らないことを保証するために、すべての動作周波数に対する機能回路15の最小電圧レベルを記憶するように構成され得る。この点について、図17に、AVSデータベース44に記憶され得る例示的な最小電圧レベル限界テーブル190を示す。AVSモジュール28は、電圧レベルが設定される前に、所与の現在の動作周波数についてAVSデータベース44中の最小電圧レベル限界テーブル190を調べるように構成され得る。AVSモジュール28によって判断された電圧レベルが、現在の動作周波数に対する、最小電圧レベル限界テーブル190中の最小電圧レベルよりも低い場合、AVSモジュール28は、電圧レベルを最小電圧レベル限界テーブル190中の電圧レベルに設定する。最小電圧レベル限界テーブル90は、すべての動作周波数に対する同じ電圧レベル(たとえば、0.85V)を最初に含み得る。しかしながら、AVSモジュール28が「Vup」条件時に、所与の動作周波数に対して電圧マージンを追加するように構成された場合、追加された電圧マージンは最小電圧レベル限界テーブル190中の最小電圧レベルに追加され得る。たとえば、「Vup」条件が600MHzの動作周波数において受信され、電圧レベルが0.90Vであり、追加された電圧マージンが0.05Vであった場合、図17に示すように、最小電圧レベル限界テーブル190中の600MHzの動作周波数に対して0.95Vの最小電圧レベルが記憶され得る。
別の実施形態では、AVS11は、負バイアス温度不安定性(NBTI)について電圧レベルを補償するように構成され得る。NBTI効果は、一部の半導体デバイスが適切に動作するために必要な最小電圧レベルを時間とともに緩やかに上げる。たとえば、特定の半導体プロセスは、図18中の例示的な動作周波数/電圧レベル図192に示すように、NBTI効果が24カ月の電源投入動作にわたって50mVだけ最小電圧レベルを上げることを特徴とし得る。そこに示されているように、機能回路15の初期最小電圧レベル194は0.85Vである。しかしながら、NBTI効果により、その後の最小電圧レベル196は、時間とともに0.9Vに上がり得る。総電力時間を追跡し、AVSデータベース44に記憶された既知の電圧レベル最小値に補正係数を適用することによって、NBTIを補償するようにAVSモジュール28を構成することができる。補正係数は、たとえば、図17に示す最小電圧レベル限界テーブル190中など、AVSデータベース44中の、機能回路15の絶対最小電圧レベルに適用され得る。代替的に、補正係数は、本明細書で前に説明したテーブルのいずれかを含む、AVSテーブル中の最小電圧レベルに適用され得る。AVSデータベース44に記憶された動作周波数のいずれかに対する電圧レベル設定が最小電圧レベル設定より下である場合、AVSデータベース44中の補償最小電圧レベル設定をエンフォースするようにAVSモジュール28を構成することができる。
この点について、図19は、AVS11がNBTIによる機能回路15の電圧レベルを補償する例示的なプロセスのフローチャートである。本プロセスは、AVSモジュール28が機能回路15の次の動作周波数を判断する、同調ループ24の各反復に対して、またはより少ない頻度で、周期的に実行され得る。本プロセスは、例として、タイマーをポーリングすることかまたは割込みハンドラのいずれかに基づく所定の時間値であり得る、経年変化インジケータにおいて開始され得る。AVSモジュール28は、電源投入時間を追跡するために、リセット時にAVSデータベース44中のタイマーを開始し、維持する(ブロック200)。タイマーは、電力サイクルにわたって維持されるべき、AVSデータベース44中の不揮発性メモリ中に含まれ得る。AVSモジュール28が、経過時間に基づいて、電力レベル補正を適用すべきであると判断すると(ブロック201)、AVSモジュール28は、AVSデータベース44中のタイマー値に基づく総電源投入時間について、電圧レベル補正を適用すべきであると判断する(ブロック202)。電圧レベル補正は、0Vであり得、または0Vよりも大きくなり得る。さらに、電圧レベル補正は、機能回路15の最小電圧レベルのみに対するオフセットであるか、またはAVSデータベース44に記憶されたすべてのAVS電圧レベル設定に対するオフセットであり得る。さらに、上記で前に説明した手段を含む、他の手段によって判断され、AVSデータベース44に記憶された電圧レベル設定を変更または上書きすることなしに、動作中に適用される前に、AVSデータベース44に記憶された電圧レベルを補償するようにAVSモジュール28を構成することもできる。いずれの場合も、AVSデータベース44に電圧レベル補正を適用する(ブロック204)。本プロセスは繰り返す(ブロック200)。
図20に、別の例示的なAVSシステム210を示す。AVSシステム210は、図1中のAVS11と同様であるAVS11'を含む。共通の構成要素は共通の要素番号で標示されている。AVS11'は、図1のAVS11と同様の、AVSモジュール28と、AVSデータベース44と、遅延線クロック論理26と、プログラム可能な遅延線30と、クロック周期遅延34と、コンパレータ38と、温度センサ48とを含む。最小電圧レベルを設定するためのAVS動作は、前に説明した実施形態のいずれかに従って動作し得る。ただし、図20中のAVS11'はまた、ダイナミック電圧スケーラ(DVS)モジュール212と、DVSテーブル214とを含む。図20中のAVS11'は、DVSモジュール212とDVSテーブル214とをすでに含むシステムにAVSモジュール28とAVSデータベース44とが追加された、改変または更新された設計であり得る。DVSモジュール212は、機能回路15の作業負荷推定値213に従って電圧レベル設定信号216を電圧調整器22に通信することによって、ダイナミック電圧スケーリングを実行する。しかしながら、この実施形態では、機能回路15中の遅延変動条件に基づいて電圧レベルを適応的にスケーリングするためにAVSモジュール28も与えられる。AVSモジュール28は、DVSモジュール212によるAVSモジュール28への要求に応答して、判断されたAVS電圧レベルまたは電圧レベル調整をDVSモジュール212に与える。AVSモジュール28は、DVSモジュール212からAVSモジュール28に与えられた現在のターゲット動作周波数に基づいてAVSデータベース44を調べる。DVSモジュール212は、AVSモジュール28からDVSモジュール212に戻された電圧レベルまたはマージンによってさらに調整された、動作周波数に対応する電圧レベルを含んでいているDVSテーブル214に記憶された電圧レベルに基づいて、電圧レベル設定信号20を設定するように構成される。DVSモジュール212はまた、機能回路15のスイッチングを制御するために、クロック発生器14によって発生されたクロック信号12の動作周波数を設定するための動作周波数設定信号218を発生する。
AVSモジュール28は、電圧マージンを適応的にさらに回避または低減するように構成されているので、AVSモジュール28によって判断された電圧レベルは、理想的には、DVSモジュール212によって判断された電圧レベルと同じであるか、またはそれよりも低いはずである。AVSモジュール28は、前に説明したように、機能回路15の無効動作領域を発見するために、図20に示すように遅延線設定信号220によって遅延回路25の遅延線(DL)30中の遅延を設定することができる。この実施形態では、遅延線設定信号220は、遅延量を制御する32ビット遅延レジスタ222である。遅延設定は線形であることも線形でないこともある。32ビット遅延レジスタ222の値をもつ遅延線設定信号220は、前に説明したように、複数のAVS回路224 1〜N中の遅延線30に通信される。各々が所与のAVS回路224中の遅延量を制御する複数の遅延レジスタ222が与えられ得る。図示されていないが、各AVS回路224は、図1のAVS11中に与えられたものと同様の、遅延線クロック論理26と、遅延線30と、コンパレータ38と、クロック周期遅延34とを含む。AVS回路224は、機能回路15中に含まれる様々なタイプの回路中の遅延をシミュレートするための遅延論理を含む。所望の任意の数のAVS回路224を設けることができる。AVS回路224中の論理の動作周波数および電力も、それぞれクロック発生器14および電圧調整器22によって発生されたクロック信号12および電圧信号18から供給される。コンパレータ38は、AVSモジュール28にタイミングマージン情報を与えるために、遅延出力信号42によって通信すべき、別の32ビット遅延レジスタ226中のタイミングマージン情報を与える。タイミング情報は、前に説明したように、次の動作周波数と電圧レベルとを判断するために使用される。
本明細書で説明したAVSシステムおよびAVSおよび関係する方法は、個別ハードウェアで提供され得、またはハードウェア構成要素とソフトウェア構成要素の両方で提供され得る。本明細書で説明したAVSシステムおよびAVSおよび関係する方法は、限定はしないが、同期デジタル回路と、中央処理ユニット(CPU)システムと、メモリ回路またはシステムとを含む、任意の回路またはシステムの動作周波数と電圧レベルとを設定するために使用され得る。メモリ回路またはシステム中で採用される場合、メモリ回路またはシステムは任意のタイプのメモリを採用し得る。例には、限定はしないが、スタティックランダムアクセスメモリ(RAM)(SRAM)、ダイナミックRAM(DRAM)、シンクロナスDRAM(SDRAM)、ダブルデータレート(DDR)SDRAM、ダブルデータレート2(DDR2)SDRAM、ダブルデータレート3(DDR3)SDRAM、モバイルDDR(MDDR)SDRAM、低電力(LP)DDR SDRAM、およびLP DDR2SDRAMがある。動作周波数と電圧レベルとがAVSによって制御されるメモリ回路またはシステムの構成要素のいずれも、メモリの技術および/または設計によって必要とされる場合、メモリセルを機能的に保つために十分な電圧レベルを与える電圧領域によってメモリが電力供給される限り、複数の電圧領域のうちのいずれかの電圧領域にあり得る。
本明細書で説明した設計および方法によるAVSシステムおよびAVSは、電子デバイスおよび/またはプロセッサベースのデバイスまたはシステムを含む、半導体ダイ、集積回路、および/またはデバイス中に含まれ得るか、または組み込まれ得る。そのようなデバイスの例には、限定はしないが、セットトップボックス、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイル電話、セルラー電話、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、モニタ、コンピュータモニタ、テレビジョン、チューナー、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、ビデオプレーヤ、デジタルビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、およびポータブルデジタルビデオプレーヤがある。
図21に、上記で説明したAVS232と関係する回路とを採用し得るプロセッサベースのシステム230を示す。プロセッサベースのシステム230は電子デバイス234中に含まれ得る。AVS232は、CPU236中のプロセッサ238に与えられるクロック信号の動作周波数と電圧信号の電圧レベルとを制御するためにCPU236中に含まれ得る。CPU236はシステムバス240に結合され、システムバス240は、プロセッサベースのシステム230中に含まれる他のデバイスを相互接続する。AVS241はまた、システムバス240に結合されたグラフィックプロセッサユニット(GPU)243中に含まれ得る。よく知られているように、CPU236および/またはGPU243は、システムバス240を介してアドレス、制御、およびデータ情報を交換することによってこれらの他のデバイスと通信することができる。これらのデバイスは任意のタイプのデバイスを含み得る。図21に示すように、これらのデバイスは、例として、システムメモリ242と、1つまたは複数の入力デバイス244と、1つまたは複数の出力デバイス246と、ネットワークインターフェースデバイス248と、ディスプレイコントローラ250とを含み得る。
1つまたは複数の入力デバイス244は、限定はしないが、入力キー、スイッチ、ボイスプロセッサなどを含む、任意のタイプの入力デバイスを含み得る。1つまたは複数の出力デバイス246は、限定はしないが、オーディオインジケータ、ビデオインジケータ、他の視覚インジケータなどを含む、任意のタイプの出力デバイスを含み得る。ネットワークインターフェースデバイス248は、ネットワーク252との間でデータを交換することができるように構成された任意のデバイスであり得る。ネットワーク252は、限定はしないが、ワイヤードまたはワイヤレスネットワーク、プライベートまたは公衆ネットワーク、ローカルエリアネットワーク(LAN)、ワイドローカルエリアネットワーク(WLAN)、およびインターネットを含む、任意のタイプのネットワークであり得る。ネットワークインターフェースデバイス248は、所望の任意のタイプの通信プロトコルをサポートし得る。
CPU236はまた、システムバス240を介してシステムメモリ242にアクセスし得る。システムメモリ242はスタティックメモリおよび/またはダイナミックメモリを含み得る。システムメモリ242は、CPU236のためのプログラムストア254とデータストア256とを含み得る。CPU236はまた、ディスプレイ258に送信される情報を制御するためにシステムバス240を介してディスプレイコントローラ250にアクセスし得る。ディスプレイコントローラ250は、メモリコントローラ260と、CPU236との通信に応答してディスプレイ258に送信すべきデータを記憶するためのメモリ262とを含み得る。ディスプレイコントローラ250は、ビデオプロセッサ264を介して表示情報をディスプレイ258に通信し、ビデオプロセッサ264は、表示すべき情報をディスプレイ258に好適なフォーマットに処理する。ディスプレイ258は、限定はしないが、陰極線管(CRT)、液晶ディスプレイ(LCD)、プラズマディスプレイなどを含む、任意のタイプのディスプレイを含み得る。
さらに、本明細書で開示した実施形態に関して説明した様々な例示的な論理ブロック、モジュール、回路、およびアルゴリズムは、電子ハードウェア、メモリまたは別のコンピュータ可読媒体に記憶され、プロセッサまたは他の処理デバイスによって実行される命令、あるいは両方の組合せとして実装され得ることを当業者なら諒解されよう。この互換性を明確に示すために、様々な例示的な構成要素、ブロック、モジュール、回路、およびステップを、上記では概してそれらの機能に関して説明した。そのような機能をどのように実装するかは、特定の適用例、設計選択、および/または全体的なシステムに課せられた設計制約に依存する。当業者なら、説明した機能を特定の適用例ごとに様々な方法で実装し得るが、そのような実装の決定は、本明細書の範囲からの逸脱を生じるものと解釈すべきではない。
本明細書で開示した実施形態に関して説明した様々な例示的な論理ブロック、モジュール、および回路は、プロセッサ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、個別ゲートまたはトランジスタ論理、個別ハードウェア構成要素、あるいは本明細書で説明した機能を実行するように設計されたそれらの任意の組合せを用いて実装または実行され得る。プロセッサはマイクロプロセッサであり得るが、代替として、プロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、または状態機械であり得る。プロセッサはまた、コンピューティングデバイスの組合せ、たとえば、DSPとマイクロプロセッサとの組合せ、複数のマイクロプロセッサ、DSPコアと連携する1つまたは複数のマイクロプロセッサ、あるいは任意の他のそのような構成として実装され得る。
本明細書で開示した実施形態は、ハードウェアに組み込まれ得、メモリに記憶された命令に組み込まれ得、たとえば、ランダムアクセスメモリ(RAM)、フラッシュメモリ、読取り専用メモリ(ROM)、電気的プログラマブルROM(EPROM)、電気的消去可能プログラマブルROM(EEPROM)、レジスタ、ハードディスク、リムーバブルディスク、CD-ROM、または当技術分野で知られている任意の他の形態のコンピュータ可読媒体中に常駐し得る。例示的な記憶媒体は、プロセッサが記憶媒体から情報を読み取り、記憶媒体に情報を書き込むことができるように、プロセッサに結合される。代替として、記憶媒体はプロセッサと一体であり得る。プロセッサおよび記憶媒体はASIC中に常駐し得る。ASICは遠隔局中に常駐し得る。代替として、プロセッサおよび記憶媒体は、遠隔局、基地局、またはサーバ中に個別構成要素として常駐し得る。
また、本明細書の例示的な実施形態のいずれかで説明した動作ステップは、例および説明を与えるために説明したものであることに留意されたい。説明した動作は、図示の順序以外の多数の異なる順序で実行され得る。さらに、単一の動作ステップで説明される動作は、実際はいくつかの異なるステップで実行され得る。さらに、例示的な実施形態で説明した1つまたは複数の動作ステップは組み合わされ得る。フローチャート図に示した動作ステップは、当業者には直ちに明らかになるように、多数の異なる変更が可能であることを理解されたい。また、情報および信号は、多種多様な技術および技法のいずれかを使用して表現され得ることを当業者なら理解されよう。たとえば、上記の説明全体にわたって言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、およびチップは、電圧、電流、電磁波、磁界または磁性粒子、光場または光学粒子、あるいはそれらの任意の組合せによって表され得る。
本開示の前述の説明は、当業者が本開示を製作または使用できるように提供したものである。本開示の様々な変更は当業者には直ちに明らかになり、本明細書で定義した一般原理は、本開示の趣旨または範囲から逸脱することなく他の変形形態に適用され得る。したがって、本開示は、本明細書で説明した例および設計に限定されるものではなく、本明細書で開示する原理および新規の特徴に一致する最も広い範囲を与えられるべきである。
10 適応電圧スケーラ(AVS)システム
10 AVSシステム
11 AVS
11' AVS
12 クロック信号
14 クロック発生器
15 機能回路
16 動作周波数設定信号
18 電圧信号
20 電圧レベル設定信号
22 電圧調整器
24 同調ループ
25 遅延回路
26 遅延線クロック論理
27 作業負荷推定値
28 AVSモジュール
29 出力信号
30 遅延線
32 出力信号
34 クロック周期遅延
36 遅延線出力
38 コンパレータ
40 クロック周期遅延信号
42 遅延出力信号
44 AVSデータベース
46 動作温度レベル信号
46 温度レベル信号
48 温度センサ
50 AVS周波数/電圧レベルテーブル
52 動作周波数と電圧レベルとのペア
54 電圧レベル特性曲線
54 特性曲線
55 動作周波数対電圧レベル図
56 無効動作領域
58 有効動作領域
80 動作周波数タイミング図
82 電圧レベルタイミング図
83 電圧レベルタイミング図
90 AVS学習値テーブル
92 学習列
94 電圧レベル列
96 動作周波数列
98 妥当性ビット
100 動作周波数対電圧図
102 有効動作領域
104 無効動作領域
106 特性曲線
108 電圧スケーラ(DVS)線
108 DVS線
110 AVS線
112 AVS線
114 AVS線
138 動作周波数対電圧レベル
140 動作周波数対電圧レベルテーブル
142 電圧レベル差テーブル
160 AVS動作周波数/電圧レベルテーブル
162 エントリ
164 エントリ
170 AVS動作周波数/電圧レベルテーブル
170 テーブル
190 最小電圧レベル限界テーブル
192 動作周波数/電圧レベル図
194 初期最小電圧レベル
196 その後の最小電圧レベル
210 AVSシステム
212 DVSモジュール
213 作業負荷推定値
214 DVSテーブル
216 電圧レベル設定信号
218 動作周波数設定信号
220 遅延線設定信号
222 32ビット遅延レジスタ
222 遅延レジスタ
224 AVS回路
226 32ビット遅延レジスタ
230 システム
232 AVS
234 電子デバイス
236 CPU
238 プロセッサ
240 システムバス
241 AVS
242 システムメモリ
243 電子デバイス
244 入力デバイス
246 出力デバイス
248 ネットワークインターフェースデバイス
250 ディスプレイコントローラ
252 ネットワーク
254 プログラムストア
256 データストア
258 ディスプレイ
260 メモリコントローラ
262 メモリ
264 ビデオプロセッサ

Claims (41)

  1. 適応電圧スケーラ(AVS)であって、
    入力信号を受信することと、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する遅延量だけ前記入力信号を遅延させることとを行うように構成された少なくとも1つの遅延回路と、
    データベースに結合され、前記遅延出力信号に応答するAVS回路であって、前記機能回路の動作周波数と前記遅延出力信号中の遅延情報とに関連付けられた、前記データベース中の電圧レベルに基づいて電圧レベル設定信号を発生するように構成されたAVS回路と
    を含
    前記AVS回路は、前記機能回路の無効動作領域を探査するために、前記機能回路の増加動作周波数をシミュレートするために前記少なくとも1つの遅延経路の前記遅延を増加させるように構成され、
    前記AVS回路は、前記増加動作周波数をシミュレートする前に、第1の動作周波数と第1の電圧レベルとを第1の特性曲線に関連付けられた第1のポイントに記録し、
    前記AVS回路は、前記少なくとも1つの遅延経路の前記遅延の増加に応えて第1の条件が受信された場合に、前記増加動作周波数と現在の電圧レベルとを第2の特性曲線に関連付けられた第2のポイントに記録し、
    前記AVS回路は、前記第1の特性曲線の傾斜に基づいて、前記第2の特性曲線に関連付けられた第3のポイントを決定する、
    適応電圧スケーラ(AVS)。
  2. 前記AVS回路がソフトウェアによって少なくとも部分的に制御可能である、請求項1に記載のAVS。
  3. 前記少なくとも1つの遅延経路が少なくとも1つのプログラム可能な遅延経路から構成された、請求項1に記載のAVS。
  4. 前記データベースが、それぞれが前記機能回路の動作周波数に対応する複数の初期電圧レベルから構成された、請求項1に記載のAVS。
  5. 前記AVS回路が、前記遅延出力信号中の前記遅延情報に基づいて複数の学習電圧レベルを前記データベースに記憶するようにさらに構成された、請求項1に記載のAVS。
  6. 前記AVS回路が、温度センサから受信された動作温度レベルにさらに基づいて前記複数の学習電圧レベルを前記データベースに記憶するようにさらに構成された、請求項5に記載のAVS。
  7. 前記AVS回路は、前記電圧レベルが前記機能回路について前に学習されたかどうかを判断するようにさらに構成された、請求項1に記載のAVS。
  8. 前記AVS回路は、前記電圧レベルが前記機能回路について前に学習されている場合、前記入力信号が安定するのを待つことなしに前記電圧レベル設定信号を発生するようにさらに構成された、請求項1に記載のAVS。
  9. 前記データベースは、前記電圧レベルが前記機能回路について前記AVS回路によって前に学習されたかどうかを示すインジケータを記憶するように構成された、請求項1に記載のAVS。
  10. 前記AVS回路が、前記機能回路の現在の動作周波数に対する現在の電圧レベルと、前記探査された無効動作領域における前記シミュレートされた増加動作周波数との間の電圧マージン許容差を判断するようにさらに構成された、請求項に記載のAVS。
  11. 前記AVS回路が、前記電圧マージン許容差を前記データベースに記憶するように構成された、請求項10に記載のAVS。
  12. 前記AVS回路が、前記電圧マージン許容差に基づく新しい電圧レベルを前記データベースに記憶するように構成された、請求項10に記載のAVS。
  13. 前記AVS回路が、前記データベース中の少なくとも1つの電圧レベル、より高い動作周波数に対応する前記データベース中の電圧レベルを格納するようにさらに構成された、請求項1に記載のAVS。
  14. 前記AVS回路は、前記電圧レベルが前記機能回路を無効動作領域中で動作させた場合、前記電圧レベル設定信号に電圧マージンを追加するようにさらに構成された、請求項1に記載のAVS。
  15. 前記AVS回路は、前記機能回路を無効動作領域中で動作させた前記電圧レベルに対する、前記データベース中の動作周波数をマークするようにさらに構成された、請求項1に記載のAVS。
  16. 前記AVS回路が、前記電圧レベル設定信号を最小電圧レベル限界より下の電圧レベルに設定しないようにさらに構成された、請求項1に記載のAVS。
  17. 前記データベースが前記機能回路の最小電圧レベル限界を記憶するように構成された、請求項1に記載のAVS。
  18. 前記AVS回路が、前記機能回路の経年変化インジケータに基づいて前記最小電圧レベル限界に電圧レベル補正を適用するようにさらに構成された、請求項17に記載のAVS。
  19. 前記AVS回路が、前記機能回路の経年変化インジケータに基づいて前記電圧レベル設定信号に電圧レベル補正を適用するようにさらに構成された、請求項1に記載のAVS。
  20. 前記AVS回路が、前記機能回路の経年変化インジケータに基づいて電圧レベル補正を前記データベースに記憶するようにさらに構成された、請求項1に記載のAVS。
  21. 少なくとも1つの半導体チップに組み込まれた、請求項1に記載のAVS。
  22. 前記AVSが組み込まれた、セットトップボックス、エンターテインメントユニット、ナビゲーションデバイス、通信デバイス、携帯情報端末(PDA)、固定ロケーションデータユニット、モバイルロケーションデータユニット、モバイル電話、セルラー電話、コンピュータ、ポータブルコンピュータ、デスクトップコンピュータ、モニタ、コンピュータモニタ、テレビジョン、チューナー、ラジオ、衛星ラジオ、音楽プレーヤ、デジタル音楽プレーヤ、ポータブル音楽プレーヤ、ビデオプレーヤ、デジタルビデオプレーヤ、デジタルビデオディスク(DVD)プレーヤ、およびポータブルデジタルビデオプレーヤからなる群から選択されたデバイスをさらに含む、請求項1に記載のAVS。
  23. 適応電圧スケーラ(AVS)であって、
    入力信号を受信することと、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する量だけ前記入力信号を遅延させることとを行うための遅延手段と、
    データベースに結合され、前記遅延出力信号に応答するAVS手段であって、前記機能回路のターゲット動作周波数と前記遅延出力信号中の遅延情報とに関連付けられた、前記データベース中の電圧レベルに基づいて電圧レベル設定信号を発生するためのAVS手段と
    を含
    前記AVS手段は、前記機能回路の無効動作領域を探査するために、前記機能回路の増加動作周波数をシミュレートするために前記少なくとも1つの遅延経路の前記遅延を増加させるように構成され、
    前記AVS手段は、前記増加動作周波数をシミュレートする前に、第1の動作周波数と第1の電圧レベルとを第1の特性曲線に関連付けられた第1のポイントに記録し、
    前記AVS手段は、前記少なくとも1つの遅延経路の前記遅延の増加に応えて第1の条件が受信された場合に、前記増加動作周波数と現在の電圧レベルとを第2の特性曲線に関連付けられた第2のポイントに記録し、
    前記AVS手段は、前記第1の特性曲線の傾斜に基づいて、前記第2の特性曲線に関連付けられた第3のポイントを決定する、
    適応電圧スケーラ(AVS)。
  24. 適応電圧スケーラ(AVS)であって、
    入力信号を受信することと、遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する量だけ前記入力信号を遅延させることとを行うように構成された少なくとも1つの遅延回路と、
    前記遅延出力信号に応答するAVS回路であって、
    前記機能回路のターゲット動作周波数と前記遅延出力信号中の遅延情報とに基づいて電圧レベル設定信号を発生することと、
    前記機能回路の無効動作領域を探査するために、前記機能回路の増加動作周波数をシミュレートするために前記少なくとも1つの遅延経路の前記遅延を増加させることと
    前記増加動作周波数をシミュレートする前に、第1の動作周波数と第1の電圧レベルとを第1の特性曲線に関連付けられた第1のポイントに記録することと、
    前記少なくとも1つの遅延経路の前記遅延の増加に応えて第1の条件が受信された場合に、前記増加動作周波数と現在の電圧レベルとを第2の特性曲線に関連付けられた第2のポイントに記録することと、
    前記第1の特性曲線の傾斜に基づいて、前記第2の特性曲線に関連付けられた第3のポイントを決定することと、
    を行うように構成されたAVS回路と
    を含む、
    適応電圧スケーラ(AVS)。
  25. 前記AVS回路が、前記機能回路の現在の動作周波数に対する現在の電圧レベルと、前記探査された無効動作領域における前記シミュレートされた増加動作周波数との間の電圧マージン許容差を判断するようにさらに構成された、請求項24に記載のAVS。
  26. 前記AVS回路は、前記遅延出力信号に応答するものであって、前記遅延出力信号中の遅延情報と、前記機能回路の経年変化インジケータに基づく電圧レベル補正とに基づいて、電圧レベル設定信号を発生するように構成されたものである、
    請求項24に記載の適応電圧スケーラ(AVS)。
  27. 前記経年変化インジケータが、前記機能回路の電源投入時間から構成された、メモリに記憶されたタイマーから構成された、請求項26に記載のAVS。
  28. 機能回路の電圧レベルをスケーリングする方法であって、
    少なくとも1つの遅延回路中で入力信号を受信するステップと、
    遅延出力信号を生成するために、機能回路の少なくとも1つの遅延経路に関係する遅延量だけ前記入力信号を遅延させるステップと、
    前記機能回路のターゲット動作周波数と前記遅延出力信号中の遅延情報とに関連付けられた、データベース中の電圧レベルに基づいて電圧レベル設定信号を発生するステップと
    前記機能回路の無効動作領域を探査するために、前記機能回路の増加動作周波数をシミュレートするために前記少なくとも1つの遅延経路の前記遅延を増加させるステップと、
    前記増加動作周波数をシミュレートする前に、第1の動作周波数と第1の電圧レベルとを第1の特性曲線に関連付けられた第1のポイントに記録するステップと、
    前記少なくとも1つの遅延経路の前記遅延の増加に応えて第1の条件が受信された場合に、前記増加動作周波数と現在の電圧レベルとを第2の特性曲線に関連付けられた第2のポイントに記録するステップと、
    前記第1の特性曲線の傾斜に基づいて、前記第2の特性曲線に関連付けられた第3のポイントを決定するステップと、
    を含む、方法。
  29. 前記遅延出力信号中の前記遅延情報に基づいて複数の学習電圧レベルを前記データベースに記憶するステップをさらに含む、請求項28に記載の方法。
  30. 温度センサから受信された温度レベルにさらに基づいて複数の学習電圧レベルを前記データベースに記憶するステップをさらに含む、請求項29に記載の方法。
  31. 前記電圧レベルが前記機能回路について前に学習されたかどうかを判断するステップと、
    前記電圧レベルが前記機能回路について前に学習されている場合、前記入力信号が安定するのを待つことなしに前記電圧レベル設定信号を発生するステップと
    をさらに含む、請求項28に記載の方法。
  32. 前記機能回路の現在の動作周波数に対する現在の電圧レベルと、前記探査された無効動作領域における前記シミュレートされた増加動作周波数との間の電圧マージン許容差を判断するステップをさらに含む、請求項28に記載の方法。
  33. 前記データベース中の前記電圧レベル、前記入力信号の動作周波数よりも低い動作周波数に関連付けられた、より高い電圧レベルを格納するステップをさらに含む、請求項28に記載の方法。
  34. 前記電圧レベルが前記機能回路を無効動作領域中で動作させた場合、前記電圧レベル設定信号に電圧マージンを追加するステップをさらに含む、請求項28に記載の方法。
  35. 前記電圧レベルが前記機能回路を無効動作領域中で動作させた場合、前記データベース中の前記電圧レベルに電圧マージンを追加するステップをさらに含む、請求項28に記載の方法。
  36. AVSモジュールに、機能回路のターゲット動作周波数と、前記機能回路の少なくとも1つの遅延経路に関係する遅延量を表す遅延出力信号中の遅延情報とに関連付けられた、データベース中の電圧レベルに基づいて電圧レベル設定信号を発生させ
    前記AVSモジュールに、前記機能回路の無効動作領域を探査するために、前記機能回路の増加動作周波数をシミュレートするために前記少なくとも1つの遅延経路の前記遅延を増加させ、
    前記AVSモジュールに、前記増加動作周波数をシミュレートする前に、第1の動作周波数と第1の電圧レベルとを第1の特性曲線に関連付けられた第1のポイントに記録させ、
    前記AVSモジュールに、前記少なくとも1つの遅延経路の前記遅延の増加に応えて第1の条件が受信された場合に、前記増加動作周波数と現在の電圧レベルとを第2の特性曲線に関連付けられた第2のポイントに記録させ、
    前記AVSモジュールに、前記第1の特性曲線の傾斜に基づいて、前記第2の特性曲線に関連付けられた第3のポイントを決定させる、
    コンピュータ実行可能命令を記憶したコンピュータ可読媒体。
  37. 前記命令がさらに、前記AVSモジュールに、前記遅延出力信号中の前記遅延情報に基づいて複数の学習電圧レベルを前記データベースに記憶させる、請求項36に記載のコンピュータ可読媒体。
  38. 前記命令がさらに、前記AVSモジュールに、前記電圧レベルが前記機能回路について前に学習されている場合、前記入力信号が安定するのを待つことなしに前記電圧レベル設定信号を発生させる、請求項36に記載のコンピュータ可読媒体。
  39. 前記命令がさらに、前記AVSモジュールに、前記データベース中の少なくとも1つの電圧レベル、より高い動作周波数に対応する前記データベース中の電圧レベルを格納させる、請求項36に記載のコンピュータ可読媒体。
  40. 前記命令がさらに、前記AVSモジュールに、前記電圧レベルが前記機能回路を無効動作領域中で動作させた場合、前記電圧レベル設定信号に電圧マージンを追加させる、請求項36に記載のコンピュータ可読媒体。
  41. 前記命令がさらに、前記AVSモジュールに、前記機能回路の経年変化インジケータに基づいて前記電圧レベル設定信号に電圧レベル補正を適用させる、請求項36に記載のコンピュータ可読媒体。
JP2012502323A 2009-03-30 2010-03-30 適応電圧スケーラ(avs)、電圧レベルをスケーリングする方法、回路、及び、コンピュータ可読媒体 Active JP5259877B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US16488209P 2009-03-30 2009-03-30
US61/164,882 2009-03-30
US22277909P 2009-07-02 2009-07-02
US61/222,779 2009-07-02
PCT/US2010/029220 WO2010117795A2 (en) 2009-03-30 2010-03-30 Adaptive voltage scalers (avss), systems, and related methods

Publications (2)

Publication Number Publication Date
JP2012522293A JP2012522293A (ja) 2012-09-20
JP5259877B2 true JP5259877B2 (ja) 2013-08-07

Family

ID=42199391

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012502323A Active JP5259877B2 (ja) 2009-03-30 2010-03-30 適応電圧スケーラ(avs)、電圧レベルをスケーリングする方法、回路、及び、コンピュータ可読媒体

Country Status (8)

Country Link
US (3) US8797095B2 (ja)
EP (2) EP2414908B1 (ja)
JP (1) JP5259877B2 (ja)
KR (1) KR101402178B1 (ja)
CN (2) CN104536555B (ja)
ES (2) ES2830123T3 (ja)
HU (1) HUE038104T2 (ja)
WO (1) WO2010117795A2 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010117795A2 (en) 2009-03-30 2010-10-14 Qualcomm Incorporated Adaptive voltage scalers (avss), systems, and related methods
US8661274B2 (en) * 2009-07-02 2014-02-25 Qualcomm Incorporated Temperature compensating adaptive voltage scalers (AVSs), systems, and methods
US8811068B1 (en) 2011-05-13 2014-08-19 Suvolta, Inc. Integrated circuit devices and methods
US8819603B1 (en) 2011-12-15 2014-08-26 Suvolta, Inc. Memory circuits and methods of making and designing the same
US8464199B1 (en) 2012-05-16 2013-06-11 International Business Machines Corporation Circuit design using design variable function slope sensitivity
US20140028364A1 (en) * 2012-07-27 2014-01-30 Lsi Corporation Critical path monitor hardware architecture for closed loop adaptive voltage scaling and method of operation thereof
TW201413437A (zh) * 2012-09-25 2014-04-01 Msi Computer Shenzhen Co Ltd 多階段降低cpu能耗的節能裝置
US20140136177A1 (en) * 2012-11-09 2014-05-15 Mediatek Inc. Critical path emulating apparatus using hybrid architecture
KR101979665B1 (ko) * 2012-11-22 2019-05-20 삼성전자 주식회사 구동 상태별 구동 조건 제어 방법 및 이를 지원하는 단말기
US9223327B1 (en) * 2012-11-26 2015-12-29 Marvell International Ltd. Universal adaptive voltage scaling system
US9218044B2 (en) * 2012-11-27 2015-12-22 International Business Machines Corporation Computing system frequency target monitor
US8984308B2 (en) * 2012-12-03 2015-03-17 Qualcomm Incorporated System and method of adaptive voltage scaling
US9378803B2 (en) * 2013-03-15 2016-06-28 Qualcomm Incorporated System and method to regulate operating voltage of a memory array
DE102013206300B4 (de) * 2013-04-10 2014-11-27 RACYICS GmbH Hardware Performance Monitor für Mikroelektronische Schaltungen mit adaptiver Spannungsversorgungsregelung
US9304573B2 (en) * 2013-06-21 2016-04-05 Apple Inc. Dynamic voltage and frequency management based on active processors
US9195291B2 (en) 2013-06-21 2015-11-24 Apple Inc. Digital power estimator to control processor power consumption
CN103345299B (zh) * 2013-07-24 2016-03-30 华为技术有限公司 一种电压调整方法及相应的hpm、芯片和芯片系统
KR102135100B1 (ko) * 2013-08-23 2020-07-17 삼성전자주식회사 전자 장치의 동적 전압 주파수 제어 방법 및 장치
US9606605B2 (en) 2014-03-07 2017-03-28 Apple Inc. Dynamic voltage margin recovery
CN104035018B (zh) * 2014-06-12 2017-04-19 华为技术有限公司 电压自适应调整电路和芯片
US10060955B2 (en) * 2014-06-25 2018-08-28 Advanced Micro Devices, Inc. Calibrating power supply voltages using reference measurements from code loop executions
KR102271469B1 (ko) 2014-10-24 2021-06-30 삼성전자주식회사 반도체 장치 및 이를 포함하는 반도체 시스템
WO2016087002A1 (en) * 2014-12-05 2016-06-09 Telefonaktiebolaget Lm Ericsson (Publ) Voltage regulator mechanism, electronic device, method and computer program
JP6377560B2 (ja) * 2015-03-24 2018-08-22 シャープ株式会社 情報処理装置、cpu印加電圧制御装置、情報処理装置の制御方法
US9484892B1 (en) 2015-09-10 2016-11-01 Qualcomm Incorporated Integrated circuit adaptive voltage scaling with de-aging
CN107132904B (zh) * 2016-02-29 2020-12-15 华为技术有限公司 一种ddr系统的控制系统及控制方法
KR20170124017A (ko) 2016-04-29 2017-11-09 삼성전자주식회사 동작 전압을 조절하는 메모리 장치, 메모리 장치를 제어하는 어플리케이션 프로세서 및 메모리 장치의 동작방법
US10338670B2 (en) 2016-06-10 2019-07-02 Microsoft Technology Licensing, Llc Input voltage reduction for processing devices
US10209726B2 (en) 2016-06-10 2019-02-19 Microsoft Technology Licensing, Llc Secure input voltage adjustment in processing devices
US10310572B2 (en) 2016-06-10 2019-06-04 Microsoft Technology Licensing, Llc Voltage based thermal control of processing device
US10248186B2 (en) 2016-06-10 2019-04-02 Microsoft Technology Licensing, Llc Processor device voltage characterization
KR20180055143A (ko) 2016-11-16 2018-05-25 삼성전자주식회사 시스템 온 칩, 이를 포함하는 장치 및 이의 구동 방법
JP2018106591A (ja) * 2016-12-28 2018-07-05 ルネサスエレクトロニクス株式会社 半導体装置、動作制御方法、及びプログラム
US10430310B2 (en) * 2017-04-01 2019-10-01 Intel Corporation Dynamic voltage-frequency curve management
US20200033197A1 (en) * 2017-07-11 2020-01-30 Mitsubishi Electric Corporation Processing apparatus
CN109510621B (zh) * 2017-09-15 2022-06-17 瑞芯微电子股份有限公司 一种自适应电压频率调节方法和装置
WO2020152390A1 (en) * 2019-01-23 2020-07-30 Minima Processor Oy System with microelectronic circuit, and a method for controlling the operation of a microelectronic circuit
US11036275B2 (en) * 2019-03-29 2021-06-15 Intel Corporation Detection of known workload patterns
US11543872B2 (en) * 2019-07-02 2023-01-03 Microsoft Technology Licensing, Llc Dynamically adjusting device operating voltage based on device performance
US11579643B2 (en) * 2019-11-10 2023-02-14 Realtek Semiconductor Corp. Adaptive voltage scaling scanning method and associated electronic device
CN113031736A (zh) * 2019-12-09 2021-06-25 华为技术有限公司 一种电压调节方法和电子设备
US11747852B2 (en) * 2019-12-23 2023-09-05 Advanced Micro Devices, Inc. Method and apparatus for maintaining stable operation of servers in a data center

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6944780B1 (en) * 2002-01-19 2005-09-13 National Semiconductor Corporation Adaptive voltage scaling clock generator for use in a digital processing component and method of operating the same
US7698583B2 (en) * 2002-10-03 2010-04-13 Via Technologies, Inc. Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature
US7228242B2 (en) 2002-12-31 2007-06-05 Transmeta Corporation Adaptive power control based on pre package characterization of integrated circuits
US20050076253A1 (en) 2003-10-05 2005-04-07 De-Jen Lu Method of url-based power management and associated web browsing device
GB2408116B (en) * 2003-11-14 2006-09-20 Advanced Risc Mach Ltd Operating voltage determination for an integrated circuit
US7577859B2 (en) * 2004-02-20 2009-08-18 International Business Machines Corporation System and method of controlling power consumption in an electronic system by applying a uniquely determined minimum operating voltage to an integrated circuit rather than a predetermined nominal voltage selected for a family of integrated circuits
JP4894014B2 (ja) * 2004-06-15 2012-03-07 エスティー‐エリクソン、ソシエテ、アノニム 集積回路のための電源の適応制御
CN101069147B (zh) 2004-11-10 2011-07-06 飞思卡尔半导体公司 使用多个参考电路来控制电压和频率的装置和方法
US7257723B2 (en) * 2005-01-07 2007-08-14 Atheros Communications, Inc. Reducing power consumption in embedded systems by controlling voltage based on system state and partition designation
US7289921B1 (en) * 2005-05-26 2007-10-30 National Semiconductor Corporation System and method for providing an improved voltage monitor for an adjustable supply voltage in adaptive voltage scaling
US7417482B2 (en) * 2005-10-31 2008-08-26 Qualcomm Incorporated Adaptive voltage scaling for an electronics device
US7564259B2 (en) 2005-12-13 2009-07-21 International Business Machines Corporation Digital circuit with dynamic power and performance control via per-block selectable operating voltage
CN100394797C (zh) * 2006-04-13 2008-06-11 上海交通大学 基于avs运动补偿的亮度插值器的vlsi实现方法
US9134782B2 (en) * 2007-05-07 2015-09-15 Nvidia Corporation Maintaining optimum voltage supply to match performance of an integrated circuit
WO2008141873A1 (en) * 2007-05-22 2008-11-27 International Business Machines Corporation Method and unit for power management of a microprocessor
EP2171489A2 (en) * 2007-07-19 2010-04-07 Nxp B.V. Semi-adaptive voltage scaling for low-energy digital vlsi-design
US8725488B2 (en) * 2007-07-26 2014-05-13 Qualcomm Incorporated Method and apparatus for adaptive voltage scaling based on instruction usage
US7915910B2 (en) * 2009-01-28 2011-03-29 Apple Inc. Dynamic voltage and frequency management
WO2010117795A2 (en) 2009-03-30 2010-10-14 Qualcomm Incorporated Adaptive voltage scalers (avss), systems, and related methods
US8661274B2 (en) * 2009-07-02 2014-02-25 Qualcomm Incorporated Temperature compensating adaptive voltage scalers (AVSs), systems, and methods
US8378738B1 (en) 2009-10-16 2013-02-19 Marvell International Ltd. Adaptive voltage scaling using a delay line
US8004329B1 (en) * 2010-03-19 2011-08-23 National Semiconductor Corporation Hardware performance monitor (HPM) with variable resolution for adaptive voltage scaling (AVS) systems
US8572426B2 (en) * 2010-05-27 2013-10-29 National Semiconductor Corporation Hardware performance monitor (HPM) with extended resolution for adaptive voltage scaling (AVS) systems
US8531225B1 (en) * 2012-05-18 2013-09-10 Mediatek Singapore Pte. Ltd. Configurable critical path emulator

Also Published As

Publication number Publication date
JP2012522293A (ja) 2012-09-20
CN104536555A (zh) 2015-04-22
EP2955605A1 (en) 2015-12-16
US20140225658A1 (en) 2014-08-14
WO2010117795A3 (en) 2010-12-02
CN102365606B (zh) 2015-02-18
KR101402178B1 (ko) 2014-05-30
WO2010117795A2 (en) 2010-10-14
EP2414908B1 (en) 2020-08-12
CN102365606A (zh) 2012-02-29
US9092046B2 (en) 2015-07-28
EP2414908A2 (en) 2012-02-08
US9122291B2 (en) 2015-09-01
HUE038104T2 (hu) 2018-09-28
US8797095B2 (en) 2014-08-05
US20140312951A1 (en) 2014-10-23
ES2678296T3 (es) 2018-08-10
ES2830123T3 (es) 2021-06-03
EP2955605B1 (en) 2018-04-18
CN104536555B (zh) 2017-05-24
US20110080202A1 (en) 2011-04-07
KR20120003927A (ko) 2012-01-11

Similar Documents

Publication Publication Date Title
JP5259877B2 (ja) 適応電圧スケーラ(avs)、電圧レベルをスケーリングする方法、回路、及び、コンピュータ可読媒体
JP5499165B2 (ja) 温度補償適応型電圧スケーラ(avs)システムおよび方法
JP5745029B2 (ja) 測定された動作特性に基づいてクロック信号を調整するための回路、システムおよび方法
KR100862113B1 (ko) 공정 변화에 대한 정보를 이용하여 공급전압/공급주파수를제어할 수 있는 장치와 방법
JP5706007B2 (ja) オンチップ電圧調整器を有する半導体デバイス
JP5490928B2 (ja) メモリシステムにおいてワード線パルス幅を適応させること
JP2017534939A (ja) 適応クロック分配システム内のクリティカルパス時間遅延の動作較正のための自動較正回路、ならびに関連する方法およびシステム
US10408863B2 (en) Reference voltage prediction in memory subsystem
JP2011170516A (ja) メモリコントローラ、半導体記憶装置およびこれらを備えるメモリシステム
US20230112432A1 (en) Dynamic setup and hold times adjustment for memories
US9691470B1 (en) Apparatus and method for restricted range memory calibration
JP2011227937A (ja) 電源電圧調整装置、記録媒体および電源電圧調整方法
JP2010198535A (ja) 消費電力低減回路および消費電力低減方法
TW201530558A (zh) 記憶體裝置與控制方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20121023

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130123

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130225

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: 20130402

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130424

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

Free format text: PAYMENT UNTIL: 20160502

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5259877

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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