(57)【特許請求の範囲】
【請求項１】
デジタル回路において供給電圧をダイナミックに調整する方法であって：
デジタル回路における信号経路上の信号の伝播遅延を判定する段階において、前記信号はクロック信号によって前記信号経路に沿ってクロックされ、前記判定段階は：
前記信号経路と実質的に同一の要素から成り、かつ入力および出力を有する、前記信号経路に対する重複経路を供給する段階；
前記重複経路の前記入力に前記クロック信号を引加する段階；および
前記重複経路の出力における前記クロック信号の位相を前記重複経路の入力における前記クロック信号の位相と比較し、前記判定済み前記伝播遅延を表わす位相誤差信号を導出する段階から成り；
前記位相誤差信号がゼロとなり、前記伝播遅延が所定の期間に達したと判定されるまで、前記位相誤差信号に応じて供給電圧のレベルを調整する段階であって、前記供給電圧は、前記判定済み伝播遅延が前記所定の期間に達すると第１レベルを有する、段階；および
前記第１レベルを有する供給電圧を前記デジタル回路の構成要素に与える段階；によって構成されることを特徴とする方法。
【請求項２】
前記デジタル回路は、クロック周期を有するクロック信号によってクロックされ、前記所定の期間は、前記クロック信号のクロック周期に実質的に等しいか、あるいはそれ以下であることを特徴とする請求項１記載の方法。
【請求項３】
前記与える段階は、前記重複経路で所定の遅延を追加する段階をさらに含んで構成されることを特徴とする請求項１記載の方法。
【請求項４】
デジタル回路において供給電圧をダイナミックに調整する方法であって、前記デジタル回路における信号経路上の信号の伝播遅延が前記供給電圧に依存する、方法であって：
（ａ）前記デジタル回路の所定の信号経路について、所定のレベルの供給電圧および対応する伝播遅延の第１シーケンスを格納する段階；
（ｂ）前記デジタル回路によって達成されるべきタスクに応じて前記デジタル回路中の信号経路を選択する段階；
（ｃ）前記格納済み第１シーケンスの所定のレベルのうちの一つを有する供給電圧を発生し、前記デジタル回路の前記選択された信号経路に与える段階；
（ｄ）前記選択された信号経路上の入力信号の伝播遅延を測定し、前記伝播遅延がいつ所定の期間に達するのかを判定する段階であって、前記測定し、判定する段階は：
前記選択された信号経路の入力にて入力信号を与える段階であって、前記入力信号は、クロック信号によって前記信号経路の出力にクロックされる、段階と、
前記クロック信号の所定のクロック・サイクル数の後の前記選択された信号経路の出力における信号と、予定信号とを比較する段階と、
前記出力における信号が前記予定信号と一致しない場合に、誤差信号を生成し、前記出力における信号が前記予定信号と一致する場合に、有効信号を生成する段階と、
前記供給電圧のレベルを所定の量だけ前記一つの所定のレベルから調整する段階と、
前記調整済み供給電圧を前記選択された信号経路に印加する段階と、
前記有効信号が生成されている限り前記与える段階，比較する段階，生成する段階，調整する段階および印加する段階を繰り返す段階と、
前記誤差信号が生成される前に前記伝播遅延が前記所定の期間に達したことを判定する段階であって、前記伝播遅延が前記所定の期間に達する場合前記調整された供給電圧は第１レベルを有する、前記段階と、
によって構成され；
（ｅ）前記調整済み供給電圧の第１レベルをその対応する判定済み伝播期間とともに格納する段階；
（ｆ）前記選択された信号経路について前記調整済み供給電圧のレベルおよび対応する判定済み伝播遅延の第２シーケンスが格納されるように、所定のレベルの前記格納済み第１シーケンスのうち各以降の所定のレベルについて、段階（ｃ），（ｄ）および（ｅ）を繰り返す段階；および
（ｇ）前記第２シーケンスから所望の伝播遅延について調整済み供給電圧のレベルを判定し、前記判定済みレベルにて前記調整済み供給電圧を前記デジタル回路の構成要素に印加する段階；
によって構成されることを特徴とする方法。
【請求項５】
前記所定の経路は、前記デジタル回路の悪い方の場合の経路であることを特徴とする請求項４記載の方法。
【請求項６】
前記デジタル回路によって実行されるタスクに応じて前記選択された経路を選択する段階；をさらに含んで構成されることを特徴とする請求項４または５記載の方法。
【請求項７】
マージンを有する供給電圧を与えるため、所定のマージンを前記調整済み供給電圧のレベルに追加する段階；および
前記マージンを有する供給電圧を前記デジタル回路の構成要素に印加する段階；
をさらに含んで構成されることを特徴とする請求項４，５または６記載の方法。
【請求項８】
デジタル回路においてクロック信号の周波数および供給電圧をダイナミックに調整する方法であって：
前記デジタル回路によって実行されるタスクを判定する段階；
前記判定されたタスクに応じて前記クロック信号の周波数を調整し、前記調整済みクロック信号を前記デジタル回路の構成要素に供給する段階；
前記デジタル回路における信号経路上の信号の伝播遅延を判定する段階であって、前記信号はクロック信号によって前記信号経路に沿ってクロックされ、前記判定段階は：
前記信号経路と実質的に同一の要素から成り、かつ入力および出力を有する、前記信号経路に対する重複経路を提供する段階；
前記重複経路の前記入力に前記クロック信号を引加する段階；および
前記重複経路の出力における前記クロック信号の位相を前記重複経路の入力における前記クロック信号の位相と比較し、前記判定済み前記伝播遅延を表わす位相誤差信号を導出する段階から成り；
前記位相誤差信号がゼロとなり、前記判定済み伝播遅延が所定の期間に達するまで、前記クロック信号の調整済み周波数と、前記位相誤差信号とに応じて、調整済み供給電圧を与えるために前記供給電圧のレベルを調整する段階であって、前記供給電圧は、前記判定済み伝播遅延が前記所定の期間に達するとき第１レベルを有する、段階；および
前記第１レベルを有する供給電圧を前記デジタル回路の構成要素に与える段階；によって構成されることを特徴とする方法。
【請求項９】
前記第１レベルよりも大きい基準レベルを有する供給電圧を発生する段階をさらに含んで構成される請求項８記載の方法であって、前記調整する段階は、前記伝播遅延が前記所定の期間に達したと判定されるまで、調整済み供給電圧を与えるために供給電圧のレベルを前記基準レベルから段階的に低減する段階と、前記調整済み供給電圧を前記デジタル回路の信号経路に与える段階とによって構成されることを特徴とする請求項８記載の方法
【請求項１０】
前記調整済み周波数を有するクロック信号はクロック周期を有し、前記所定の期間は、前記クロック信号のクロック周期に実質的に等しいか、あるいはそれ以下であることを特徴とする請求項８または９記載の方法。
【請求項１１】
前記与える段階は、前記重複経路に所定の遅延を追加する段階をさらに含んで構成されることを特徴とする請求項８，９または１０記載の方法。
【請求項１２】
デジタル回路において供給電圧をダイナミックに調整する回路であって：
前記デジタル回路における信号経路上の信号の伝播遅延を判定する手段であって、前記信号はクロック信号によって前記信号経路に沿ってクロックされ、前記判定手段は：
前記信号経路と実質的に同一の要素から成り、かつ入力および出力を有する重複経路；および
前記信号経路に沿って前記信号をクロックするクロック信号を発生するためのクロック信号発生器であって、前記クロック信号は前記重複経路の前記入力に供給され；および
前記重複経路の出力における前記クロック信号の位相を前記重複経路の入力における前記クロック信号の位相と比較し、前記判定済み前記伝播遅延を表わす位相誤差信号を導出する比較器から成り；
前記位相誤差信号がゼロとなり、前記伝播遅延が所定の期間に達したと判定されるまで、前記位相誤差信号に応じて前記供給電圧のレベルを調整する電圧発生器であって、前記供給電圧は、前記判定済み伝播遅延が前記所定の期間に達したとき第１レベルを有し、また前記電圧発生器は、前記第１レベルを有する供給電圧を前記デジタル回路の構成要素に与える、電圧発生器；
によって構成されることを特徴とする回路。
【請求項１３】
前記デジタル回路は、クロック周期を有するクロック信号によってクロックされ、前記所定の期間は、前記クロック信号のクロック周期に実質的に等しいか、あるいはそれ以下であることを特徴とする請求項１２記載の回路。
【請求項１４】
前記比較器と、前記重複経路の出力との間に結合された所定の遅延をさらに含んで構成されることを特徴とする請求項１２または１３記載の回路。
【発明の詳細な説明】
発明の分野
本発明は、デジタル回路の電力消費および／または処理能力が最適化されるところの、デジタル回路において供給電圧および／またはクロック信号の周波数をダイナミックに調整するための方法および回路に関する。
発明の背景
デジタル・セルラ電話などの携帯デジタル装置や、ピコセル・セルラ基地局（picocell cellular base stations）など電力消費または電力散逸に敏感な他のデジタル用途では、省電力化は重要な事項である。例えば、バッテリ駆動の携帯装置では、省電力化は、バッテリの交換または再充電までに携帯装置が動作可能な期間を延長できる。非バッテリ駆動型装置でさえも、装置の部品の信頼性を改善できるという点で、省電力化は有利である。
デジタル・セルラ電話などのデジタル装置の一部であるデジタル回路は、供給電圧Ｖｄｄおよびクロック信号を入力として必要とする。このようなデジタル回路における電力消費（Ｐ）は、次式によって近似的に表すことができる：
Ｐ＝ｃ＊Ｆｒｅｆ＊Ｖｄｄ2
ここで、Ｆｒｅｆはデジタル回路をクロックするクロック信号の周波数であり、ｃはデジタル回路の等価容量（equivalent capacitance）であり、Ｖｄｄはデジタル回路の供給電圧である。
従って、この式から、クロック周波数Ｆｒｅｆおよび供給電圧Ｖｄｄを、デジタル回路の適正機能を保証する限界まで低下させることにより、電力消費を軽減できることが明らかである。
電力消費を軽減するための多くの異なる方法がすでに検討されてきた。例えば、処理が必要なときにクロック信号をできるだけ高速にして、処理が必要ないときにクロックを完全に停止させることは、一部の用途で知られている。この方法は、実質的に常に何らかの処理を必要とする用途では利用できない。米国特許第５，３７８，９３５号では、処理能力の必要に応じてクロック信号のクロック周波数を調整することにより電力消費を最適化するための方法が開示されている。これら両方の方法は、電力消費の線形的な低下を達成する。
同様に、一定のより低い供給電圧で動作することにより電力消費の低下を達成することも知られている。電力消費はＶｄｄ2に依存するので、このような供給電圧の低下は節電の向上を達成する。ただし、この結果、性能が劣化し、これは一部の用途では望ましくない。
ある既知のシステムは、供給電圧がゼロになるパワーダウン・モードを有することによって電力消費を低減する。クロックが完全に停止する期間を有するシステムと同様に、この方法も実質的に常に何らかの処理を必要とする用途では利用できない。
日本特許出願公開番号ＪＰ０８  １３６６２１号は、遅延回路を通過するパルスの遅延を所定の値と比較することにより、装置に供給される電圧を調整する電源電圧供給装置開示する。
ＰＣＴ国際公開番号ＷＯ９０  １３０７９号は、選択動作電圧を有する計算システムを開示する。このシステムは、異なるバス速度に対しシステムにおける要素の適切な動作を確保するために用いられる最小電圧を判定し、その判定電圧レベルをメモリに格納する。使用に際し、その電圧レベルは、バス速度に応じてメモリの内容を使用して選択される。
欧州特許出願第ＥＰ−Ａ−０７２２１３７号では、マイクロプロセッサの内部クロック周波数を動的に変化するクロック制御システムを開示する。
米国特許番号４，６９１，１２４号は、自己補正する最小速度集積回路を開示する。クロックは、集積回路の最も遅い信号経路に応じて生成される。
欧州特許出願第ＥＰ−Ａ−０６３２３６０号では、実行されるタスクに応じてクロック信号の周波数および供給電圧を調整することにより電力消費を低減するための方法が開示されている。すべての既知の方法と同様に、本特許出願に開示される方法も、例えば、温度，経時劣化（aging）および回路製造工程に起因する経時的および回路単位の回路パラメータの変化を考慮していない。
従って、上記の欠点を克服する、デジタル回路において電力消費をダイナミックに制御するための改善された方法が必要とされる。
発明の概要
本発明の第１の態様に従って、デジタル回路において供給電圧をダイナミックに調整するための方法が提供され、前記方法は：
デジタル回路における信号経路上の信号の伝播遅延を判定する段階において、前記信号はクロック信号によって前記信号経路に沿ってクロックされ、前記判定段階は：
前記信号経路と実質的に同一の要素から成り、かつ入力および出力を有する、前記信号経路に対する重複経路を提供する段階；
前記重複経路の前記入力に前記クロック信号を引加する段階；および
前記重複経路の出力における前記クロック信号の位相を前記重複経路の入力における前記クロック信号の位相と比較し、前記判定済み前記伝播遅延を表わす位相誤差信号を導出する段階から成り；
前記位相誤差信号がゼロとなり、前記伝播遅延が所定の期間に達したと判定されるまで、前記位相誤差信号に応じて供給電圧のレベルを調整する段階であって、前記供給電圧は、前記判定済み伝播遅延が前記所定の期間に達すると第１レベルを有する、段階；および
前記第１レベルを有する供給電圧を前記デジタル回路の構成要素に与える段階；
によって構成される。
なお、好ましくは経路のゲートをクロックするクロック信号のクロック周期に対応する所定の期間に前記伝搬遅延が達するまで、供給電圧のレベルを調整することにより、本発明は、この経路にとって最適な供給電圧をリアルタイムで判定し利用できる。従って、例えば温度，経時劣化および回路製造工程に起因する経時的および回路単位の回路パラメータの変化を考慮に入れて、電力消費をリアルタイムで最適化できる。
本発明の第１の態様の第２実施例に従って、請求の範囲の請求項４に記載されるように、デジタル回路において供給電圧をダイナミックに調整するための方法が提供される。
本発明の第２の態様に従って、デジタル回路においてクロック信号の周波数および供給電圧をダイナミックに調整するための方法が提供され、前記方法は：
前記デジタル回路によって実行されるタスクを判定する段階；
前記判定されたタスクに応じてクロック信号の周波数を調整し、前記調整されたクロック信号を前記デジタル回路の構成要素に供給する段階；
前記デジタル回路における信号経路上の信号の伝播遅延を判定する段階であって、前記信号はクロック信号によって前記信号経路に沿ってクロックされ、前記判定段階は：
前記信号経路と実質的に同一の要素から成り、かつ入力および出力を有する、前記信号経路に対する重複経路を提供する段階；
前記重複経路の前記入力に前記クロック信号を引加する段階；および
前記重複経路の出力おける前記クロック信号の位相を前記重複経路の入力における前記クロック信号の位相と比較し、前記判定済み前記伝播遅延を表わす位相誤差信号を導出する段階から成り；
前記位相誤差信号がゼロとなり、前記判定済み伝播遅延が所定の期間に達するまで、前記クロック信号の調整済み周波数と、前記位相誤差信号とに応じて、調整済み供給電圧を与えるために前記供給電圧のレベルを調整する段階であって、前記供給電圧は、前記判定済み伝播遅延が前記所定の期間に達するとき第１レベルを有する、段階；および
前記第１レベルを有する供給電圧を前記デジタル回路の構成要素に与える段階；
によって構成される。
【図面の簡単な説明】
以下の添付の図面を参照して、本発明の異なる態様および実施例について、一例としてのみ説明する。
第１図は、２つの異なる技術について、供給電圧（Ｖｄｄ）の関数としての伝搬遅延（ｔｐｄ）のグラフである。
第２図は、デジタル回路において供給電圧のレベルをダイナミックに調整する第１回路の概略ブロック図である。
第３図は、デジタル回路において供給電圧のレベルをダイナミックに調整する第２回路の概略ブロック図である。
第４図は、第３図の第２回路を利用して、本発明に従って供給電圧を調整する方法のフローチャートである。
第５図は、デジタル回路において供給電圧のレベルおよびクロック信号のクロック周波数をダイナミックに調整する第１システムの簡略ブロック図である。
詳細な説明
上式から電力消費は供給電圧Ｖｄｄの二乗に依存するので、任意の時間における供給電圧の最適レベルを少なくとも得ることが望ましい。
デジタル回路では、クロック信号によって信号経路上でクロックされた信号は、信号経路のすべてのゲートを介してクロックされるので、伝搬遅延（propagation delay）が生じる。ここでは、伝搬遅延は、デジタル回路における信号経路のゲートを介して信号が伝播するのに要する時間として定義される。特定の技術について、伝搬遅延と供給電圧のレベルとの間には関係がある。第１図は、供給電圧（Ｖｄｄ）の関数としての伝搬遅延（ｔｐｄ）のグラフであり、２つの異なる０．５ミクロン・プロセス技術であるＣＭＯＳとＧＣＭＯＳのそれぞれ２つの曲線２０，２２を示す。このグラフから、伝搬遅延は、供給電圧が低下すると伝搬遅延が増加するように、デジタル回路に供給される供給電圧Ｖｄｄに依存することが明らかである。
本発明による方法は、デジタル回路における信号経路上の信号の伝搬遅延と、デジタル回路の供給電圧との間の関係を利用して、本発明の一態様に従って、供給電圧に対して電力消費を最適化するように、伝搬遅延に応じて供給電圧をダイナミックに調整する。伝搬遅延が所定の期間、すなわち、好ましくは経路のゲートをクロックするクロック信号のクロック周期に対応する所定の期間に達するまで、供給電圧のレベルを調整することにより、本発明は、この経路にとって最適な供給電圧をリアルタイムに判定し、利用できる。すなわち、あるクロック周波数について、本発明は、デジタル回路を適正に動作させることが可能な最大伝搬遅延、ひいては供給電圧の最小レベルを判定する。
なお、固定周波数クロック信号を利用するシステムにおいて、あるいはクロック信号の周波数をダイナミックに変化させるシステムにおいても、本発明に従って、供給電圧は伝搬遅延に基づいてダイナミックに変更できることが理解される。ただし、後者の場合、クロック信号の周波数を最初に選択して、次に供給電圧を伝搬遅延と、クロック信号の選択された周波数とに基づいて変更しなければならない。後者のシステムの例について、第５図を参照して以下で図説する。
伝搬遅延は、プロセス技術に依存するだけでなく、温度や製造プロセス自体にも依存する。また、他のパラメータも伝搬遅延に影響を及ぼすことがある。従って、最適供給電圧を選択する際に、これらのパラメータを考慮に入れなければならない。実際、供給電圧およびクロック信号の周波数はこれらのパラメータの原因ではなく影響に基づいて適応されるので、これらすべてのパラメータは本発明によって自動的に考慮される。
ここで第２図を参照して、伝搬遅延を監視することにより、デジタル回路２０４であって、その一部２０２のみが示されている、デジタル回路２０４において、供給電圧をダイナミックに調整する本発明の第１実施例による第１回路２００は、電圧レベル・コントローラ２１２および電圧発生器２０８によって構成される。
デジタル回路２０４の一部２０２は、複数のゲートからなる信号経路２２２によって構成され、この信号経路２２２は第１フリップフロップ２２０と第２フリップフロップ２２４との間に結合され、これら両方のフリップフロップは、クロック周波数Ｆｒｅｆを有するクロック信号ＣＬＫによってクロックされる。信号Ｓは、クロック信号ＣＬＫによって、かつ信号経路２２２のゲートの伝搬遅延に応じて、第１フリップフロップ２２０から第２フリップフロップ２２４にクロックされる。
電圧レベル・コントローラ２１２は、クロック信号ＣＬＫを受けるべく結合された入力と、電圧制御信号Ｖｃｔｌを電圧発生器２０８に与えるための出力とを有する。電圧レベル・コントローラ２１２の入力におけるクロック信号ＣＬＫは、位相検出器２３０の第１入力に直接結合され、かつ重複経路２２６を介して位相検出器２３０の第２入力に結合される。重複経路２２６は、信号経路２２２と同じ構成要素またはゲートを有する。好適な実施例では、所定の遅延２２８は、重複経路２２６と位相検出器２３０の第２入力との間で結合される。従って、クロック信号ＣＬＫに対して遅延されたクロック信号は、位相検出器２３０の第２入力に結合される。位相検出器２３０は、電圧制御信号Ｖｃｔｌを電圧レベル・コントローラ２１２の出力に与える。電圧制御信号Ｖｃｔｌはパルス列（pulse train）であるので、電圧発生器２０８によって発生される供給電圧のジッタを防ぐためには、好ましくは電圧レベル・コントローラ２１２の出力と電圧発生器２０８との間に結合されたフィルタ２３２を利用して、電圧制御信号ＶｃｔｌのＡＣ成分を濾波する。
電圧発生器２０８は、電圧制御信号Ｖｃｔｌを受けるべく結合された第１入力と、信号Ｖｄｄｍａｘ、すなわち電圧発生器２０８によって発生される最大供給電圧を制限する信号、を受けるための第２入力と、電圧レベルが電圧制御信号Ｖｃｔｌに依存する供給電圧Ｖｄｄを与えるための出力とを有する。バッテリ駆動型の携帯装置では、信号Ｖｄｄｍａｘはバッテリ電圧に等しい。供給電圧Ｖｄｄは、デジタル回路のすべての構成要素に供給される。
重複経路２２６は信号経路２２２と同じゲートを有するので、両方の経路を介した伝搬遅延は実質的に同じなはずである。所定の遅延２２８は、好ましくは、経路２２６と２２２との間に伝搬遅延の差がある場合に備えて設計マージンとして含まれる。また、所定の遅延２２８は、フィルタ２３２および電圧発生器２０８などの構成要素の反応時間のマージンを与えるために利用され、また濾波後の残りのジッタを補償するためにも用いられる。従って、経路２２６，２２２が同じであっても、伝搬遅延が常にクロック周期内となることを保証するため、供給電圧が必要以上にわずかに高くなるように所定の遅延２２８を設けることが好ましい。
第１回路２００は、遅延同期ループ（delay lock loop）を利用して最適レベルを達成するように供給電圧をダイナミックに調整するが、その動作について説明する。以下では、フリップフロップはクロック信号ＣＬＫの立ち上がりエッジでクロックされるものとして説明する。ただし、立下りエッジでもクロックできることを理解されたい。
第１フリップフロップ２２０のデータ入力から出力Ｑまでクロックされる信号Ｓは、理想的には、クロック信号ＣＬＫの次の立ち上がりエッジまでに第２フリップフロップ２２４に達するが、これは経路２２２の伝搬遅延に依存する。経路２２２の伝搬遅延は、クロック信号ＣＬＫと、重複経路２２６に起因する伝搬遅延と、経路２２２の遅延と実質的に同じように構成された所定の遅延２２８とを利用して、位相検出器２３０によって監視される。
位相検出器２３０は、第１入力におけるクロック信号ＣＬＫの位相と、第２入力における遅延済みクロック信号の位相とを比較し、出力にて電圧制御信号Ｖｃｔｌを与え、この電圧制御信号は前記信号間の比較に依存する。電圧制御信号Ｖｃｔｌまたは位相誤差信号（phase error signal）は、実際のクロック信号ＣＬＫと遅延済みクロック信号との間の誤差、すなわち、与えられたクロック信号ＣＬＫについて伝搬遅延を調整する必要のある量、を表す。
電圧発生器２０８は、例えば、モトローラ社から供給されるＭＣ３３５６０など、任意の周知のＤＣ／ＤＣ電圧コンバータによって構築できるが、このＭＣ３３５６０の動作については当技術分野において周知であり、本明細書では説明しない。電圧発生器２０８は、電圧制御信号または位相誤差信号を利用して、供給電圧のレベルを調整し、調整済み供給電圧を、経路２２２，２２６を含むデジタル回路のすべての構成要素に与える。供給電圧に対する調整は、経路２２２の伝搬遅延に変化を生じさせ、また重複経路２２６の伝搬遅延にも同じ変化を生じさせる。供給電圧は、実際のクロック信号ＣＬＫと遅延されたクロック信号との間の誤差が低減される方向で伝搬遅延が調整されるように、電圧発生器２０８によって調整される。
従って、位相検出器２３０の出力における電圧制御信号Ｖｃｔｌは、位相検出器２３０の入力における２つの信号の間の誤差がゼロになるまで、供給電圧のレベルを調整するために用いられる。供給電圧がこのクロック信号ＣＬＫについて第１レベルすなわち最適レベルになるときの所定の時間に伝搬遅延が達すると、誤差はゼロになる。上記の第１回路２００では、所定の期間は、クロック信号ＣＬＫの期間に等しく、この場合、位相検出器２３０の第１入力におけるクロック信号ＣＬＫの立ち上がりエッジが第２入力における遅延済み信号の立ち上がりエッジと同じ時間に現れると、電圧制御信号Ｖｃｔｌまたは位相誤差信号はゼロになる。
好ましくは、供給電圧のレベルは、第１レベルすなわち最適レベルよりも大きい基準レベルとなるように最初に構成される。これは、デジタル回路が常に適性に動作できるという点で有利である。そのため、経路２２２および重複経路２２６の伝搬遅延を所定の期間に増加し、かつ最適供給電圧に達するために、供給電圧のレベルは基準レベルから低減しなければならない。
経路２２２は、好ましくは、悪い方の場合の伝搬遅延（worse case propagation delay）を与えるために、デジタル回路２０４における最もクリティカルな経路となるように選択される。この理由のため、第１回路２００およびデジタル回路２０４は、好ましくは、同一チップ上で集積すべきである。プロセッサ・コアについては、クリティカル経路は与えられた命令に対応する。
なお、第１回路２００は、クロック信号の与えられた周波数について信号経路のゲートを介した実際の伝搬遅延に基づいて、リアルタイムで供給電圧をダイナミックに調整することが理解される。このことは、例えば、温度，製造プロセスに起因する伝播遅延の変化を考慮でき、与えられたクロック周波数について供給電圧の最適レベルを常に利用できることを意味する。
また、クロック信号の周波数がダイナミックに調整される場合、位相検出器２３０はクロック信号自体を利用して供給電圧のレベル、ひいては伝播遅延を調整するので、第１回路２００は任意のクロック周波数においても最適供給電圧を供給できる。
ここで第３図を参照して、選択された経路上の信号の伝播遅延を監視することにより、デジタル回路であって、その一部３０２のみが示されている、デジタル回路において、供給電圧をダイナミックに調整する本発明の第２実施例による第２回路３００は、制御ユニット３０５，比較器３１６および電圧発生器３０８によって構成される。各タスクは、デジタル回路の異なる部分を利用してもよく、このことはクリティカル経路はデジタル回路によって実行されるタスクに応じて変化することを意味する。好適な実施例では、経路３１０は実行されるタスクに応じて選択され、好ましくはこのタスクのクリティカル経路である。
制御ユニット３０５は、入力信号Ｓを第１フリップフロップ３１８を介してクリティカル経路３１０に与え、かつ予定出力信号Ｓｘを比較器３１６の第１入力に与えるように結合される。第１フリップフロップ３１８は、クロック信号ＣＬＫによってクロックされ、このクロック信号ＣＬＫは、クリティカル経路３１０の一部であるゲートと、クリティカル経路３１０の出力に結合された第２フリップフロップ３２０もクロックする。第２ゲート３２０の出力Ｑは、比較器３１６の第２入力に結合される。比較器３１６の出力は、制御ユニット３０５内の推定器３０７に結合される。制御ユニット３０５は、電圧制御信号Ｖｃｔｌを電圧発生器３０８に与え、電圧発生器３０８は、電圧制御信号Ｖｔｃｌに応じて、クリティカル経路３１０を含むデジタル回路のすべての構成要素に供給電圧Ｖｄｄを出力にて与える。
第２回路３００が供給電圧Ｖｄｄのレベルを選択するための好適な方法について、第１図，第３図および好適な方法のフローチャートを示す第４図を参照して説明する。
好適な実施例では、デジタル回路の所定の信号経路について、供給電圧の所定のレベルおよび対応する伝播遅延の第１シーケンスは、推定器３０７に格納される。好ましくは、所定の経路は悪い方の場合の経路である。この第１シーケンスから、悪い方の場合の状態（温度など）におけるデジタル回路の悪い方の場合の経路について、第１図に示すような伝播遅延と供給電圧の曲線などの所定の曲線を生成できる。供給電圧Ｖｄｄの所定のレベルまたはディフォルト・レベルは、あるクロック周波数について所定の曲線から選択され（ブロック３３０）、クリティカル経路３１０のゲートに印加される。
次に、所定のレベルの供給電圧について伝播遅延が測定される（ブロック３３２）。制御ユニット３０５は、入力信号Ｓをクリティカル経路３１０に与え、比較器３１６はクリティカル経路の出力における信号Ｓｏｕｔを予定信号Ｓｘと比較する。比較器３１６の出力は、制御ユニット３０５内の推定器３０７に、クリティカル経路の出力における信号Ｓｏｕｔと予定信号Ｓｘとの間の比較の結果、すなわち伝播遅延、の指示を与える。上記のように、クロック信号ＣＬＫのあるクロック周波数では、クリティカル経路３１０を介した信号の伝播遅延は、供給電圧Ｖｄｄのレベルに依存する。比較器３１６の第１および第２入力における信号が一致すると、比較器３１６の出力は有効である。信号が一致しなければ、誤差信号が生成される。
次に、供給電圧のレベルは所定の量だけ所定のレベルから調整され、調整済み供給電圧はクリティカル経路３１０に印加される（ブロック３３４）。入力信号を与える段階，信号Ｓｏｕｔと予定信号Ｓｘとを比較する段階および供給電圧を調整する段階は、誤差信号が生成される直前まで繰り返される。すなわち、有効信号が生成される限り、繰り返される。この時点で、伝播遅延は、所定の期間すなわち最適期間に達したことが判定される。供給電圧は、伝播遅延がこの所定の期間に達するとき第１レベルを有する。調整済み供給電圧の第１レベルは、その対応する判定済み伝播遅延とともに格納される。このプロセスは、対応する判定済み伝播遅延とともに供給電圧のレベルのシーケンスを生成するように、第１シーケンスの各以降の所定のレベルについて繰り返される。第２シーケンスは推定器３０７に格納される。
第２シーケンスから、伝播遅延と供給電圧の曲線の推定を得ることができる。これは、いくつかの反復（iteration）および／または外挿（extrapolation）を必要とするかもしれない。所定の曲線とは異なり、推定伝播遅延と供給電圧の曲線は、製造プロセス，温度，経時劣化、それにタスクとともに変化する場合にはクリティカル経路、に起因する変化を考慮に入れる。
推定曲線が判定されると（ブロック３３６）、この曲線を利用してあるクロック周波数について最適供給電圧Ｖｄｄを判定する（ブロック３３８）。次に、最適供給電圧Ｖｄｄは、デジタル回路におけるクリティカル経路３１０および他の構成要素に印加される（ブロック３４０）。信号の伝播遅延が常にクロック周期内となることを保証するため、最適供給電圧Ｖｄｄにマージンが追加される。
推定曲線は、例えば、温度の変化に起因する変化を考慮に入れるために周期的に更新またはリフレッシュされる（ブロック３４２）。これは、例えば、温度に起因する伝播遅延の変化を考慮でき、かつあるクロック周波数について供給電圧の最適レベルを常に得ることができることを意味する。クロック周波数を変更すると、推定曲線から適切な供給電圧Ｖｄｄが判定され、電圧制御信号Ｖｃｔｌおよび電圧発生器３０８を介してデジタル回路に印加される。
従って、最適供給電圧Ｖｄｄは、クリティカル経路３１０を利用して推定曲線が生成されてからでないと、クリティカル経路３１０およびデジタル回路の残りの部分に印加されない。そのため、第２回路３００は２つのモード、すなわち、推定曲線が判定される推定モードと、供給電圧の選択された値がデジタル回路に印加される動作モード、の２つのモードにて動作する。推定モード中に、供給電圧Ｖｄｄがクリティカル経路３１０の適正動作のために十分大きくない場合がある。しかし、推定器３０７，比較器３１６および供給電圧を修正することに寄与する他のブロックは常に適正に動作する。
タスクが変わって、新たな経路がクリティカル経路になると、推定プロセスは繰り返され、制御ユニット３０５は入力信号Ｓを新たなクリティカル経路に与え、推定器３１６は予定信号Ｓｘを新たなクリティカル経路の出力における信号Ｓｏｕｔと比較する。
第１回路２００と同様に、第２回路３００は、クロック信号のある周波数について、選択された経路を介した実際の伝播遅延に応じて、リアルタイムで供給電圧をダイナミックに調整する。
第２回路３００のすべてまたは一部は、ソフトウェアで構築してもよい。
また、クロック信号の周波数がダイナミックに調整される際、第２回回路３００はクロック信号自体を利用して供給電圧のレベル、ひいては伝播遅延を調整するので、第２回路３００は任意のクロック周波数でも最適な供給電圧を供給できる。
第１回路２００は、デジタル回路２０４によって実行されるタスクに関係なく、デジタル回路内のクリティカル経路と好ましくは一致する重複経路２２６を必要とする。このことは、経路２２６におけるゲートを利用しないタスクについて、供給電圧レベルをさらに低減できることがありうることを意味する。すなわち、第１回路２００は、静的な場合を除いて、デジタル回路が実行しなければならないすべてのタスクについて、また余分な重複経路２６６を追加するという犠牲を払って、最適な供給電圧レベルを達成できないことがある。本発明による第２回濾３００は、現タスクの実際のクリティカル経路を見ることによりこの問題に対処する。第２回路３００の別の利点は、いくつかの集積回路について電力消費を最適化するために利用できることである。さらに、第２回路３００は経路２２２のゲートを重複する必要がないので、第２回路３００は第１回路よりも高価でない。
任意のデジタル回路について、クロック周波数Ｆｒｅｆは、あるプロセス技術について毎秒あたりの最大命令数（Ｍｉｐｓ）を処理するために、できるだけ高くなるように選択される。ただし、異なるタスクは異なるＭｉｐｓひいてはクロック周波数を必要とする。例えば、セルラ電話では、スタンドバイ・モードに比べて、スピーチ・トラヒック・モードではより高いＭｉｐｓを必要とする。デジタル回路の電力消費は、供給電圧の二乗だけでなくクロック信号ＣＬＫの周波数に依存するため、クロック周波数を常に最大限に維持する回路は不必要に電力を消費し、また供給電圧だけでなくクロック周波数を変えることによって改善された電力消費が得られることが明らかである。発明の背景で説明した既知の方法は、実行されるタスクに応じてクロック周波数を調整する。
第１回路２００および第２回路３００はともに、クロック周波数が固定されているシステムで利用でき、またクロック周波数が変化するシステムでも利用できる。
本発明の第２の態様に従って、デジタル回路によって実行されるタスクに応じてクロック信号の周波数をダイナミックに調整し、次にクロック信号の調整済み周波数と、デジタル回路の判定済みスピードまたは伝播遅延とに応じて供給電圧のレベルを調整するシステムが提供される。
第５図は、本発明の第２の態様の第１実施例による第１システム２を示す。システム２は、上記の第１回路２００を利用して、デジタル回路２０４におけるスピードまたは伝播遅延を判定する。経路２２２は、デジタル回路２０４の一部である。
システム２は、クロック信号ＣＬＫをデジタル回路２０４に供給するクロック周波数発生器６と、供給電圧Ｖｄｄをデジタル回路２０４に供給する電圧発生器２０８とによって構成される。クロック周波数発生器６によって供給されるクロック信号ＣＬＫの周波数Ｆｒｅｆは、周波数コントローラ１０によって制御される。デジタル回路２０４に供給される供給電圧Ｖｄｄのレベルは、電圧レベル・コントローラ２１２によって制御される。
周波数コントローラ１０は、デジタル回路２０４によって実行されるタスクに関する情報を受けるための入力と、クロック制御信号Ｃｃｔｌをクロック周波数発生器６に与えるための出力とを有する。クロック信号ＣＬＫの周波数Ｆｒｅｆは、クロック制御信号Ｃｃｔｌに依存する。また、クロック周波数発生器６は、信号Ｆｒｅｆｍａｘ、すなわちクロック周波数発生器６によって発生される最大周波数を制限する信号、を受ける。信号Ｆｒｅｆｍａｘは、クロック信号ＣＬＫの周波数が、最大供給電圧Ｖｄｄｍａｘよりも大きい供給電圧を必要とする値を超えないことを保証する。
電圧レベル・コントローラ２１２は、クロック周波数発生器６によって発生されたクロック信号を受けるための第１入力と、電圧制御信号Ｖｃｔｌを電圧発生器２０８に与えるための出力とを有する。従って、電圧制御信号Ｖｃｔｌひいては供給電圧Ｖｄｄのレベルは、クロック信号ＣＬＫに応じて生成される。また、電圧発生器２０８は、信号Ｖｄｄｍａｘ、すなわち、例えば、誤動作に起因して電圧発生器８によって発生される最大供給電圧を制限する信号、を受ける。
第２システム２は、単一チップ上で集積してもよく、あるいはディスクリート構成要素によって構成してもよい。
第１システム２は、次のように動作する。
クロック信号の周波数は、デジタル回路２０４によって実行されるタスクに応じて調整される。周波数コントローラ１０は、デジタル回路２０４からの情報を利用して、どのタスクが実行されるのか、ひいてはこのタスクがどのクロック周波数を必要とするのかを判定する。コントローラは、特定のタスクについて適正なクロック周波数を判定するためにルックアップ・テーブルを利用できる。従って、クロック制御信号Ｃｃｔｌは、デジタル回路２０４によって実行されるタスクについてのクロック周波数を表し、クロック周波数発生器６は、このクロック制御信号Ｃｃｔｌに応じてクロック周波数Ｆｒｅｆを有するクロック信号を発生する。クロック周波数発生器６は、周知のクロック分周器によって構築できる。
周波数コントローラ１０の動作は、用途に対する依存度が高い。例えば、デジタル・セルラ・ハンドセットでは、周波数コントローラ１０は、デジタル回路２０４を構成するプロセッサ・コアの状態にのみに依存して、クロック制御信号Ｃｃｔｌを生成してもよい。一般に、プロセッサ・コアは６つの状態、ＩＤＬＥ，ＦＲ，ＨＲ，ＥＦＲ，ＤＡＴＡ，ＬＰを有する。ルックアップ・テーブルは、６つの状態に応じてクロック制御信号Ｃｃｔｌを与える。
クロック制御信号Ｃｃｔｌは、クロック周波数発生器が発生できるクロック周波数に対応しなければならない。
クロック信号の周波数が特定のクロック周波数に調整されると、調整済み周波数におけるクロック信号ＣＬＫは電圧レベル・コントローラ２１２およびデジタル回路２０４に結合される。電圧レベル・コントローラ２１２は、この調整済みクロック信号ＣＬＫを利用して、調整済みクロック信号ＣＬＫにクロックされるときのデジタル回路２０４のスピードまたは伝播遅延を判定し、また調整済みクロックＣＬＫおよび判定されたスピードに応じて供給電圧のレベルを調整する。電圧発生器２０８によって発生される調整済み供給電圧Ｖｄｄは、デジタル回路２０４のすべての構成要素に結合される。
デジタル回路２０４のスピードは、チップ単位のばらつきを生じさせる温度，経時劣化，製造プロセスなどのパラメータや、プロセス技術自体によって影響を受ける。デジタル回路２０４のスピードは、デジタル回路２０４における信号経路上の信号の伝播遅延を調べることによって判定できる。伝播遅延は、第１図ないし第３図および第１回路２００を参照して説明した方法以外の方法によって監視できる。
第６図は、本発明の第２の態様の第２実施例による第２システム４００を示す。第２システム４００は、上記の第２回路３００を利用して、デジタル回路４０４におけるスピードまたは伝播遅延を判定する。制御ユニット３０４および比較器３１６（第６図では図示せず）は、好ましくはコア処理ユニット４０２の一部である。代わりに、比較器３１６および推定器３０７がデジタル回路４０４の一部でもよい。
推定モード中に、制御ユニット３０５は入力信号Ｓをデジタル回路４０４の経路に与え、電圧制御信号Ｖｃｔｌを電圧発生器３０８に与え、この電圧発生器３０８は上記のように供給電圧Ｖｄｄをデジタル回路４０４に与える。電圧発生器３０８は、例えば、モトローラ社から供給されるＭＣ３３５６０などの任意の既知のＤＣ／ＤＣ電圧コンバータによって構築できる。
コア処理ユニット４０２は、デジタル回路４０４によって実行されるタスクに関する情報を受けるための第１入力と、推定モード中にクリティカル経路の出力において信号Ｓｏｕｔを受けるための第２入力と、クロック制御信号Ｃｃｔｌをクロック周波数発生器４０６に与えるための出力とを有する。クロック周波数発生器４０６は、デジタル回路４０４に結合される出力にてクロック信号ＣＬＫを発生する。クロック周波数発生器４０６は、周知のクロック分周器によって構築してもよい。
第２システム４００は次のように動作する。
クロック信号の周波数は、デジタル回路４００によって実行されるタスクに応じて調整される。コア処理ユニット４０２は、デジタル回路４０４からの情報を利用して、どのタスクが実行されるのか、ひいてはこのタスクがどのクロック周波数を必要とするのかを判定する。この情報から、このタスクについてクリティカルな経路が判定できる。コア処理ユニット４０２は、特定のタスクについて適正なクロック周波数を判定するためにルックアップ・テーブルを利用できる。従って、クロック制御信号Ｃｃｔｌは、デジタル回路４０４によって実行されるタスクについてクロック周波数ｙＦｒｅｆを表し、クロック周波数発生器４０６は、このクロック周波数Ｆｒｅｆを有するクロック信号を、タスクについて判定されたクリティカル経路を含め、デジタル回路４０４に与える。
クロック信号の周波数が特定のクロック周波数に調整された後、またクリティカル経路が変化していない場合、この特定のクロック周波数についての最適供給電圧Ｖｄｄは判定済み推定曲線から判定できる。クリティカル経路が変化した場合、あるいは推定曲線が更新を必要とする場合、制御ユニット３０５は入力信号Ｓを判定済みクリティカル経路に与え、推定器３０７は、予定信号Ｓｘとクリティカル経路の出力からの信号Ｓｏｕｔとの間の比較に応じて推定曲線を判定する。そして、最適供給電圧のレベル、ひいては適切な電圧制御信号Ｖｃｌｔは、特定のクロック周波数Ｆｒｅｆを利用して推定曲線から判定される。
電圧発生器３０８は、電圧レベルが電圧制御信号Ｖｃｔｌに依存する供給電圧Ｖｄｄを発生する。電圧発生器３０８によって発生された調整済み供給電圧Ｖｄｄは、動作モード中にデジタル回路４０４のすべての構成要素に結合される。
上記のデジタル回路は、例えば、デジタル・セルラ電話システムのプロセッサ・コアや、クロックおよび供給電圧入力を結合する任意のデジタル回路であってもよい。デジタル回路は、一つの集積回路または複数の集積回路上で集積してもよい。
従って、第１システム２および第２システム４００は、与えられたタスクについて最適な周波数を有するクロック信号と、デジタル回路のクロック周波数およびスピードに応じた最適なレベルを有する供給電圧とを選択できる。そのため、このようなシステムは改善された電力消費を有する。第２システム４００は、第２回路３００が上記の第１回路２００に対して有する利点のように、第１システム２に対して同様な利点を有する。
上記の実施例では、その目的は、あるクロック周波数について判定済み伝播遅延に応じてのみ供給電圧を変えることにより、あるいはタスクに応じてクロック周波数を変えてから、クロック周波数とこのクロック周波数出の伝播遅延とに応じて供給電圧を変えることにより、電力消費を最適化することである。しかし、まず最初に供給電圧を特定のレベルに調整してから、次にこの供給電圧のレベルについて最適なクロック周波数を与えるようにクロック周波数を判定済み伝播遅延に応じて調整することが望ましいことがある。本発明のこの第３の態様は、特定の条件に応じて処理能力を最適化するために利用できる。すなわち、伝播遅延と供給電圧の曲線の非線形的な特性のため（第１図参照）、電力消費と処理能力との間で最適なトレードオフが得られるように、供給電圧を特定のレベルに固定することが望ましいことがある。
本発明の第３の態様は、異なる供給電圧について最適なクロック周波数を推定する手段を提供する。まず、所定のレベルを有する供給電圧はデジタル回路に供給され、次にクロック周波数は、信号経路またはクリティカル経路の伝播遅延が所定の期間に達したと判定されるようになるまで調整される。この時点で、クロック周波数は供給電圧にとって最適な期間である。一つの可能なトレードオフでは、最大供給電圧を供給してもよい。この場合、伝播遅延が所定の期間に達すると、クロック周波数はこの最大供給電圧および信号経路またはクリティカル経路について最適な期間となり、デジタル回路は与えられた条件について最大のＭｉｐｓ能力で動作する。もちろん、このような場合、電力消費は最適化されないが、コンピュータ分野では、最適化された処理能力のほうが最適化された電力消費よりも勝ることがある。
第１回路２００および第２回路３００は、供給電圧がまず最初に選択されたレベルに設定されてから、伝播遅延が所定のレベルに達するまでクロック周波数が調整されるように修正できる。第１回路２００は、第２回路３００のように、供給電圧Ｖｄｄのレベルを判定し、伝播遅延と供給電圧の曲線の値を格納する追加ブロック（図示せず）を必要とする。次に、回路２００，３００の両方について、曲線の線形部分を推定し、この推定から適切なクロックが判定され、ついでデジタル回路に印加される。
従って、本発明の第３の態様は、温度，経時劣化，製造プロセスなどの与えられたフィールド条件について理想的なクロック周波数を判定できる。これは、コンピュータ分野において明確な利点を提供する。
【図１】
0004024306.tif 000002
【図２】
0004024306.tif 000003
【図３】
0004024306.tif 000004
【図４】
0004024306.tif 000005
【図５】
0004024306.tif 000006
【図６】
0004024306.tif 000007