JP2005222536A - ダイナミック電圧制御装置 - Google Patents

ダイナミック電圧制御装置 Download PDF

Info

Publication number
JP2005222536A
JP2005222536A JP2005013501A JP2005013501A JP2005222536A JP 2005222536 A JP2005222536 A JP 2005222536A JP 2005013501 A JP2005013501 A JP 2005013501A JP 2005013501 A JP2005013501 A JP 2005013501A JP 2005222536 A JP2005222536 A JP 2005222536A
Authority
JP
Japan
Prior art keywords
voltage
profile
distribution
frequency
metric
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.)
Pending
Application number
JP2005013501A
Other languages
English (en)
Inventor
Craig Dolwin
ドルウィン・クレイグ
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Publication of JP2005222536A publication Critical patent/JP2005222536A/ja
Pending legal-status Critical Current

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/329Power saving characterised by the action undertaken by task scheduling
    • 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)
  • Power Sources (AREA)
  • Control Of Voltage And Current In General (AREA)
  • Dc-Dc Converters (AREA)

Abstract

【課題】本発明は、電圧のダイナミックスケーリング(DVS)を利用する装置を処理することに関するが、特にそのような装置のための制御装置に限られない。本発明は特に、ソフトウェア定義無線機(SDR)に適用でき、そのように限定されないが、他の再構成可能な電子システムに適用できる。
【解決手段】本発明は、少なくともいくつかが制御可能な供給電圧及び/又は周波数を持つ複数の処理リソースを有する処理装置のための制御装置を提供し、この制御装置は、少なくともいくつかが、それまでに動作が実行されなければならない所定のデッドラインを有する動作をリソース上でスケジューリングする手段と、このデッドラインを有する動作のための電圧及び/又は周波数プロファイルを決定する手段と、スケジュール及びプロファイルに従って、リソースに動作を実行させる手段とを備える。
【選択図】図2

Description

本発明は、電圧のダイナミックスケーリング(DVS)を利用する処理装置に関し、特にそのような装置のための制御装置に排他的に限定されない。更に、本発明は処理装置のための電圧及び/又は周波数プロファイルを決定する方法及び装置に関する。本発明は特に、ソフトウェア無線機(SDR)に適用可能であるが、そのように限定されず、他の再構成可能な電子システムに適用されてもよい。
基本的なダイナミックスケーリング電圧(DVS)処理モジュールは、従来技術、例えばインテル社(登録商標)のスピードステップ(登録商標)に現在利用可能である。この技術はバッテリからの電力消費を低減するため、使用されていないときにプロセッサが“スリープ”モードに入ることができる多くのラップトップコンピュータに適用されている。近年、多数の異なる電圧及び周波数、即ちクロック速度レートで動作可能な処理モジュールが出現してきた。プロセッサの電力消費は、電圧と、クロック速度、即ち周波数、との両方の関数であり、周知のように、電力消費の二次減少は、理論上はこれらのパラメータの両方を減少させることで達成できる。トランスメータ社(登録商標)は、ロングラン(登録商標)電力管理技術を提供している。この技術は、プロセッサが“オン”になっているが処理に使用されていないというアイドル状態にしておく時間をプロセッサが最小にすることを確実にするために、プロセッサの電圧及びクロック速度を調整する。
しかしながら、このような方法に伴う課題は、それらが厳しいデッドラインを持つタスクにあまり適合しないことである。例えばワイヤレス端末によって受信されたデータブロックが、設定された多数のミリ秒以内にビタビデコーダアルゴリズムによってデコードされることを確実にすることである。そのようなシステムでの特定の動作のための処理実行時間のデッドラインは、例えば、端末がワイヤレスセルラ又はローカルエリアネットワークにおいて基地局と相互動作できるように、標準プロトコルによって規定される。
ワイヤレス端末のようなデバイス又はシステムにおける多くのタスク又はオペレーションは、1つ以上の標準規格に従って動作し、いくつかの方法、例えばASICのような専門ハードウェア加速器を使用することによって、或いはソフトウェアに従って構成されているデジタル信号プロセッサを使用することによって実行できる。処理又はタスクのいくつかは、時間的にオーバーラップするか、或いは他のタスクから独立していることが多いので、平行して実行でき、処理リソースは処理電力の一部分をあるタスクに割り当て、別の一部分を別のタスクに割り当てることができる。これは複数のプロセッサを使用するか、或いは例えばマイクロプロセッサのようにリソースをタイムスライスすることによって達成できる。
多数のタスクのための処理時間をスケジューリングする、様々な方法が技術的に知られている。電力消費を低減するために、特定のタスクを処理する場合に処理リソースの電圧−周波数を低減させる概念を盛り込むようなスケジューリング技法を修正することは、フラヴィウス・グライアンの“確率的なデータ及びDVSプロセッサを用いた低エネルギーのための厳格リアルタイムスケジューリング”ISLPED‘01、2001年8月2〜7日、において概念用語を用いて説明されている。しかしながら、そのようなシステムの実際の具体化は単純ではない。
一局面における一般的な意味では、本発明は特定のタスク用処理リソースのための電圧プロファイルを決定する電圧プロファイル計算器を提供する。この電圧プロファイルは、タスクを実行する際に(平均的に)リソースによって使用される電力を最小にするために、タスクが実行されるべき次の時間にリソースに適用できる。計算器は、タスクを完了するためのサイクルカウントの確率分布を特徴づける多数のメトリックを決定する手段を備える。この分布は、タスクを完了するために必要とされた前回のサイクルカウントを記録し、これにより履歴レコードを与えることによって決定できる。メトリックは平均及び標準偏差であってよいが、実際のシステムにありがちなように分布が標準でない場合には、他のメトリックが用いられてよい。好ましくは、サイクルカウントの所定の割合(P)が位置する上限及び下限(Cmax及びCmin)が規定される。これらのメトリックはその後、簡略化分布を特徴づける。
計算器は、好ましくは、これらのメトリックから電圧プロファイルを決定する手段も備える。簡略化メトリックを、固定電圧を有する簡略化電圧プロファイルとともに用いることによって、これらの電圧と、これらの間で切り換える時間とを決定するために、簡略式を用いることができる。このような構成は、実際のシステムで構成するのに簡便である。
特に一局面においては、本発明は、所定のタスク用処理リソースのための電圧及び/又は周波数プロファイルを決定するための、電圧−周波数プロファイル計算器を提供する。この計算器は、前記リソースを用いて前記タスクを完了するためのサイクルカウントの確率分布を特徴づける多数のメトリックを決定する手段と、前記メトリックに従って次の前記タスクに対する電圧又は周波数プロファイルを決定する手段とを備える。好ましくは、周波数及び/又は電圧プロファイルは、多数の固定電圧の位相を有し、段階電圧変化(step voltage changes)を有する。代替的に、プロファイルは固定電圧勾配のような1つ以上の非線形関数によって定義されてもよい。
タスク期間にわたる簡単な周波数及び電圧の変化は、(理想的とはいえ)継続的なプロファイルよりも実現が容易である。1つの実施形態では、メトリックは標準的な分布に対する平均及び標準偏差であるが、他の既知の分布のタイプ又は形状について、他のメトリックが使用されてもよい。例えば、メトリックは、前回のサイクルカウントを記録し、及びこの履歴データに関して必要とされた計算を実行することによって決定される。電圧及び周波数プロファイルは、分布のタイプに関するルックアップテーブルと、電圧と周波数値との間の変換式とを使用して決定できる。
特に他の局面においては、本発明は所定のタスク用処理リソースのための電圧及び/又は周波数プロファイルを決定するための、電圧−周波数プロファイル計算器を提供する。この計算器は、前記リソースを用いて前記タスクを完了するためのサイクルカウントの確率分布を特徴づける多数のメトリックを決定する手段を備え、プロファイルは、それぞれがその期間内に異なる固定電圧を有する2つ以上の位相又はセクションを有する。
1つの実施形態では、それぞれが異なる電圧を持つような3つの位相が存在する。電圧は、低いところから開始し、期間がタスクを完了するためのデッドラインに近づくにつれて徐々に増加する傾向がある。段階的な電圧プロファイルを用いることは、継続的に変化するプロファイルよりもかなり実現が容易である。また、動作の周波数を増加させるには一般的に電圧を増加することを必要とし、これが生じる間は遅延が存在し、電圧の頻繁な変化を非効率的にするので、段階的な電圧プロファイルを用いることは、より効果的でもある。限定数の固定電圧位相を有することにより、クロック周期毎に計算されることが必要な継続的に変化する電圧の場合と比較して、これらの電圧の計算が容易にもなる。更に言えば、これにより、構成の複雑さが緩和する。
固定電圧という用語は、対応する位相にわたってほぼ一定である電圧を参照するために用いられる。例えば、雑音やドリフトによって、電圧の軽微な変化が生じうる。
メトリック決定手段は、前記分布のタイプ、例えばガウス分布及び標準偏差ガウス分布のような対応するメトリックタイプを決定する手段を備えてもよい。そして、決定された分布タイプを特徴づけるメトリックが計算でき、例えば平均及び標準偏差は前回のサイクルカウント履歴から容易に計算される。
代替的に、メトリック決定手段は、前記サイクルカウント分布に対応する簡略化分布を特徴づけ、前記簡略化分布から前記メトリックを決定する手段を備えていてもよい。簡略化分布は、多数のメトリックによって容易に規定できる実際の分布に近似する。例えば、実際の分布は、多数の線形関数、言い換えればタスクの最大期間に及ぶ固定確率密度(即ち、ある範囲のサイクルカウントに対する確率)のセクション又は位相によって特徴づけられる。更なる代替として、分布は固定(または可変)勾配確率分布によって特徴づけられてもよい。
一連の線形関数の場合、メトリックは各線形関数又は位相の確率の限界であってもよい。3つの位相を持つ好ましい実施形態では、メトリックは分布におけるサイクルカウントの所定の割合を規定する上限及び下限を備える。この割合は、予想される分布に左右されるか、経験的に決定されてもよい。実際上は、90−95%の割合が十分正確だと判明しているが、他の範囲が用いられてもよい。
分布メトリック決定手段は、前回の状況において前記リソースによって前記タスクを完了するために必要とされたサイクルカウントを記録する手段を備える。代替的に、所定のメトリックを、例えば分布のタイプ及び対応するメトリックを供給するリソースの製造業者から、又は簡略化分布を生成するための多数の「予め記録された」サイクルカウントから受け取る手段を備えてもよい。この手段は、例えば製造業者によって提供されたものによって開始し、実際のサイクルカウントデータが記録されて行くにつれて修正するような、これらの組み合わせを備えていてもよい。
好ましくは、電圧プロファイル決定手段は、各前記位相に対するサイクル周期を計算する手段を備える。この計算は、これらの計算を容易にする決定されたメトリックを用いて達成され、より少ない計算しか必要としない。
好ましくは、電圧プロファイル決定手段は、スケーリングされていないサイクル周期がリソースによってサポートされていない場合に、サイクル周期をスケーリングする手段も備える。これは、リソースが動作の十分高い周波数をサポートして決定された最低サイクル周期をサポートできない場合に利用できる。この場合、このサイクル周期は、好ましくはリソースによってサポートされる最大値までその周期を拡大するためにスケーリングされる。先のより高いサイクル周期も、補償のためにスケーリングされなければならない。
リソースに周波数/電圧を変化させるよう指示するタイミングが計算器の外部にある場合、電圧プロファイル決定手段は、外部時間に基づいてあるサイクル周期の位相から別の位相へ変化する時間を決定する手段も備える。
計算器が電圧プロファイルも提供している場合、電圧プロファイル決定手段は、各前記位相に対するサイクル周期を各前記位相に対する電圧レベルに変換する手段を備える。
少なくともいくつかが制御可能な供給電圧及び/又は周波数を有する複数の処理リソースを有する処理装置のための制御装置も提供される。この制御装置は、少なくとも幾つかはそれまでに動作が行わなければならない所定のデッドラインを有する動作を前記リソース上でスケジューリングする手段と、上述の決定に従って電圧又は周波数プロファイルを計算する手段と、前記スケジュール及び前記プロファイルに従って、リソースに前記動作を実行させる手段とを備える。
特に他の局面においては、本発明は、所定のタスク用処理リソースのための電圧及び/又は周波数プロファイルを決定する電圧−周波数プロファイル計算器を備える。この計算器は、前記リソースを用いて前記タスクを完了するためにサイクルカウントの確率分布を特徴づける多数のメトリックを決定する手段と、前記メトリックに従って次の前記タスクに対する電圧プロファイルを決定する手段とを備え、メトリックは簡略化分布を特徴づける。
実際のものではなく、簡略化確率密度関数(PDF)を用いることは、電圧プロファイルを決定するために必要な複雑さや計算の数を減らす。好ましくは、この簡略化分布は、固定確率密度の2以上の位相を持つ段階的PDFである。好ましくは、メトリックは分布におけるサイクルカウントの所定の割合を規定する上限及び下限を備える。90ないし95%の割合が、リソースによって電力を平均的に最小化する点で、効率の良い電圧プロファイルを決定するのに効果的だと判明している。
分布メトリック決定手段は、時間の経過によってリソースによりタスクを完了するために必要なサイクルカウントを記録し、メトリックが導き出される履歴レコードを構築する。代替的又は追加的に、分布メトリック決定手段は、例えば製造時に決定された所定のメトリックを単に受け取ってもよい。これらは、履歴レコードが構築されながら修正されてもよい。履歴レコードを持つ更なる利点は、タスクの性能に関する条件が変わるかもしれないことであり、故に、例えばワイヤレス受信機のチャネル状態或いはリソースの共通ユーザが、サイクルカウントの分布に影響を与えかねない共有パターンを変えてしまう。例えば平均値は、リソースに対する回線争奪が激しくなるにつれて増加する。
この場合、電圧プロファイルは、例えば1つ以上の再構成可能なリソースの制御装置によって使用できる。その後、制御装置は、タスクを実行するために、プロファイルを使用してプロファイルに従った電圧でリソースを動作する。
他の局面における一般的な意味で、本発明は、少なくともいくつかが制御可能な電圧及び/又は周波数動作可能パラメータを有する複数の処理リソースを持つ処理装置のための制御装置を提供する。制御装置は、装置が実行すべき動作毎に多数の実行パラメータを備える動作データ構造を有するか、これにアクセスする。例えば、ワイヤレス端末又は基地局においては、動作データ構造は予め所定のプロトコルについて知られており、制御装置は新しいプロトコルを扱うために再構成可能である。動作毎の実行パラメータは電圧−周波数プロファイル、開始時間、最悪サイクルカウント、及び動作の前回の実行に関する実際の実行サイクルカウントの統計を備えていてもよい。これらの統計は、平均実行サイクルカウントのようなパラメータの根拠となる履歴統計を提供するために、動作が何回も実行されるにつれて時間の経過によって更新されるのが好ましい。電圧−周波数プロファイル計算手段は、これらのパラメータに基づいて動作毎に記憶された電圧−周波数プロファイルを提供するか、定期的に更新する。電圧−周波数プロファイルは、例えば、最初低電圧周波数で動作を実行する処理リソースを有し、その後、動作実行時間が所定のリミット(例えば、平均実行時間)を超えた場合にのみ、厳格な実行時間のデッドライン内で動作を完了するため処理リソースが使用する電圧周波数を増加させることによって、動作毎に電力消費を最小化するよう構成される。
各動作は、毎回その最悪実行サイクルカウントに至らないが、平均実行サイクル又は時間に至ることが多いので、動作を実行する処理リソースの電圧周波数は、最初予想される通常よりも低く維持される。この予想のレベルにおいてでさえも、動作はデッドラインよりも前に完了することが多い。それゆえ、恐らくデッドラインに近い所定の時間を過ぎても動作が実行されている場合には、電圧周波数は、デッドラインに間に合うように動作を早く終了させるために、非常に大きくなってよい。最悪サイクルカウントでは、消費される電力は、(より短い時間とはいえ)一定の高い電圧周波数レベルで実行されている動作を有している場合と同じであろう。初期の低電圧周波数レベルの間、又は実質的にこのレベルの間に動作が実行される場合には、この動作が一定の高い電圧周波数レベルを用いて実行されている場合よりも低い電力しか消費されない。従って、全体として低電力しか移動ワイヤレス通信又は計算端末のような可搬型デバイスのバッテリ寿命を向上させる本装置においては消費されない。
特にこの局面においては、本発明は少なくともいくつかが制御可能な供給電圧及び/又は周波数を有する複数の処理リソースを有する処理装置のための制御装置を提供する。この制御装置は、少なくともいくつかはそれまでに動作が行わなければならない所定のデッドラインを有する動作を前記リソース上でスケジューリングする手段と、前記デッドラインを有する前記動作用電圧及び/又は周波数プロファイルを決定する手段と、前記スケジュール及び前記プロファイルに従って、リソースに前記動作を実行させる手段とを備える。
好ましくは、前記プロファイルは動作の実行中に装置によって消費される平均電力を最小にするよう構成される。
好ましくは、前記プロファイルは電圧−周波数プロファイルである。
好ましくは、電圧−周波数プロファイルは2つより多い電圧又は周波数動作点を有する。
好ましくは、電圧−周波数プロファイルは、動作の実行時間にわたって増加する電圧又は周波数動作点を含む。
好ましくは、電圧−周波数プロファイルは、動作の平均サイクルカウント内で動作が完了しなかった場合に、電圧又は周波数プロファイルを増加させる。
好ましくは、前記決定する手段は、それぞれが所定の動作に対応する多数の記録を有する動作制御データ構造を備え、各記録は対応する動作の最悪サイクルカウントを有する。
好ましくは、各記録は、動作の平均サイクルカウント及び平均サイクルカウントの標準偏差を備える。
好ましくは、各記録は電圧及び/又は周波数プロファイルを備える。
好ましくは、前記決定する手段は、動作の最悪サイクルカウント、動作の平均サイクルカウント、及び平均カウントの標準偏差に基づいて、前記動作に対する前記電圧−周波数プロファイルを計算するよう構成されている電圧−周波数プロファイル計算器を備える。
好ましくは、前記決定する手段は、前記計算器によって決定される電圧−周波数プロファイルを量子化して、リソースの利用可能な電圧及び/又は周波数動作点に対応させるよう構成された量子化手段を更に備える。
好ましくは、スケジューリング手段は、リソースに対する多数の制御メッセージを有する処理タイムテーブルを備える。このメッセージは動作に対応し、電圧及び/又は周波数制御指令を含む。
少なくともいくつかが制御可能な供給電圧及び/又は周波数を有する複数の処理リソースを有する処理装置も提供される。この装置は、上述のような制御装置を備える。好ましくは、この装置はワイヤレス端末又は基地局を備える。
特に他の局面においては、複数の処理リソースを持つ処理装置を制御する方法が提供される。このリソースの少なくともいくつかは、制御可能な供給電圧及び/又は周波数を有しており、この方法は、少なくともいくつかはそれまでに動作が行わなければならない所定のデッドラインを有する動作を前記リソース上でスケジューリングすることと、前記デッドラインを有する前記動作用電圧及び/又は周波数プロファイルを決定することと、前記スケジュール及び前記プロファイルに従って、リソースに前記動作を実行させることを含む。
好ましくは、プロファイルは、動作を実行する際に装置によって消費される平均電力を最小にするよう構成される。
好ましくは、プロファイルは電圧−周波数プロファイルである。
好ましくは、電圧−周波数プロファイルは、2つより多い電圧又は周波数動作点を有する。
好ましくは、電圧−周波数プロファイルは、動作の実行時間にわたって増加する電圧又は周波数動作点を増加させる。
好ましくは、電圧−周波数プロファイルは、動作が動作の平均サイクルカウント内で完了しなかった場合に、電圧又は周波数動作点を増加させる。
好ましくは、前記決定することは、それぞれが所定の動作に対応する多数の記録を有する動作制御データ構造を生成することを含み、各記録は対応する動作の最悪サイクルカウントを有する。
好ましくは、各記録は、動作の平均サイクルカウントと、平均サイクルカウントの標準偏差から成る。
好ましくは、各記録は電圧及び/又は周波数プロファイルから成る。
好ましくは、前記決定することは、動作の最悪サイクルカウント、動作の平均サイクルカウント、及び平均カウントの標準偏差に基づいて前記動作に対する前記電圧−周波数プロファイルを計算することを含む。
好ましくは、前記決定することは、前記計算によって決定される電圧周波数プロセッサを量子化して、リソースの利用可能な電圧及び/又は周波数動作点に対応させることを更に含む。
好ましくは、スケジューリングすることは、リソースに対する多数の制御メッセージを有する処理タイムテーブルを生成することを含む。このメッセージは動作に対応しており、かつ電圧及び/又は周波数制御指令を含んでいる。
好ましくは、処理装置はワイヤレス端末又は基地局である。
上述した方法の任意のものを実行するために、プロセッサにより読み出し可能なコンピュータプログラム又はプロファイル製品も提供される。
本発明の実施形態を、一例としただけであり、限定することを意図せずに以下の図面について説明する。
図1を参照すると、実施形態に従う処理装置の構成は、複数の処理リソースR1−Rn、制御装置1、制御プレーン2、データプレーン3、及びデータバス制御装置4を備えている。処理装置は、例えばUMTSとGSMのような1つ以上のプロトコルに従って、基地局に対して信号を受信及び送信するためのワイヤレス通信端末において使用してもよい。この装置は特にソフトウェア無線機(SDR)アプリケーションに適しており、便宜上及び説明の容易のために、本実施形態は移動ワイヤレス通信アプリケーションに関して説明されているが、それに限定されるものではない。
処理リソースRは、例えばビタビデコーダのような特定のワイヤレス通信処理のためのASICでもよく、複数の使用による再構成可能なデジタル信号処理(DSP)ブロック、又は同様に再構成可能な書換え可能ゲートアレイ(FPGA)でもよい。
データプレーン3は、メモリリソースに結合されたデータバスと、例えばアナログ−デジタル変換器、デジタル−アナログ変換器、チャネルデコーダ、イコライザ、及びボコーダなどの他のリソースに結合された入力/出力インターフェースとを備えた論理エンティティである。メモリはサンプル化信号シンボルのみならず、そのシンボルや、処理チェーン内の様々なステージに従った関連データを記憶して、デコードされたトラフィックデータを得るために使用される。
データバス制御装置4は、様々なリソースR、メモリ、及び他のデータ面コンポーネント間のアクセスを制御し、例えばリソースが適切なデータを読み出して、その後リソースによる処理に従ってメモリにデータを書き込み直すことができる。
制御プレーン2は、リソースRと制御装置1との間に制御バスを備えた別の倫理エンティティである。また、データと制御プレーンの両方は例えばクロスバー又はネットワークとして実施できる。
制御装置1は、データプレーン内のデータが処理のため正しいリソースRに渡されたこと、及び競合エンティティによるデータ転送の要求が適切に処理されることを確実にするために、データバス制御装置4を介してデータプレーン3の動作を制御する。データを転送するために使用される機構も、システムの構成に従って、異なるv−fで実行するように切り換え可能であってもよい。他のすべてのリソースと同様に、データプレーンも“データバス制御装置/アービタ(arbiter)”を介して制御装置により構成される。当業者ならばデータバス制御装置の動作を熟知している。
一般的条件では、制御装置は、データプレーン内のデータが、正しい順序で、可能ならば異なるリソースを使用して実行可能なタスク又はタスクのグループに動作を分けることにより並列に、様々なリソースRにより適切に処理されることを確実にする。更に、制御装置1は、要求された処理が最小の電力消費で実行される方法で、各リソースRの電圧−周波数(v−f)を制御する。処理タスクの多くは処理が完了しなければならない所定のデッドラインを持ち、故に制御装置1は、同時に電力消費を最小にしながら、この制約に従って装置内の処理を制御するよう構成される。これは、例えばワイヤレス通信端末のような厳しいデッドラインのある処理タスクを持つ携帯端末において有用である。
図2は制御装置1を模式的に示し、図3はリソース毎に制御装置により具体化される制御構造を示し、例えばGSMやUMTSのような異なる時間ベースを用いる2組のリソースRを含んでいる。制御装置1は、制御メッセージの適切なリソースRへの転送を制御するディスパッチャ10を備える。ディスパッチャ10は、処理タイムテーブル11に従って、いつ、どの制御メッセージが、どのリソースRに送信されるかを決定する。処理タイムテーブル11は、それぞれが関連リソース識別子を持つ、制御メッセージのリストと開始時間とを備えたデータ構造である。開始時間は通常、WCDMAの場合には10ミリ秒の無線フレームのような予め定められた時間基準に関連する。ワイヤレス通信信号は、受信器が信号を適正に受信し処理するために自己同期するフレーム内で送信される。例えば内部クロック信号から得られたフレーム同期ソース12がディスパッチャ10に供給されて、処理動作が互いの間と同様に適切に同期することを確実にする。
各制御メッセージは、送信時間、宛先、指令、電圧−周波数設定、及び構成情報を含む。処理タイムテーブル11における制御メッセージの性質及びタイミングは、ダイナミックスケジューラ13によって決定される。スケジューラ13は、シャドウ処理タイムテーブル14に制御メッセージを書き込み又は更新し、このタイムテーブル14はアクティブ処理タイムテーブル11と同一の構造を持つ別のデータ構造である。アクティブ処理タイムテーブル11には、一般的に、例えばフレームの終端/始端のようなある都合のよい時間で、シャドウ処理タイムテーブル14のコンテンツがロードされる。シャドウタイムテーブルが使用されるのは、タイムテーブルに変更があるとき、テーブルに書き込むために限られた時間が掛かり、これが生じている間タイムテーブルは不完全なデータを持つことになり、ゆえに欠陥のある指令がリソースに送信されることになるかもしれないからである。制御装置は、イベントが変化するにつれて、様々な動作のための制御メッセージを更新する。例えば、動作は予想よりも早く、リソースの1つの解放を早めに停止してもよく、それ故、制御装置は、新たに解放された処理リソースRに対して、後にスケジューリングされた動作を再割り当ててもよい。
図4は、ある期間にわたって、かつ5つの処理リソースR1−R5に渡って割り当てられる動作O1−O10用スケジュールを示す。動作のいくつかは前回の動作からのデータを要求するので、その動作が完了してしまうまで開始できなく、これに対して他の動作は平行して実行可能である。多数の処理リソースに渡って動作をスケジューリングするためのスケジューラは技術的に知られている。一般的な従来のスケジューラは、その動作の最悪サイクルカウント、即ち処理リソースが動作を完了するために最悪の状況で実行しなければならない処理サイクルの数に基づいて動作をスケジューリングする。このことから、動作の最大実行時間が何であるかを決定でき、そしてこれはこのとき他の要求される動作に接近して動作をスケジューリングするために使用される。しかしながら、動作はその最悪サイクルカウントを要求しないで、早く終了することが多い。ダイナミックスケジューラは、動作が早めに終了することがある事実を考慮してスケジュールをダイナミックに変更でき、恐らく後でスケジューリングされた動作を早く開始する。このようなダイナミックスケジューラも技術的に知られている。
制御装置1は、処理装置が行うことになっている動作毎に制御ブロック即ちレコード16を含む動作制御ブロックデータ構造15も備えている。各動作のレコード16は、その動作の最悪サイクルカウントを含む動作に関連づけられた多数のパラメータ、リソース識別子(R1−Rn)、電圧周波数(v−f)プロファイル、及び好ましくは処理装置の動作の前回の実行に対応する実行時間統計値から成る。これらは、統計値が計算される前に値のフィルタリングを行うために使用できる過去の実行時間(実行時間0、実行時間1…)を含む。
制御装置は、動作の最悪サイクルカウントを超えるv−fを決定する電圧−周波数プロファイル計算器17も備え、動作を実行するリソースRのv−f動作パラメータを制御するために使用される。量子化器18はv−fプロファイル計算器17の出力を、リソースRに関連づけられた達成可能或いは実際のv−f地点の1つに調整する。量子化器及びプロファイル計算は、単一ブロックにおいて、例えば2つの電圧設定だけが使用されているときに行える。このとき、動作に関連づけられた処理リソースRのための量子化v−fプロファイルは、動作の制御ブロック即ちレコード16に書き込まれる。
動作毎のv−fプロファイルは、一般的にあるレベルで開始し、その後、必要ならば、図5に示すように動作の厳しいデッドラインが近づくに従ってこのレベルを増加する。これは、多くの場合に動作がその最悪サイクルカウントを要求しなく、ゆえに早く終了するという事実を利用する。最初にv−fを低く維持することにより、この低v−fのみを用いて動作の多数の実行が行われ、それゆえにこの動作に関連づけられた平均電力消費が減少する。動作がその最悪サイクルカウント、又はこれに近いサイクルカウントを要求している場合には、動作がそのデッドラインまでに終了されることを確実にするためにv−fが増加される。
動作毎のv−fプロファイルは、その動作に関する履歴実行統計値により影響される。例えば、動作が平均実行時間、或いは低標準偏差を持つサイクルカウントを有する場合、即ち、大した変動がない場合には、初期v−fレベルは、平均実行時間が厳しいデッドラインに近いこの低v−fに達するように低く設定できる。その後、動作がサイクルカウントの平均数以上を要求するときに、動作がそれらの実行のための厳しいデッドラインより前に終了することを確実にするためにv−fレベルはかなり高くできる。高い標準偏差を持つ動作に対して、即ち動作時間に多くの偏差があるとき、すべての実行状態のための厳しいデッドラインより前に動作が終了することを確実にするためにv−fレベルは、初期にはより高くなっている。図6は、3つの標準偏差値、平均実行サイクルカウント500及び30から10000までの間で変化する標準偏差に対する繰り返し周期対繰り返し数を示す。最終的に、計算はサイクルカウントに基づくが、実行時間からサイクルカウントへ変換でき、同様に、ターボデコーダの反復数の平均値及び偏差のような、等価サイクルカウント統計値にマッピングできるより高レベルのメトリックによっても変換できる。
ダイナミックスケジューラ13は、図2で示されるように処理タイムテーブル11及び14へ書き込む動作又はタスク毎に、適切な動作の制御ブロック16からv−fプロファイルを検索するよう設けることができる。或いは、ダイナミックスケジューラ13は、動作の最悪サイクル、平均カウント、デッドライン、及びこれらから派生する図3に示されるような電圧−周波数プロファイルのようなパラメータを検索してもよい。
動作は図4を参照してすでに述べたようにスケジューリングされる。即ち、動作実行時間は同じであるが、動作を行うリソースRが動作の実行中にv−fプロファイルに従って動作するように付加的v−f制御が処理タイムテーブルに追加される。従って、動作の全体の実行時間は影響されないが、そのv−fレベルは決定されたv−fプロファイルに従って変化する。
各リソースRは自己の供給電圧及びクロック周波数を持ち、制御装置はモジュール毎に電圧−周波数を設定する。各モジュールRが別のクロックをオフに動作できるので、データプレーンへのインターフェースは非同期となり、更に、それは異なる動作電圧のバッファもしなければならない。
リソースRは、通常、限定制御コードを持つ専門データ処理ブロックである。即ち、リソースRはデータを受信し、処理して、送る。制御装置1は、いつ、どのように各リソースが動作するかを決定する。リソース間でのすべてのデータ転送はデータプレーンを介して行われる。すべての制御メッセージ及び測定報告は制御プレーンを介してなされる。データプレーンはリソースとしても考えられるので、その特性もデータバス制御装置を介して制御できる。例えば、そのv−fは特定のリソースRと対話しているときに調整されてもよい。
各リソースは、制御装置1により動作を実行するよう指示されると、動作を実行する。制御プロセッサ内では、ディスパッチャが処理タイムテーブルを読み出し、リソースがデータを処理すると予想される直前に各リソースにメッセージを送信する。メッセージは構成情報と指令言語とを含む。この方法では、要求された機能を実現するため、リソースが静的にスケジューリングされてもよい。
リソースに送信できる指令の1つは、電圧−周波数指令である。この指令はそのリソースに対して供給電圧を設定し、動作周波数も設定する。リソースは、サイクルの実際の数をカウントするためのカウンタも備えている。この代わりに、リソースは、標準クロックをオフに動作するタイマを有していてもよい。これは動作が完了するのにどれだけの時間がかかるか、即ち実際の実行時間を計測するために使用される。完了すると、リソースは実行時間と動作ハンドルとをメッセージ内で制御装置に送信する。電圧−周波数ランピング自体によるだけでなく、動作が完了するために、動作が異なる数のサイクルをとることがあるためにサイクル動作時間は変化する。サイクルカウントの変化の理由には、要求される処理がボイスデコーダのようなデータに左右されること、リソースが別のリソースとデータバスを共有するので、第2のリソースがバスを使用している間ブロックされるおそれがあること、ターボデコーダの反復数がチャネル状態の変化の結果として変化しうるなどの外部状態の変化の結果、システムがリソースにより実現される処理をダイナミックに修正する可能性があることが含まれる。制御装置1は、電圧−周波数ランプが何であったかの知識を用いて実際の実行時間から実際のサイクルカウントを計算する。実行時間を測定する代わりに、リソース内のカウンタを使用して直接サイクルの数をカウントしてもよい。
制御装置1は、各動作の終了時に、各リソースによって送信された実行時間/回数を、それぞれの動作制御ブロックデータレコード16に記憶する。動作制御ブロック15は、最悪サイクルカウント及びフレーム期間に関する開始時間によって初期化される。即ち最も速い動作が他の動作からのデータの利用可能性及び動作が行われるときの関連タイミングデッドラインにより開始できる。この動作の統計値が設計時に知られている場合には、平均サイクルカウント及び標準偏差もまた初期化時に設定されてもよい。この場合、実際の実行時間が要求されておらず、更に関連タイミングデッドラインが変化するときにのみ電圧−周波数プロファイルが計算される必要があることを示すフラグが設定される。制御装置1は、各動作制御ブロックの記録16のための平均サイクルカウントや標準偏差のような統計値を更新するための統計値計算器19を含む。
統計リソーススケジューリングが変化するか、或いは任意の動作のための電圧−周波数プロファイルが変化するとき、処理タイムテーブル11及び14内のメッセージは、電圧−周波数のための正しい値によって更新される。新しい電圧−周波数プロファイルを計算するための膨大な時間の費を避けるため、更新は、比較的まれな間隔、例えばフレームの終端で行うだけである。
動作の実行中に電圧−周波数を増やすことにより、動作がその平均サイクルカウント未満であるが、最悪サイクルカウントが生じれば、そのデッドラインに達していれば、電力消費は減少する。これは、理想的には、特に、それらが再構成可能に設計されている場合にワイヤレス無線機(ソフトウェア無線機)のような厳格リアルタイムアプリケーションに適する。
図7を参照すると、制御装置1の動作のフローチャートが示される。ダイナミックスケジューラ13は、1組の要求された動作及びそのタイミング制約とを含む動作間のデータフローの定義を構成管理モジュールから受信する。例えばSDR端末では、この定義はGSM内でセルラ通話を受信することに対応する。GSM信号の受信及び送信を達成するよう要求された動作は、その後スケジューラ13にダウンロードされる。スケジューラ13は、図4で図示されたように動作を分割し、これらを適切な時間に異なる処理リソースRへ割り当てることによって、初期スケジュールを決定する。スケジューラ13はその後、動作毎に適切な動作制御ブロック16からv−fプロファイルデータを読み出し、適切な制御メッセージをシャドウ処理タイムテーブル14に書き込む。(絶対時間の)適切な地点で、このメッセージはアクティブな処理タイムテーブル11にロードされ、ディスパッチャ10によって適切なリソースRに転送される。
リソースRによる動作が完了すると、完了メッセージが制御装置1に送信される。このメッセージには、動作のための実行時間及び/又は実行サイクルカウントが含まれる。この情報は適切な制御ブロック16に転送され、ここで動作に関して記憶されている統計情報に追加される。スケジューラ13は動作終了時間も監視し、完了動作が早く終了した場合には、後の動作をダイナミックに再スケジューリングすることができる。
動作毎のv−fプロファイルは、動作ブロック16に記憶されている統計実行時間データから計算され、リソースRのための実際のv−f地点に量子化され、その後、その動作のために動作ブロック16に記憶される(又はダイナミックスケジューラへ直接送られる)。v−fプロファイルは、統計データが上昇するにつれて定期的に更新される。
処理タイムテーブルは、好ましくは以下のように更新される。
a.動作を要求するすべてのメッセージを発見
b.この動作に関連づけられたすべての古い電圧−周波数指令をリストから除去
c.新しい電圧−周波数設定を用いて、新しい電圧−周波数指令をリストに追加。
或いは、いくつかのリソースは、電圧−周波数設定を内部的に自己修正できてもよい。よって、そのようなケースでは、リソースに送信される構成メッセージは、1組の電圧−周波数値とそれらの関連づけられた相関タイミングとを含む。従って、これらの値が変更されるときには、構成指令だけを修正する必要がある。
この方式の更なる拡張のために、図3(システム1及び2)で示されるように、1以上の処理タイムテーブル11(及び関連づけられたシャドウ14)が使用される。各タイムテーブルは、異なる時間ベース及びフレーム同期から実行する。これは、GSMやUMTSのような2つのシステムが同一のプラットフォーム上で実施されているときに使用できる。このようなシステムでは、2つのフレーム同期時間が異なり、互いに位相を異にしており、多数のタイムテーブルを用いなく共通点が非常に高く、そのためタイムテーブルが非常に長くなる。これは、リソース上の各動作に対して更に拡張でき、或いは複数の動作を持つ各リソースは自己のタイムテーブル、v−fプロファイル、計算器などを持つ。これによりタイムテーブルへのアクセスが簡単になる。2つのシステム(GSM及びUMTS)間のリソース(例えばデータバス)のオーバーラッピングは可能だが、異なる時間ベースのためにスケジューリングは難しくなる。即ち、スケジューリングは、それを非常に大きくする公倍数を見つけなければならない。
代替構成では、動作を実行するために別の電圧プロファイル又は周波数プロファイルが計算されるように、電圧又は周波数のうちの1つのみが調整されてもよい。例えば、動作が特定時間で完了するように周波数が設定されてもよく、これが、スケジューラを簡単にし、リソース要求を減少するかもしれない。例えば出力データが動作の最後にグローバルメモリに書き込まれるだけであり、その後すぐに別の動作によって読み出され、これによってRAMを解放する。
更なる実施形態では、動作に対する周波数及び電圧プロファイルを決定するより洗練された方法が提供される。実際の通信システムでは、動作に対するサイクルカウントは、ガウス分布のような標準分布を用いてモデル化することは難しいだろう。このことは、平均又は標準偏差のような単純なメトリックを用いてそのようなサイクルカウント分布を表現又は特徴づけすることが常に容易とは限らないことを意味する。実際のサイクルカウント分布を決定する多くの予測不可能なファクタが存在するので、非標準モデルが必要かもしれない。
サイクルカウントは、完全なシステムの構成の関数であるのみならず、これが処理するデータやチャネル環境のような外部パラメータの関数でもある。再構成可能なシステムでは、ターボデコーダのような動作は、共有リソース(例えば、共通データバス)を使用してその動作を完了する必要がある。その構成が予測できないので、共有リソースの他のユーザの数を予め決定できず、従って、リソースを取得する際の遅延は非決定的であり、よって動作サイクルカウントを正確に予測することはできない。より複雑な動作(例えば、ボコーダ)は、受信した実際のデータに従って異なる関数を実行する内部分岐指令を有し、これにより完了前に可変数のサイクルを実行し、更に予測不可能な方法で共有リソースにアクセスし、その結果として、他のリソースに関するサイクルカウントに変化をもたらす。
更に、ターボデコーダ又はMIMO空間時間コードのような多くの動作が、チャネル環境のタイプ(例えば、ターボ反復の数やMIMOシステム内のアンテナの数)に従って、複雑に増加又は減少できる。この複雑な変化が、そのブロックそしてまた共有リソースアクセスのパターン又はプロファイルに対するサイクルカウントに影響を与えるのは明らかである。このような変化は、サイクルカウントがモデル化するのを困難にし、それゆえ適切な電圧プロファイルの決定が非常に複雑になる。
フラヴィウス・グライアンの“確率的なデータ及びDVSプロセッサを用いた低エネルギーのための厳格リアルタイムスケジューリング”ISLPED‘01、2001年8月2〜7日、は、可変サイクルカウントを持つが厳格なデッドラインを有するタスクのための電圧プロファイルを決定する方法を説明している。プロファイルは、ワイヤレス信号を復号するというような特定のタスクを実行する際の現時のサイクルカウントでリソースを処理する可変電圧を動作するための電圧レベルを提供する。プロファイルは、多くの異なる時間で同一のタスクを実行するために必要なサイクルカウントの数に関する履歴情報から決定される。電圧プロファイルに従ってリソースを動作する目的は、平均的にタスクを実行する際のリソースによる電力消費を最小にすることである。
図7は、タスクに対する確率密度関数(PDF)としても知られる、タスクに対するサイクルカウント分布を示す。稀な状況では、タスクには最小Cmin又は最大Cmax数のサイクルがかかるが、多くの場合、タスクはこれら2つの極限の間の多くのサイクルの中で完了する。実際の分布は特定のタスクに左右され、例えば、ワイヤレス通信システムにおけるチャネル状態が変化するにつれ、時間の経過と共によく変化する。示されている例では、多くの場合タスクが最大サイクル数の半分未満で完了することが分かる。この分布が非標準的であることも分かる。
グライアンによると、全体電力消費を最小化にする一方で、(Cmaxの場合でさえ)厳しいデッドラインに常に適合することを確実にする電圧プロファイルが、次式から計算できる。
Figure 2005222536
ここでKyはサイクルy毎のサイクル周期であり、Aはタイミングデッドラインであり、CDFyはyに対する(PDFの積分による)累積分布関数、即ち動作がサイクルyの前に終了する確率である。
このように、サイクルy毎の理想的なサイクル周期kyが計算できる。その結果として、サイクルy毎の理想的な動作周波数fyが提供される。そしてサイクルy毎の理想的な動作電圧vyが決定されて、図8に示すような理想的な電圧プロファイルを提供できる。動作周波数と動作電圧の関係は使用されるハードウェアに左右される。
各サイクル周期値kyは最大値であり、より小さなクロック周期でも要求されるタイミングデッドラインを達成するが、動作電圧を増やす必要があるので電力効率はより小さい。供給電圧を減らしてその結果電力消費を低減することができるので、理想的にはクロック周期を最大にすることが望まれる。最小供給電圧とクロック周期の関係はシリコン技術の関数であるが、次式を用いて推定できる。
Figure 2005222536
ここで、VDDは供給電圧であり、Vth,α,及びCは技術的な制約である。A. P. Chandrakasan, R. W. Broderson, Minimizing Power Consumption in Digital CMOS Circuits, Proc of IEEE, VOL. 83, No. 4, 1995年4月を参照する。
実際には、クロック周期が計算されると、供給電圧が数学的に計算されるか、或いは例えば製造業者により提供されるルックアップテーブルを用いて計算される。ルックアップテーブルを用いることによって、正確な動作電圧が一定範囲の電圧に限定される。実際のシステムではこのことは重要である。なぜなら、最大及び最小動作電圧に限界が存在するからである。更に、この電圧を回路が確認されてしまった1セットの電圧に量子化することも必要となるかもしれない。
確実に動作電圧が常にクロック周波数をサポートするようにするために、電圧をより高い値に量子化する必要がある。
グライアンを用いた上述の理想的な周波数(及び電圧)プロファイルに伴う課題は、サイクルカウント毎に平方根計算に対する条件が与えられている場合に、この等式を実際のシステムで実現するのは難しいという点にある。実行するには難しい、即ち膨大な計算を必要とするタスクのパフォーマンスにわたって電圧が連続的に修正する必要があることを知ることができる。
Vmax,Vmid,及びVminの3つのレベルを用いる図10で示されるように、固定数の電圧レベル又は位相に電圧プロファイルを「量子化」することによって、より簡単な実施が行える。タスクが最小サイクル数近くで完了する場合、最低電圧レベルVminのみが必要とされる。その後、特定のサイクルカウントまで、中間電圧レベルVmidでタスクが継続する。最後に、タスクがまだ終了していない場合には、処理リソースは最大電圧レベルVmaxで実行して、Cmaxで示される厳しいデッドラインまでに確実に動作が終了するようにする。
量子化された電圧プロファイルは実際のシステムにて実現するにははるかに簡単であり、好ましくは電圧レベルが少ないほどより良くなる。これは、実際には、電圧及び周波数の段階的変化が同時には起こり得なく、よって電圧が周波数よりも前にセットアップしなければならないためである。この期間は非効率であるので、電圧段階(遷移)の数は減少されなければならない。
図10の量子化された電圧プロファイルは、図9に示されるようなサイクルカウント分布の簡略化、即ち量子化されたモデル(PDF)を利用することによって達成される。特定のPDFメトリックを用いて簡略化にされたPDFを特徴づけることによって、電圧プロファイルの計算を大幅に単純化できる。
本実施形態では、これらのメトリックはある範囲であるか、又は2つの限界Clow及びChighであり、この範囲内又はこれらの限界の間に全てのサイクルカウントの小数Pが存在しうる。より一般的には、特定の分布を十分正確に特徴づけるために、多くの範囲又は限界C0-Cnが必要となるかもしれない。そのとき、サイクルカウントの各範囲は全てのサイクルカウントの小数P0-Pn-1を持つ。図9の簡略化分布に戻ると、Pの実際の値は分布形状に従って変化するが、Pが90%から95%の間にあれば良好な結果が得られた。計算を更に簡単にするためには、電圧レベルVminないしVmid、及びVmidないしVmaxの間の遷移が、それぞれサイクルカウントの限界Clow及びChighに対応する。電圧レベルは、例えば上述の式を用いて、プロファイルの各セクションのサイクル周期又は周波数から導かれる。これらのサイクル周期Tmax,Tmid,Tminは、上述のkyに対する式に基づいた次式のような簡略化式により求められる。
Figure 2005222536
ここで、tmaxは最低電圧(Vmin)に対するクロック周期であり、tmidは中間電圧(Vmid)に対するクロック周期であり、tminは、最高電圧(Vmax)に対するクロック周期である。
クロック周期が計算された後、各電圧遷移{T1,T2}に対する絶対時間が計算される。T1及びT2は、供給電圧がそれぞれVmid及びVmaxへ切り換えられた場合に動作が開始した後の時間に対応する。
T1 = Clow * Tmax
T2 = Clow * Tmax+Tavg*(Chigh-Clow
これらの式は、サイクル周期がどれ程小さくなってよいかについて何ら限定するものではないので、Tmaxは技術的に規定される値に限定される必要があるかもしれない。この値が限定される場合、後続のサイクル周期は、補償するために減少されなければならない(即ち、これにより、最悪サイクルカウントが生じた場合でも確実に動作が時間通り完了するようになる)。tmid及びtmaxを修正するためにスケーリングファクタ(K)が用いられ、次式のように定義される:
Figure 2005222536
ここでTdは、このときまでに動作が完了されるべきデッドラインであり、TMIN_CLK_PERIODは、技術又はハードウェアによって設定される最小クロック周期であり、T2は、電圧がVmidからVhighへ切り替わる場合の動作の開始からのオフセットである。
修正されたサイクル周期が計算された後、これは供給電圧(即ち、サイクル周期をサポートする最小動作電圧)に変換される。電圧及びサイクル周期は、システム上の物理的制約に適合するように更に量子化しなければならないかもしれない。例えば、システムは、システムが設定されうる限定数の電圧周波数値しか持たないかもしれない。そのような場合、電圧周波数値は、動作デッドラインに間に合うように切り上げられなければならない。
Clow及びChigh値と同一の遷移時間を用いることによって計算が簡単にされたが、より一般的には、N個の位相を持つ量子化された電圧プロファイルも、以下の数学的処理によって示されるような異なる遷移時間又はカウントを用いて決定できる。
グライアンは必要なクロック周期とcdfとの関係を与える。
Figure 2005222536
ここで、kyはサイクルyに対するサイクル周期であり、Aはタイミングデッドラインであり、cdfyはサイクルyに対する累積確率分布関数、即ち関数がy個未満のサイクルを用いて完了する確率(これはPDFを積分することによって、又は更に以下で説明される他の方法によって求めることができる)である。更に、WXは、完了するために関数によってかかる最悪サイクル数である。
最大サイクル周期は最低サイクル数(y=1,cdf1=0)におけるものであり、cdfの関数であることを知ることができる。
Figure 2005222536
cdfが図11で示すような区分線形関数として描かれている場合、いくつの電圧段階が用いられるかに従って、kは多数の積分に分割できる。
Figure 2005222536
各位相又はセクション(C1-C2,C2-C3,C3-W)は、ある範囲のサイクルカウントに対応し、各位相に対して、回路は最適動作電圧/クロックの周波数/クロック周期を有する。理想的なシステムでは、クロック周期は徐々に増加するが、これは実際のシステムでは実現可能ではないので、位相毎に固定クロック周期が代わりに決定される。この固定時間周期(Tfixed)を導くために、特別な位相に対して理想的な電圧プロファイルを実行するのにかかる時間が計算される。この時間は位相で実行されるサイクル数によって導かれ、次式によって示されるような上限Tfixedを与える。
Figure 2005222536
これはTmaxの式(式3)の一部分であり、CcとCbの間の積分の評価である。ここでpdfは、CaとCbの間で一定値Pabを持ち、CcとCbの間で一定値Pcbを持つ。L及びKはこの積分恒等式から導かれ、以下のように定義される。
Figure 2005222536
代入して、次式を得る。
Figure 2005222536
後項をTmaxに対する上記式[3]に代入すると、図12で示すような3位相電圧プロファイルに対しては、
Figure 2005222536
図13に示されるような2位相プロファイルについては、
Figure 2005222536
このとき、位相毎のTfixedは、上記式[4]を用いて決定されうる。多くの異なる位相を実現するために必要な計算の概要が表1に示される。
位相毎にTfixedが一度決定されると、各位相の開始が決定できる。各位相の開始はサイクルカウント値、即ち機能ブロックがステップスルーしたクロックサイクルの数によって規定される。機能ブロックの動作電圧は、各位相の開始で変更する必要がある。機能ブロックに電圧を変更することを命令するコマンドが主として行われれば、電圧コマンドのタイミング(ti)が計算されなければならない。タイミングは、位相iに対する既知のサイクル周期(Ti fixed)を用いて計算され、この位相におけるサイクルの数(Ci+1−Ci)は以下のようになる。
Figure 2005222536
上述のように、必要なクロック周期が利用可能な電圧範囲内で達成され得ないときには特別の事態が生じる。即ち、最大動作電圧が、より大きなクロック周期に対応する。この場合、その位相に対する動作電圧は最大電圧に設定され、それゆえ先の位相に対するクロック周期は、補償するために減少する必要がある。スケーリングファクタ(K)は、以下の式から導ける。
Figure 2005222536
換言すれば、マップされた電圧に対する位相I(Ci->Ci+1)を実行するために必要な時間は、理想的な電圧より小さいか、又はこれと等しいものでなければならない。
ここで、Ti fixed_vは、電圧vにマッピングされた後のサイクル周期であり、Ti fixedは、電圧量子化前の理想的なサイクル周期である。
Figure 2005222536
この式は、位相nに対するTfixed_vを置き換えることによって、式10及び11から導かれる。先の位相は、補償するためにファクタKによってスケーリングする必要がある。Kは、位相nに対する電圧を固定した後に計算されなければならず、例えば位相1に下がる位相n-1に対して電圧を固定した後に再び計算されなければならない。しかしながら実際には、これは最後の位相に対してなされるのみである。
Kについて解くと、
Figure 2005222536
先に概説したように、電圧プロファイルはサイクルカウントの分布を示すcdfを用いて計算される。cdfを求める方法には様々なものがある。
関数がよく特徴づけられているか、とても簡単な場合には、cdfは設計時点で分かる。この場合、電圧プロファイルも設計時点で計算できる。そうでなければ、サイクルカウント値は設計時点で計算され、電圧プロファイルは実行時点で例えば上述の動作電圧の式を用いて計算される。
あるケースでは、例えば正規分布のような分布のタイプを知ることができるが、平均及び標準偏差のようなパラメータは設計時点では分からない。この場合、パラメータはサイクルカウントに対する過去の履歴を用いて実行時点で計算されるか、又は予め規定されたパラメータのセットを有する所定の構成に基づいていてもよい。パラメータが計算されると、分布のタイプに対するルックアップテーブルとともに利用されて、必要なサイクルカウント値を計算する。このケースを実現する実施形態は以下で説明される。
分布が分からない場合、サイクルカウントの過去の履歴を見ることによって計算される必要がある。以下に説明される実施形態では、この計算は、ある範囲のサイクルカウントに関連するカウンタ(即ち、ビン)をインクリメントすることによってなされる。関数はこのビン内のサイクル数を使用する。ビンの数及びビンのサイズは可変である。ビンのサイズは統一されている必要はない。ビンが満たされるにつれ、電圧プロファイルの計算により用いられるサイクルカウント値を決定するために多くの技術が利用される。1つの例が以下の実施形態で与えられる。
実行時点で分布がダイナミックに計算される場合、開始状態(即ち、関数が実行を開始する前の状態)が規定される必要がある。この開始状態は分布の最適推測値に基づいていてよく、又は単に、例えばpdが0とWXの間では平坦であるというような最も一般的なケースであってもよい。
分布タイプが知られていない場合の電圧プロファイル計算器の実際の構成については、図14及び15で実施形態が示されている。図14は、特定のタスクが完了する毎にサイクルカウントを受信する電圧プロファイル計算器のためのアーキテクチャを図示している。この計算器は、図3の統計計算器19と類似した統計モジュール30を備える。これは、動作が実行される毎にサイクルカウントを受信し、(例えば、図2又は3の制御レコード16に)記憶する。この履歴情報から、メトリック(Clow,Chigh,P)が提供され、ここから、電圧計算ブロック31がプロファイルのセクションのサイクル周期Tmax,Tmid,Tminを決定できる。これから、これら3つのセクションの対応する電圧レベルVmax,Vmid,Vminは、これらのレベルの間での切り換え時間T1及びT2とともに計算される。この情報は、処理リソースの電圧を制御するのに使用するために、電圧プロファイルデータ構造32(図2及び3の制御レコードに対応していてもよい)に記憶される。次に、動作はこのリソースによって実行されることになる。これは図2に関して説明されるような第1の実施形態の処理タイムテーブル制御メッセージ機構を用いて実現されてよいが、他の機構が代替的に使用されてもよい。
一連のメモリ位置即ちビンはカウンタとして割り当てられ、各ビンはある範囲のサイクルカウントに対応している。新しい構成が実現されると、全てのビンはゼロにクリアされる。サイクルカウントが動作又はタスクから受け取られると、関連するビンにおける値が増加する。より多くの動作が実行されるにつれ、サイクルカウントのより良いプロファイルが作成される。各ビンに関連する範囲はサイズが異なるが、これが実行を簡単にするので、より一般的にはこれらは等しい。
このプロファイルが与えられると、PDFを特徴づける1セットのメトリックが計算される。この計算は、それぞれの新しいサイクルカウントに続いて、又はN個の新しいサイクルカウントの後になされてもよいし、或いは任意の所定の時間間隔でなされてもよい。多くのメトリックタイプ(例えば、正規分布の場合の平均及び標準偏差)が計算できるが、この構成では、受け取った全てのサイクルカウント(no_of_operations_executed)の少数(P)を含むある範囲のサイクルカウント{Clow,Chigh}が計算される。
Clow及びChighは、好ましくは、最高値(ピーク)を持つビンをまず見つけ、次に、P* no_of_operations_executedを含むビンの範囲が分かるまでこの最高値のいずれかの側のビンを見ることによって計算される。このアルゴリズムの詳細は、図15及び表2で示される。
これらのメトリックは、図9で示されるような簡単にされたPDFを特徴づける。これは実際の確率密度関数(PDF)から導かれ、例えば図7に示すものと類似するものもある。これらのメトリックは、電圧プロファイルのより簡単な計算を考慮する。その結果、実現がより早くなる。図9及び図10の例では、簡略化PDF及び電圧プロファイルは3つの位相又はセクションに区切られているが、より複雑な方法は、すでに概説されたような多くの位相を用いてもよい。
クロック周期を計算するための好ましい式、及びこれから3つの位相に対する供給電圧が上記で与えられている。これらの式から、以下の動作の位相{C<Clow、Chigh>C>Clow、C>Chigh}に対応する3つのクロック周期(tmax,tmid,tmin)を計算することができる。クロック周期が計算された後、各電圧遷移{T1,T2}に対する絶対時間が上述のように計算される。
与えられた式には、サイクル周期がどれほど小さくなってもよいかに関する限定がない。しかしながら、Tminは技術的に規定される値に限定される。Tminが限定された場合、処理サイクル周期は補償のために減少しなければならない。これにより、最悪サイクルカウントが生じる場合にも、動作が確実に時間通りに完了するようになる。上述のスケーリングファクタ(K)は、tmid及びtmaxを修正するために使用される。より一般的には、スケーリングは全ての位相に適応する。最大電圧(最小サイクル周期)を持つ位相がまずテストされ、これにより全ての初期の位相が潜在的にスケーリングされる。スケーリング後の次に高い電圧を持つ位相がテストされ、必要に応じて、より早い位相が更にスケーリングされる。その後これは、全ての位相に対して繰り返される。
修正されたサイクル周期が計算された後、それらはサイクル周期をサポートする最小動作電圧である供給電圧に変換される。供給電圧、サイクル周期及び遷移時間(T1、T2)は、動作が次に実行されるときに使用するために、データ構造(例えば、修正された制御ブロックレコード)に記憶される。
電圧は更にシステム上の物理的制約に適合するように量子化される必要がある。システムは、システムが設定可能な限定された数の電圧−周波数値のみを有していてもよい。このような場合、電圧−周波数値は、確実に動作デッドラインに間に合うように切り上げられなければならない。
これらの処理は図16の動作フローチャートで要約されている。サイクルカウントの履歴は、例えば図15のビン方法によって、又は代替的におそらく製造業者によって提供されるであろう予め記憶されたサイクルカウント履歴によって決定される。図16の実線部分のみを参照すると、多くの線形関数によってサイクルカウント履歴の分布(PDF)を特徴づけるパラメータが決定される。これは、例えば図9の分布に対応し、例えばClow、Cmid、及びCmaxのような様々なサイクル限界を含む。更に、CDF関数は、PDF関数を積分することによって、例えば必要な範囲内でサイクルカウントビンを積分又は累積することによって決定できる。
(簡略化)PDFを特徴づけるこれらのパラメータが一度決定されると、簡略化PDFの位相又はセクション毎にサイクルカウント周期Tfixedが、上述のように決定される。必要な任意のスケーリングも任意の量子化(図示せず)であるように実行される。位相又は段階変更のタイミングも決定される。
位相毎の周期又は周波数が上述のように電圧レベルに変換され、必要に応じて量子化される。
量子化された電圧(及び周波数)はプロファイルに記憶され、例えば、適切な電圧及び周波数動作点を持つリソースに制御指令を書き込むことによって、リソースを制御するために使用される。しかしながら、これは当業者に利用可能な他の方法で実現できる。
本実施形態のための1つの可能性あるアプリケーションは、それぞれ1つ以上の動作又はタスクを実行する固有の電圧制御を持つ1セットのDSPに存在する。統計モジュール30及び電圧プロファイル計算ブロック31は、制御コードを構成するために最適化された汎用プロセッサ(制御プロセッサ)内に位置する。制御プロセッサは、その動作電圧及び周波数を設定するコマンドを各DSPに送信する。
別のアプリケーションは、再構成可能アレイ内の1セットの単純な処理素子に存している。各素子の動作電圧及び周波数が制御プロセッサによって設定される。
電圧プロファイル計算器を実現する実施形態が図16について説明される。ここでは、分布のタイプは知られているが、特定の分布を定めるパラメータは知られていない。分布のタイプが未知の場合、履歴サイクルカウントデータが決定される。その後、図16の破線部分のみを参照すると、平均及び標準偏差のような、(分布のタイプによって示される)既知のパラメータは、この統計データから計算される。これらは、多くの位相に対するサイクル周期Tfixedを計算するために使用される。これは前の式を使用して実現可能だが、所定の確率に対するサイクルカウントの範囲は、分布タイプ及びダイナミックに計算されたパラメータを使用することによって計算される。分布式は、ルックアップテーブルを用いることによって、又は直接この式を解くことによって計算できる。
分布のタイプが未知の場合、これらのサイクル周期は、上述のようにリソースを制御する際に使用するため動作電圧に変換される。
当業者は、上述の装置及び方法が、例えばディスク、CD−又はDVD−ROM、読み出し専用メモリ(ファームファイア)のようなプログラムされたメモリのようなキャリア媒体上で、或いは光学又は電気信号キャリアのようなデータキャリア上で、プロセッサ制御コードとして具体化されてもよいことを認識するだろう。多くのアプリケーションのために、本発明の実施形態は、DSP(デジタル信号プロセッサ)、ASIC(特定用途向けIC)、又はFPGA(書換え可能ゲートアレイ)上で実現される。従って、コードは、一般のプログラムコード即ちマイクロコード、或いは例えばASIC又はFPGAをセットアップ又は制御するためのコードを含めてもよい。コードは、再プログラム可能な論理ゲートアレイのような再構成可能な装置をダイナミックに構成するためのコードも含めてもよい。同様に、コードは、ヴェリログ(登録商標)又はVHDL(高速集積回路ハードウェア記述言語)のようなハードウェア記述言語のためのコードを含めてもよい。当業者が認識するように、互いに通信する複数の結合されたコンポーネント間でコードが分配されてもよい。場合によっては、実施形態は、アナログハードウェアを構成するために、書換え可能(再プログラム可能)アナログアレイ又は同様なデバイス上で動くコードを使用して実現されてもよい。
当業者は、様々な実施形態及びその実施形態に関して記載された特定の特徴が、他の実施形態、又は一般的に上述の教示に従ってそれらの特に記載された特徴と自由に組み合わされてもよいことも認識するだろう。当業者は、添付の請求の範囲の範囲から逸脱することなく、記載された特定の例に対して様々な代替及び修正がなされてもよいことも認識することになる。
表1は、多数の位相のサイクル周期を決定する多数の計算を示す。
Figure 2005222536
表2は、図15のフローチャートに対応する実施形態で実行されるべき関数を示す。
Figure 2005222536
図1は、処理装置のためのアーキテクチャの模式図である。 図2は、図1の処理装置のための制御装置の模式図である。 図3は、図2の制御装置により制御される各リソースのための制御装置の制御構造を示す模式図である。 図4は、多数の平行処理手段上で実行される様々な動作のタイミングを示すスケジューリングの図である。 図5aは、動作のための電圧−周波数プロファイルを示す。 図5bは、動作のための電圧−周波数プロファイルを示す。 図6は、図2の制御装置の動作のフローチャートを示す。 図7は、処理リソースによる特定のタスクの処理のための確率密度対サイクルカウントの実際の分布である。 図8は、図7で示されるようなタスクの前回の反復におけるサイクルカウントの確率密度に基づいた、タスクに対するDVS処理リソースの理想的な電圧プロファイルである。 図9は、図7の簡単化された確率密度分布を示す。 図10は、図9の分布に対応する簡単化された電圧プロファイルを示す。 図11は、スーパーインポーズされ、対応するcdfプロファイルを持つN位相pdfプロファイルを示す。 図12は、3位相cdfプロファイルを示す。 図13は、2位相cdfプロファイルを示す。 図14は、ある実施形態にしたがった電圧プロファイル計算器のためのアーキテクチャを示す。 図15は、図9の簡単化された確率密度分布を特徴づけるメトリックを決定する方法を図示する。

Claims (43)

  1. 所定のタスク用処理リソースのための電圧及び/又は周波数プロファイルを決定する電圧−周波数プロファイル計算器において、
    前記リソースを用いて前記タスクを完了するためにサイクルカウントの分布を特徴づける多数のメトリックを決定する手段と、
    前記メトリックに従って次の前記タスクに対する電圧又は周波数プロファイルを決定する手段とを具備し、
    前記電圧又は周波数プロファイルは、その期間中それぞれ異なる電圧又は周波数関数を有する2つ以上の位相を有する、電圧−周波数プロファイル計算器。
  2. 前記電圧又は周波数関数の1つ以上は、固定電圧又は周波数を示す線形関数である請求項1記載の計算器。
  3. 前記メトリック決定手段は、前記分布のタイプ及び対応するメトリックタイプを決定する手段と、この分布タイプに基づいて前記サイクルカウントの分布から前記メトリックを計算する手段とを備える請求項1又は2のいずれか1項記載の計算器。
  4. 前記分布はガウス分布であり、前記メトリックは平均及び標準偏差である請求項3記載の計算器。
  5. 前記メトリック決定手段は、前記サイクルカウント分布に対応する簡略化分布を特徴づけ、前記簡略化分布から前記メトリックを決定する手段を備える請求項1記載の計算器。
  6. 前記簡略化分布は、タスクの最大期間に及ぶ一連の線形関数である請求項5記載の計算器。
  7. 前記メトリックは、各線形関数の確率の限界である請求項6記載の計算器。
  8. 前記メトリックは、前記分布内の前記サイクルカウントの所定の割合を規定する下限及び上限を有する請求項7記載の計算器。
  9. 前記分布メトリック決定手段は、前回の状況において前記リソースにより前記タスクを完了するために必要とされた前記サイクルカウントを記録する手段を備える請求項1ないし8のいずれか1項記載の計算器。
  10. 前記分布メトリック決定手段は、所定のメトリックを受け取る手段を備える請求項1ないし8のいずれか1項記載の計算器。
  11. 前記電圧プロファイル決定手段は、各前記位相に対するサイクル周期を計算する手段を備える請求項1ないし10のいずれか1項記載の計算器。
  12. 前記サイクル周期計算手段は、最大サイクル周期を決定する次式を利用する請求項11記載の計算器:
    Figure 2005222536
    ここで
    Figure 2005222536
  13. 前記サイクル周期計算手段は、他のサイクル周期を決定する次式を利用する請求項12記載の計算器:
    Figure 2005222536
  14. 前記電圧プロファイル決定手段は、スケーリングされていないサイクル周期が前記リソースによってサポートされていない場合に、前記サイクル周期をスケーリングする手段を備える請求項11ないし13のいずれか1項記載の計算器。
  15. 前記サイクル周期をスケーリングする手段は、次式を利用する請求項14記載の計算器:
    Figure 2005222536
  16. 前記電圧プロファイル決定手段は、あるサイクル周期の位相から別の位相へ変化する時間を決定する手段を備える請求項11ないし15のいずれか1項記載の計算器。
  17. あるサイクル周期の位相から別の位相へ変化する時間を決定する前記手段は、次式を利用する請求項16記載の計算器:
    Figure 2005222536
  18. 前記電圧プロファイル決定手段は、各前記位相に対する前記サイクル周期を各前記位相に対する電圧レベルに変換する手段を備える請求項11ないし17のいずれか1項記載の計算器。
  19. 各前記位相に対する前記サイクル周期を各前記位相に対する電圧レベルに変換する前記手段は、次式を利用する請求項17記載の計算器:
    Figure 2005222536
  20. 前記プロファイルは3つの位相を有し、前記サイクル周期の計算は、以下の式に従って決定される請求項1ないし19のいずれか1項記載の計算器:
    Figure 2005222536
  21. 少なくともいくつかは制御可能な供給電圧及び/又は周波数を持つ複数の処理リソースを有する処理装置のための制御装置において、
    少なくともいくつかはそれまでに動作が行わなければならない所定のデッドラインを有する動作を前記リソース上でスケジューリングする手段と、
    請求項1ないし20のいずれか1項に従って電圧又は周波数プロファイルを計算する手段と、
    前記スケジュール及び前記プロファイルに従って、リソースに前記動作を実行させる手段とを具備する制御装置。
  22. 所定のタスク用処理リソースのための電圧又は周波数プロファイルを決定する方法において、
    前記リソースを用いて前記タスクを完了するサイクルカウントの分布を特徴づける多数のメトリックを決定し、
    前記メトリックに従って次の前記タスクのための電圧又は周波数プロファイルを決定することを含み、
    前記電圧又は周波数プロファイルは、それぞれがその期間中に異なる電圧又は周波数関数を持つ2つ以上の位相を備える、電圧及び/又は周波数プロファイル決定方法。
  23. 前記電圧又は周波数関数の1つ以上は、固定電圧又は周波数を提供する線形関数である請求項22記載の方法。
  24. 前記メトリック決定は、前記分布のタイプと対応するメトリックタイプを決定すること、及び前記分布タイプに基づいて前記サイクルカウント分布から前記メトリックを計算することを含む請求項22又は23のいずれか1項記載の方法。
  25. ガウス分布での分布及び前記メトリックは、前記平均及び標準偏差である請求項24記載の方法。
  26. 前記メトリック決定手段は、前記サイクルカウント分布に対応する簡略化分布を特徴づけ、前記簡略化分布から前記メトリックを決定する手段を備える請求項22記載の方法。
  27. 前記簡略化分布は、タスクの最大期間に及ぶ一連の線形関数である請求項26記載の方法。
  28. 前記メトリックは、各線形関数の確率の限界である請求項27記載の方法。
  29. 前記メトリックは、前記分布において前記サイクルカウントの所定の割合を規定する上限及び下限を備える請求項28記載の方法。
  30. 前記分布メトリック決定は、前回の状況において前記リソースにより前記タスクを完了するために必要とされた前記サイクルカウントを記録することを含む請求項22ないし29のいずれか1項記載の方法。
  31. 前記分布メトリック決定は、所定のメトリックを受け取ることを含む請求項22ないし29のいずれか1項記載の方法。
  32. 前記電圧プロファイル決定は、各前記位相に対するサイクル周期を計算することを含む請求項22ないし31のいずれか1項記載の方法。
  33. 前記サイクル周期計算は、最大サイクル周期を決定する次式を利用する請求項32記載の方法:
    Figure 2005222536
    ここで
    Figure 2005222536
  34. 前記サイクル周期計算は、他のサイクル周期を決定する次式を利用する請求項33記載の方法:
    Figure 2005222536
  35. 前記電圧プロファイル決定は、スケーリングされていないサイクル周期が前記リソースによってサポートされていない場合に、前記サイクル周期をスケーリングすることを含む請求項32ないし34のいずれか1項記載の方法。
  36. 前記サイクル周期スケーリングは、次式を利用する請求項35記載の方法
    Figure 2005222536
  37. 前記電圧プロファイル決定は、あるサイクル周期の位相から別の位相へ変化する時間を決定することを含む請求項32ないし36のいずれか1項記載の方法。
  38. あるサイクル周期の位相から別の位相へ変化する時間決定は、次式を利用する請求項37記載の方法:
    Figure 2005222536
  39. 前記電圧プロファイル決定は、各前記位相に対する前記サイクル周期を各前記位相に対する電圧レベルに変換することを含む請求項32ないし38のいずれか1項記載の方法。
  40. 各前記位相に対する前記サイクル周期を各前記位相に対する電圧レベルに変換することは、次式を利用する請求項39記載の方法:
    Figure 2005222536
  41. 前記プロファイルは3つの位相を有し、前記サイクル周期の計算は、次式に従って決定される請求項32ないし40のいずれか1項記載の方法:
    Figure 2005222536
  42. 少なくともいくつかは制御可能な供給電圧及び/又は周波数を持つ複数の処理リソースを有する処理装置を制御する方法において、
    少なくともいくつかはそれまでに動作が行わなければならない所定のデッドラインを有する動作を前記リソース上でスケジューリングし、
    請求項22ないし41のいずれか1項に従って電圧又は周波数プロファイルを計算し、
    前記スケジュール及び前記プロファイルに従って、リソースに前記動作を実行させることを含む、方法。
  43. 請求項22ないし41のいずれか1項記載の方法を実現するプロセッサコードを搬送する担体媒体。
JP2005013501A 2004-01-26 2005-01-21 ダイナミック電圧制御装置 Pending JP2005222536A (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB0401631A GB2410344B (en) 2004-01-26 2004-01-26 Dynamic voltage controller

Publications (1)

Publication Number Publication Date
JP2005222536A true JP2005222536A (ja) 2005-08-18

Family

ID=31971443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005013501A Pending JP2005222536A (ja) 2004-01-26 2005-01-21 ダイナミック電圧制御装置

Country Status (4)

Country Link
US (1) US7418358B2 (ja)
EP (1) EP1557743A3 (ja)
JP (1) JP2005222536A (ja)
GB (1) GB2410344B (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100936765B1 (ko) 2008-06-02 2010-01-15 엘지전자 주식회사 동적 전력관리 프로세서의 소음저감장치 및 방법
JP2010250802A (ja) * 2009-04-17 2010-11-04 Technology Currents Llc 目標のコンピューティングプラットフォームのためのタスク実行のスケジューリングおよび/または編成
KR101000555B1 (ko) 2008-06-16 2010-12-14 엘지전자 주식회사 동적 전력관리 프로세서의 소음저감장치 및 방법
US8046598B2 (en) 2007-01-22 2011-10-25 Samsung Electronics Co., Ltd. Device and method for controlling supply voltage/frequency using information of process variation

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7885409B2 (en) 2002-08-28 2011-02-08 Rockwell Collins, Inc. Software radio system and method
DE102005051451A1 (de) * 2005-10-19 2007-05-03 Universität Tübingen Verfahren zum Steuern einer digitalen Schaltung und digitale Schaltung, Verfahren zum Konfigurieren einer digitalen Schaltung, digitales Speichermedium und Computerprogrammprodukt
US7720506B1 (en) 2006-07-28 2010-05-18 Rockwell Collins, Inc. System and method of providing antenna specific front ends for aviation software defined radios
US7831255B1 (en) 2006-07-31 2010-11-09 Rockwell Collins, Inc. System and method of providing automated availability and integrity verification for aviation software defined radios
TWI326818B (en) * 2006-12-15 2010-07-01 Inst Information Industry Dynamic voltage scheduling method, system thereof and record medium
US7783906B2 (en) 2007-02-15 2010-08-24 International Business Machines Corporation Maximum power usage setting for computing device
GB2446830B (en) * 2007-02-22 2009-08-26 Toshiba Res Europ Ltd Controller for processing apparatus
DE102007026982B4 (de) * 2007-06-07 2009-04-02 Fachhochschule Nordhausen Prozessor, programmgesteuerte Einheit und Verfahren zur Regelung eines Prozessortaktes
JP2009301500A (ja) * 2008-06-17 2009-12-24 Nec Electronics Corp タスク処理システム及びタスク処理方法
US9323306B2 (en) * 2008-12-03 2016-04-26 Telefonaktiebolaget Lm Ericsson (Publ) Energy based time scheduler for parallel computing system
CN101893927B (zh) * 2009-05-22 2012-12-19 中兴通讯股份有限公司 手持设备功耗管理方法
US9086883B2 (en) * 2011-06-10 2015-07-21 Qualcomm Incorporated System and apparatus for consolidated dynamic frequency/voltage control
CN102931655B (zh) * 2011-08-12 2014-12-10 珠海全志科技股份有限公司 一种动态调节电压和频率的电路控制系统和方法
US8650423B2 (en) * 2011-10-12 2014-02-11 Qualcomm Incorporated Dynamic voltage and clock scaling control based on running average, variant and trend
US10615802B2 (en) * 2016-03-18 2020-04-07 The Governing Council Of The University Of Toronto Dynamic parameter operation of an FPGA
US20170272073A1 (en) * 2016-03-18 2017-09-21 Altera Corporation Dynamic parameter operation of an fpga
EP3537293A1 (de) * 2018-03-09 2019-09-11 Till I.D. GmbH Zeitlich deterministischer mikroprozessor und mikrocontroller

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5222239A (en) * 1989-07-28 1993-06-22 Prof. Michael H. Davis Process and apparatus for reducing power usage microprocessor devices operating from stored energy sources
US5812860A (en) * 1996-02-12 1998-09-22 Intel Corporation Method and apparatus providing multiple voltages and frequencies selectable based on real time criteria to control power consumption
US6141762A (en) 1998-08-03 2000-10-31 Nicol; Christopher J. Power reduction in a multiprocessor digital signal processor based on processor load
US6378081B1 (en) * 1998-10-01 2002-04-23 Gateway, Inc. Power conservation without performance reduction in a power-managed system
JP2000172383A (ja) 1998-12-02 2000-06-23 Seiko Epson Corp 半導体集積装置及びマイクロプロセッサ制御方法
US6298448B1 (en) * 1998-12-21 2001-10-02 Siemens Information And Communication Networks, Inc. Apparatus and method for automatic CPU speed control based on application-specific criteria
US7100061B2 (en) * 2000-01-18 2006-08-29 Transmeta Corporation Adaptive power control
KR20010098904A (ko) 2000-04-26 2001-11-08 윌리엄 비. 켐플러 멀티프로세서 객체 제어
US20020019843A1 (en) 2000-04-26 2002-02-14 Killian Robert T. Multiprocessor object control
JP2002099432A (ja) * 2000-09-22 2002-04-05 Sony Corp 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
JP2002215599A (ja) 2001-01-18 2002-08-02 Mitsubishi Electric Corp マルチプロセッサシステムおよびその制御方法
JP2003099148A (ja) 2001-09-19 2003-04-04 Sanyo Electric Co Ltd データ処理装置とこれに利用可能なシステム制御装置およびデータ変換方法
US7194385B2 (en) * 2002-11-12 2007-03-20 Arm Limited Performance level setting of a data processing system
GB2403823B (en) * 2003-07-08 2005-09-21 Toshiba Res Europ Ltd Controller for processing apparatus

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8046598B2 (en) 2007-01-22 2011-10-25 Samsung Electronics Co., Ltd. Device and method for controlling supply voltage/frequency using information of process variation
US9171713B2 (en) 2007-01-22 2015-10-27 Samsung Electronics Co., Ltd. Device and method for controlling supply voltage/frequency of process variation
KR100936765B1 (ko) 2008-06-02 2010-01-15 엘지전자 주식회사 동적 전력관리 프로세서의 소음저감장치 및 방법
KR101000555B1 (ko) 2008-06-16 2010-12-14 엘지전자 주식회사 동적 전력관리 프로세서의 소음저감장치 및 방법
JP2010250802A (ja) * 2009-04-17 2010-11-04 Technology Currents Llc 目標のコンピューティングプラットフォームのためのタスク実行のスケジューリングおよび/または編成
US8661443B2 (en) 2009-04-17 2014-02-25 Empire Technology Development, Llc Scheduling and/or organizing task execution for a target computing platform
US9471376B2 (en) 2009-04-17 2016-10-18 Empire Technology Development Llc Scheduling and/or organizing task execution for a target computing platform

Also Published As

Publication number Publication date
EP1557743A2 (en) 2005-07-27
EP1557743A3 (en) 2006-11-29
US7418358B2 (en) 2008-08-26
GB2410344B (en) 2006-03-15
GB0401631D0 (en) 2004-02-25
GB2410344A (en) 2005-07-27
US20050182578A1 (en) 2005-08-18

Similar Documents

Publication Publication Date Title
JP2005222536A (ja) ダイナミック電圧制御装置
JP4157502B2 (ja) 処理装置のための制御装置
CN105379121B (zh) 基于时钟时延调整的异步处理器的方法和设备
TWI590040B (zh) 行動裝置及其事件觸發方法
JP2004252937A (ja) アプリケーション実行のエネルギーを重視したスケジューリング
CN101480072B (zh) 控制方法、控制设备、通信设备、计算机程序、计算机程序分发介质和数据处理方法
CN107885306A (zh) 中央处理器的休眠控制方法与设备
JP2008234638A (ja) 処理装置用制御器
US7802259B2 (en) System and method for wireless broadband context switching
CN108983942A (zh) 一种动态调频的方法及装置
WO2008056293A2 (en) Fast adaptive voltage scaling
CN110320813B (zh) 物联网设备的电源管理方法及装置
US20070033349A1 (en) Multi-mode wireless processor interface
US20100295582A1 (en) Clock circuit for digital circuit
US20230111984A1 (en) Methods and Apparatus for Adaptive Power Profiling in A Baseband Processing System
WO2008146099A1 (en) Data processing system, method for processing data and computer program product
Yassin et al. Dynamic hardware management of the H264/AVC encoder control structure using a framework for system scenarios
Grosse et al. Methods for power optimization in SOC-based data flow systems
Poornachandran et al. Energy-efficient task scheduling for wireless sensor nodes with multiple sensing units
US10848165B1 (en) Performing low power refresh of a digital-to-analog converter circuit
US8140110B2 (en) Controlling input and output in a multi-mode wireless processing system
CN117693073A (zh) 双级c-drx模式的参数配置方法、装置和用户设备
Sarkar et al. A MAC layer power management scheme for efficient energy delay tradeoff in a WLAN
CN115551059A (zh) 多模芯片的通信方法、装置、电子设备及可读存储介质
Wu et al. Power-composition profile driven co-synthesis with power management selection for dynamic and leakage energy reduction

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050607

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20071214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071218

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080218

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081007

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090310