JP6125539B2 - リアルタイムシステムにおける動的電力管理 - Google Patents

リアルタイムシステムにおける動的電力管理 Download PDF

Info

Publication number
JP6125539B2
JP6125539B2 JP2014555788A JP2014555788A JP6125539B2 JP 6125539 B2 JP6125539 B2 JP 6125539B2 JP 2014555788 A JP2014555788 A JP 2014555788A JP 2014555788 A JP2014555788 A JP 2014555788A JP 6125539 B2 JP6125539 B2 JP 6125539B2
Authority
JP
Japan
Prior art keywords
processor
token
time
wake
controller
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
JP2014555788A
Other languages
English (en)
Other versions
JP2015513336A5 (ja
JP2015513336A (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 JP2015513336A publication Critical patent/JP2015513336A/ja
Publication of JP2015513336A5 publication Critical patent/JP2015513336A5/ja
Application granted granted Critical
Publication of JP6125539B2 publication Critical patent/JP6125539B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • 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/3243Power saving in microcontroller unit
    • 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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • 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
    • 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
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Power Sources (AREA)

Description

本発明は、概して、リアルタイム制御システム用のマイクロコントローラに関し、特に、マイクロコントローラにより使用される電力を削減することに関する。
リアルタイム制御システムにおいて用いられるコンピュータプロセッサは、典型的に、相補型金属酸化物半導体(CMOS)プロセスを用いて製造される。CMOS回路において、電力消費は、周波数と供給電圧の二乗との積に比例する。プロセッサの動作周波数及び/または供給電圧の削減は、エネルギー消費及び熱放散を著しく節約することにつながり得る。リアルタイムシステムにおいては、タスクが実行されていないアイドル期間の間、プロセッサは低電力モード(LPM)へ置かれ得る。LPMにある間、プロセッサは電力をほとんど消費しない。プロセッサが実行の再開を求める要求を受け取ると、プロセッサはLPMから復帰(awake)され得、プロセッサは通常の電力状態に戻り処理を再開する。
CPUアクティビティ(活動)を従来型の動的電力管理と比較する図である。 CPUアクティビティを従来型の動的電力管理と比較する図である。 CPUアクティビティを従来型の動的電力管理と比較する図である。
動的スリープコントローラ(DSC)ベースのCPU電力管理を示すブロック図である。
動的電力管理のためのトークンの使用を示すタイミング図である。 動的電力管理のためのトークンの使用を示すタイミング図である。 動的電力管理のためのトークンの使用を示すタイミング図である。
スリープ決定マップの例図である。
ウェイクアップタイムスロット決定マップの例図である。
ウェイクアップ要求ヒストグラムのフォーメーションを示す図である。
図2のマイクロコントローラに含まれ得る性能監視ユニットのブロック図である。
動的電力管理を含む例示的なSoCのブロック図である。
動的電力管理の動作を示すフローチャートである。
プロセッサの電力消費を削減するために、プロセッサの低電力モード(LPM)を効率的に利用する方法を本明細書で説明する。プロセッサがアイドル状態であるとき、プロセッサは、そのプロセッサが低性能またはゼロ性能を提供するLPMに置かれ得、ほとんど電力を消費しない。プロセッサが実行を再開するための要求を受け取ると、プロセッサはLPMから復帰し、プロセッサは通常の電力状態に戻り処理を再開し得る。
LPMを用いることの問題点は、プロセッサをLPMから通常状態に復帰させるためにある程度時間がかかることである。このような待ち時間によって、プロセッサにより実行されるタスクの処理遅延が生じる。タスクの厳しいデッドラインを有するリアルタイムシステムでは、この処理遅延が全体的なシステム性能に悪影響を及ぼすことがある。
プロセッサのLPMの使用を最大にしつつ、性能劣化を限定するために全体的な処理遅延を抑制する方法を次に説明する。本明細書で説明する動的電力管理システムにより、リアルタイムタスクがアクティブに実行中である間であっても、LPMを用いることができる。CPUで実行中のタスクがそれらのデッドラインに間に合うように、ウェイクアップ待ち時間による性能劣化を制限することのできるトークンスキームが用いられる。CPUの活動パターンを監視することによりLPMの使用を最大にすることのできる予測スキームも用いられ得る。
低電力モード(LPM)の使用は、状態遷移のオーバーヘッドに関与する。LPMから通常状態への状態変化にかかる待ち時間は、ウェイクアップ待ち時間と呼ばれる。このウェイクアップ待ち時間は、どのような種類のメカニズムがLPMで用いられるかに依存する。例えば、LPMがクロックゲーティング特徴のみを用いる場合、ウェイクアッププロセスは、クロックゲーティング信号を解放することに関与する。それゆえ、ウェイクアップ待ち時間は、2〜3クロックサイクル程度の小ささとなり得る。一方、通常状態からLPMへ遷移する間にプロセッサが別の安全なまたは不揮発性メモリ領域に内部コンテキストをセーブするパワーゲーティングをLPMが用いる場合、ウェイクアップ待ち時間は、2〜3ミリ秒を要することのあるコンテキストリストア時間を含む。一般に、あまり電力を消費しないLPMは、より長い待ち時間を要する。
LPMのウェイクアップ待ち時間が無視できる場合、プロセッサは、プロセッサがアイドル状態にあるときはいつでもLPMに置かれ得、そして、ウェイクアップ割り込みのようなウェイクアップ要求がある場合には復帰され得る。しかしながら、一般には、ウェイクアップ待ち時間は無視できるものではなく、待ち時間がプロセッサのタスク実行時間の遅延を引き起こすので、この待ち時間はシステムの全体的な性能に悪影響を及ぼす恐れがある。
その結果、これまで、電力節約のための典型的なシナリオでプロセッサをLPMに置くのは、プロセッサで実行中のアプリケーションが、ウェイクアップ待ち時間がウェイクアップ要求の時点で許容され得ることが明らかな状態にあるときのみであった。すなわち、リアルタイムタスクがアクティブに実行中でないときにのみ、LPMが用いられる。
図1Aから図1Cは、CPUアクティビティ(活動)を従来の動的電力管理と比較する。図1Aは、例示的なリアルタイムタスクの実行パターンを示す。アイドル期間102、106の間、CPUはアクティブタスクを実行していない。アクティブ期間104の間、CPUはタスクを実行するが、アクティブ期間104の間にもアイドル時間の期間が存在する。
図1Bは、LPMの従来の使用例を示す。この例では、アイドル期間102、106の間のように、アプリケーションが明らかに非アクティブであるときにのみ、LPMが用いられる。タスクがアクティブである間、プロセッサは通常の電力状態114のままである。
図1Cは、概して124で示すように、アプリケーションがプロセッサでアクティブに実行中であるときでもLPMモードを利用する方法を示す。
図2は、本発明の例示的な実施形態のブロック図である。動的スリープコントローラ(DSC)220は、ソフトウェアまたはハードウェアにおいて実装され得るものであり、CPU220がアイドル状態であるときにアサートされるcpu_idle信号204を監視する。この信号は、典型的に、実行されているタスクに含まれるアイドル命令をプロセッサが実行するときに、または、タスク実行をスケジューリングするオペレーティングシステムによって、アサートされる。cpu_idleがアサートされると、LPMに移行するのに適した時間であるか、または通常状態に留まる方がよいのかを、DSC220が決定する。DSC220がLPMへ移行するのに適した時間であると決定する場合、DCS220は、sleep_req信号222をアサートする。その後、パワー及びクロックコントローラ230が、クロック信号232及び/または電力供給234の電圧レベルをそれに応じて変化させることによって、CPUをLPMに置く。
割り込みコントローラ210が、マスクされていない機能割り込み212を検出すると、割り込みコントローラ210は、wakeup_req信号214をアサートし、パワー及びクロックコントローラ230は、クロック信号232及び/または電力供給レベル234をリストアすることによって、CPU202を通常電力状態へ戻す。先に述べたように、CPU202は、タスクの実行に戻る前に、コンテキストリストアまたは他のハウスキーピングタスクを行うことも必要とし得る。CPU202は、DSC220によってプリエンプティブ(preemptive)に復帰されてもよい。DSC220は、プリエンプティブwakeup_int信号224をアサートすることによってCPU202を復帰することができる。もし、CPUがプリエンプティブウェイクアップ割り込み224によって復帰され、かつその後にCPUが別の機能割り込み212を受け取る場合、CPUは、ウェイクアップ遅延を招くことなく、この機能割り込みを処理することが可能となる。なぜなら、機能ウェイクアップ要求を受け取る前にプリエンプティブウェイクアップ要求に応答して、ウェイクアップ待ち時間が発生したからである。DSCは、機能割り込みが間もなく生じると予期するときに、この事前対応型のウェイクアップメカニズムを使用し得る。
DSC220は、いくつかの動的電力管理機能を行うことができる。cpu_idleがアサートされるとき(204)、DSCは、LPMへ移行するか否かを決定する。DSCがLPMを選択する決定をする場合、DSCは、いつCPUを復帰するのかも決定し得る。プリエンプティブwakeup_int224がアサートされる前に機能割り込み212が発生する場合、CPUは、ウェイクアップ待ち時間に起因する処理遅延を被り得るが、プリエンプティブwakeup_int224がアサートされた後に機能割り込み212が生じる場合は、CPUは、ウェイクアップ待ち時間を被らない。
ウェイクアップ待ち時間が特定の閾値を超えないように、DSC220は、ウェイクアップ待ち時間により生じる処理遅延の蓄積を管理する。この方法において、プロセッサで実行するタスクは、それらのデッドラインに間に合う。DSC220に利用可能なクオリティ・オブ・サービス(QoS)ポリシー226が、アプリケーションに特有の情報を含む。
DSCは、LPMの使用を最大にするよう試みることもできる。MinEnergyポリシー228が、QoSポリシーが満たされる限りLPMを最大限用いるよう試みる一連の命令を含む。上述のように、これらの命令は、ウェイクアップ待ち時間をなくすために、次の機能ウェイクアップ要求の前にCPUをプリエンプティブに復帰させ得る。また、これらの命令は、スリープ時間を最大化させるために、できるだけ遅くCPUを復帰するよう試みることもできる。MinEnergyポリシーは、CPUの活動パターン及びQoSポリシーに基づいて実行時間中に生成される。
図2は、DSCが1つのCPUのみを管理する実施形態を示す。別の実施例では、DSCが多数のCPUを処理するために十分な帯域幅及びリソースを有する限り、DSCはそれらの多数のCPUを管理し得る。一部のマルチCPUアーキテクチャにおいては、信号配路を最小化するため、及び一層良好なスケーラビリティを提供するために、専用のハードウェア信号ではなく、バス相互接続を介して搬送されるバストランザクションコマンドを用いる、sleep_req222、プリエンプティブwakeup_int224、及びcpu_idle204などの信号を実装することが有益であり得る。
クオリティ・オブ・サービス・ポリシー
QoSポリシー及びMinEnergyポリシーの実施例を次に詳細に説明する。CPUがLPMにあり、プリエンプティブwakeup_intではなく機能割り込みによって復帰される場合を、本明細書では予測外れ(mis-prediction)と呼ぶことにする。各予測外れの発生において、DSCは正確なウェイクアップ時間の予測に失敗しており、DSCはCPUを迅速に復帰させていない。予測外れが発生すると、タスク処理は、ウェイクアップ待ち時間の量だけ遅延される。QoSポリシーは、このような予測外れが何回、またどのくらいの頻度、システムにより許容され得るのかを説明する。
表1は、QoSポリシー226の一例を示す。表1は、多数のトークン制約(token constraints)を含む。トークン制約は、2つのパラメータ、トークンの数及び期間、を含む。1トークンは、CPUで実行中のアプリケーションが、各特定された期間の間1つのウェイクアップ待ち時間の発生により生じた処理遅延を許容できることを意味する。例えば、表1のトークン制約1は、システムが1ミリ秒のトークン期間毎に2つのウェイクアップ待ち時間の発生を許容できることを示す。それゆえ、システムが1ミリ秒以内に2つのウェイクアップ待ち時間の発生を経験すると、如何なる追加の処理遅延をも避けるために、そのトークン期間の間にDSCが再びLPMを使用することはない。次の1ミリ秒のトークン期間の間、DSCはLPMを再び使用し得る。しかし、トークン制約2のため、次の1ミリ秒の間、DSCは1つのみのウェイクアップ待ち時間の発生を許容できる。このように、階層的なトークン制約ポリシーによって、例えば10ミリ秒のようなより長い期間で多数のウェイクアップ待ち時間を特定することができる一方で、すべての許容可能なウェイクアップ待ち時間が短期間に招かれることを防ぐことができる。
Figure 0006125539
上述のトークンベースのQoSポリシーは、LPMの使用により生じる性能劣化を抑制するために効果的である。スループット要件を有するソフトリアルタイムアプリケーションは、或る閾値を上回る性能を維持しながら、トークンベースのQoSポリシーを用いることができる。
トークンベースのQoSポリシーはまた、リアルタイムタスクのデッドラインを保証するためにも非常に効果的である。リアルタイムのシステムでは、タスクTiは、典型的に、(C、T、D)のパラメータによってモデル化される。ここで、それぞれ、Cは最悪ケースの実行時間、Tはタスクの期間、DはTiの相対デッドラインである。このモデル化は、既知のシミュレーション及び解析技術を用いて成され得る。
C、T、及びDパラメータが各タスクに対して一旦決定されると、各タスクのスラック時間を解析することにより、トークン制約が各タスクのために計算され得る。スラック時間とは、最悪ケースの実行時間の後に残された時間量である。各タスクのスラック時間は、スラック時間をLPMウェイクアップ待ち時間で除算することにより、トークンの数に直接的に変換できる。前述のように、LPMウェイクアップ待ち時間は、どのくらい深くプロセッサがスリープ状態に置かれていたかに依存する。トークン期間は、タスクのTパラメータと同じになるように選択され得る。各タスクは1つのトークン制約を生成し得る。タスクの所与のセットを解析した後、タプルのセット(TKi、Ti)が得られる。ここで、TKi=タスクiのためのトークンの数、Ti=タスクiのパラメータTである。TK≦TK及びT≧Tである場合、(TK,T)は、(TK,T)よりも厳密な制約であり、その結果(TK,T)を無視し得る。
最小エネルギーポリシー
図3Aから図3Cは、動的電力管理のためのトークンの使用を示すタイミング図である。MinEnergyポリシー228は、CPU202のスリープ時間を最大化するために、LPMの使用にとっての最適なタイミングを表す。この例の場合、トークン制約(3、10ミリ秒)を想定されたい。図3Aは、タスク実行の1つの10ミリ秒のトークン期間を示す。このトークン期間の間、タスク実行アクティビティ301〜304の4つのバーストがあり、それらの間にアイドル期間311〜313が点在する。タスクアクティビティは、デッドライン時間320よりも前に完了しなければならない。スラック時間314は、タスク処理304の終わりとデッドライン時間320との間のアイドル期間である。この例では、ウェイクアップ待ち時間は、デッドライン時間320を超えることなく少なくとも3回発生し得る。
図3Bでは、3つのウェイクアップ待ち時間の発生331〜333が10ミリ秒のトークン期間の中ほどで生じ、それゆえ、CPUは、このトークン期間の間に再びLPMに置かれることができず、そのため、10ミリ秒の持続時間の残り335の間、通常の電力状態のままである。
一方、図3CはLPMを使用した別の方式を示しており、この方式では、DSCは、より長い時間にわたりLPMを用いることができ、それにより余分な電力を節約し得る。この例では、第1のアクティビティバースト301が終了すると、DSCは通常状態に留まることを決定する。この結果、第2のアクティビティバースト302はウェイクアップ待ち時間を生じさせない。その結果、1つのトークンがアクティビティパターン301の復帰の間に用いられたため、第2のアクティビティバースト302の終わりで残存するトークン数はまだ2である。第2のトークンは、第3のアクティビティパターン303の復帰の間に用いられる(343)。
DSC220は、第4のアクティビティバースト304の前にCPUを首尾よく復帰させる(344)。それゆえ、ウェイクアップ待ち時間は処理遅延を生じさせなかった。これは、残りのトークンの数が1つのままであることを意味している。
第4のアクティビティバースト304が終了するとき、DSC220はまだ1つ残ったトークンを有する。この結果、DSCは、10ミリ秒の期間345の残りの間にLPMを使用し得る。
したがって、図3Bに示すように、任意のトークン期間の間にどのくらいの頻度でCPUがLPMに置かれ得るのかを追跡し続けるだけのためにトークンを用いることが、省電力につながるということが理解されよう。しかしながら、図3Cに示すように、最小のエネルギーポリシーが、残存するトークンの数に従って、LPMへの移行及び復帰を選択するための最適化されたタイミングを特定する場合、更なる省電力につながり得る。MinEnergyポリシーは次のように定義され得る。
所与の残りのトークンカウント(トークン数)に対し、CPUがアイドル状態になる度に、通常の電力状態に留まるか、またはLPMへ移行するかを、MinEnergyポリシーが通知する。
MinEnergyポリシーがCPUにLPMへ移行するよう通知する場合、MinEnergyポリシーは、CPUをいつ復帰させるのかも通知し得る。
一つの実施例では、図4に示す「スリープ決定マップ(SDM)」400及び図5に示す「Wakeup_time_slot決定マップ(WDM)」500と呼ばれる2つの表を用いて、MinEnergyポリシーを実装し得る。SDM及びWDMは、トークン期間を、タイムスロットと呼ばれる一層小さな時間期間に分割する。SDMは、各タイムスロットに対しLPMに移行する条件を表す。この条件とは、残っているトークンの数である。例えば、CPUがタイムスロット2の間にアイドル状態になり、かつMin_token[2]=3である場合、残っているトークンの数が3と等しいか3より大きい場合にのみ、DSCはLPMへの移行を決定し得る。
各タイムスロットに対しCPUをいつ復帰させるのかを決定するために、DSC220はWDM500を用いる。DSCがSDM400に基づいてLPMへの移行を一旦決定すると、いつCPUを復帰させるかを決定するために、DSCはWDM500を参照する。WDM500は2次元アレイである。このアレイにおける各エントリに対し、wakeup_time_slot[w][x]は、DSCがタイムスロットxでLPMを使用することを決定し、かつ残りのトークン数が(w+1)である場合、DSCがCPUを復帰すべきタイムスロット値である。
タイムスロットベースのCPUアクティビティ監視
SDM400及びWDM500を含むMinEnergyポリシーは、CPUアクティビティパターンを知ることに依存する。図6は、アクティビティパターンを監視して統計を集計する手順を示す。図6の例では、CPUのアイドル‐アクティブ事象が監視される。これは、CPUがLPMモードにある場合にCPUを復帰させ得る事象であり、図2を再び参照すると、ウェイクアップ要求214である。
トークン期間530が予め規定され、この期間はタイムスロットに分割される。ウェイクアップ待ち時間が或るタイムスロットで発生する場合、そのタイムスロットに対応するカウンタがインクリメントされる。例えば、517aで示すように、ウェイクアップ要求545がタイムスロット17に記録される。より細かなタイムスロットは、DSC動作のより細かな分解能を意味することに留意すべきである。
このカウント処理は、特定された数の期間にわたるヒストグラムを形成するために期間毎に繰り返される。例えば、次のトークン期間531の間、ウェイクアップ事象550が、517bで示すように、2までカウントを増大させることによってスロット17に記録される。或る時間量の後、カウント処理は停止し、各タイムスロットの最終的なカウント値がそのタイムスロットで発生するウェイクアップ要求の確率に変換される。タイムスロットに対するウェイクアップ確率の、結果として生じるセットを、本明細書ではウェイクアップ確率マップと呼ぶ。
ウェイクアップ確率マップは、タスクアクティビティパターンの履歴を表し、仮説は、過去のアクティビティパターンのこのような統計がシステムの近い将来の挙動を予測するためにいくぶん有効となり得るということに留意されたい。
ウェイクアップ確率マップの期間は、この期間がウェイクアップ要求にいくぶん同期するように選択されなければならず、そうでない場合には、ウェイクアップ要求の確率分布はフラットになり得る。
複数のトークン制約が異なる期間を有する場合には、ウェイクアップ確率マップは、トークン制約毎に構築され得る。この場合、異なるトークン制約は、プロセッサで実行されている異なるタスクと相関され得る。図2のタスクID信号206により示すように、どのタスクが現在実行されているかを識別するためにタスクIDがプロセッサによりDSCに提供され得る。あるいは、プロセッサ202は、例えば、バス相互接続を介してタスクIDをDSC220に書き込むことができる。
別の実施例では、単一のウェイクアップ確率マップが、そのマップがウェイクアップ要求を同期してキャプチャする限りにおいて、構築され得る。例えば、トークン期間の最小公倍数が用いられ得る。
SDM及びWDM決定
DSCが、CPUをタイムスロットxでLPMに置き、タイムスロットx+aのためにウェイクアップを設定する場合、期待され得るエネルギー節約は、数式1により得られる。
Figure 0006125539
上式で、ELPMとは、CPUをLPMに置くことによる、1タイムスロットの間のエネルギー節約であり、PKとは、タイムスロットkにおけるウェイクアップ要求の確率である。
トークンを後で使用し得るように、期間の終わりまでにトークンを使い果たさない確率Pは、数式2により得られる。
Figure 0006125539
複数のトークンが利用可能な場合、スリープ時間を最大化しつつ、すべてのトークンを最終的に使いきる、様々な異なるシナリオが可能である。
すべての可能なシナリオ及びこれらのシナリオに関連する確率を考慮すると、CPUが、タイムスロットxでLPMに置かれ、かつウェイクアップタイムスロットがタイムスロットx+aに対して設定されるとき、エネルギー節約の期待値が計算され得る。MinToken[x]及びWakeup_time_slot[w][x]は、エネルギー節約の期待値が最大となるように決定され得る。
統計の更新
SDM及びWDMは、ウェイクアップ確率マップに基づいて計算される。上述のように、ウェイクアップ確率マップは、タスクアクティビティパターンの履歴を表し、そのような履歴パターンはシステムの近い将来の挙動を予測するためにいくぶん有効となり得ることが想定された。システム挙動のダイナミクスに応じて、このような履歴は、長いまたは短い時間期間の間、有効であり得る。
システム挙動の最新の特性を表すために、後続の確率マップならびに結果として生じるSDM及びWDMが継続的に構築され得る。しかし、このような継続的な更新の計算労力は、余分のエネルギーを用いることとなり得、それゆえ、実際の電力節約と、最大化された電力節約に対する試みとの間にトレードオフが存在し得る。
図7は、図2のシステムに含まれ得る性能監視ユニット440のブロック図である。確率マップを更新するために、DCS200の性能がどの程度良好であるかを監視する性能監視ユニット440を有することが望ましいことがある。DSC220の性能が良好でない場合、監視ユニット440は、確率マップならびに結果として生じるSDM及びWDMの構築の反復を引き起こし得る。
性能監視ユニットは、DSCの性能を評価するために、いくつかのパラメータを監視し得る。DSCがCPU202を復帰させる前に、CPU202が割り込みを受け取る平均回数が監視され得る。これは、DSCのウェイクアップメカニズムがどの程度良好に機能しているのかを表す。CPUがLPMで費やす総スリープ時間対CPUの総アイドル時間が監視され得る。これは、DSCのスリープ決定メカニズム及びウェイクアップメカニズムがどの程度良好に機能しているかを表す。
上述のパラメータが警告信号442をアサートすることによる選択された閾値よりも低い場合、性能監視ユニットは、確率マップを反復するようにDSCに警告し得る。
図8は、CPU802を有する、例示的な特定用途向け集積回路のシステムオンチップ(SOC)800を示すブロック図である。本開示の目的のため、いくぶん包括的な用語「マイクロコントローラ」(MCU)が、1つまたは複数の処理モジュール802、メモリ850、周辺機器、及び/またはDMA(ダイレクト・メモリ・アクセス)コントローラ860を含み得る、任意の複合的なデジタルシステム・オン・チップ(SOC)に適用するように用いられ得る。メモリモジュール850の少なくとも一部は、不揮発性とし得、システムアプリケーションを実行するために処理モジュール802により実行される命令プログラムを保持し得る。CPU802は、図示しないが、データキャッシュと命令キャッシュに結合されてもよい。CPU802は、バルクメモリ850へのアクセスのためシステムバス852に結合される。周辺機器860もシステムバス852に結合されて、CPU802によるアクセス及び制御を可能にする。
SOC800のトポロジー及び構成は、一例であることが厳密に意図される。本発明の他の実施例が、メモリモジュールの様々な組み合わせ、周辺機器モジュールの様々な組み合わせ、マルチプロセッサ等を相互接続するためのバスの様々な構成を含んでもよい。CPU802は、現在知られている、または将来開発される、様々なタイプのマイクロプロセッサまたはマイクロコントローラのうちの任意の1つとし得る。例えば、CPU802は、デジタルシグナルプロセッサ、従来型のプロセッサ、または縮小命令セットプロセッサとし得る。本明細書で用いられるように、用語「マイクロプロセッサ」またはCPUは、システムオンチップ内に含まれる任意のプロセッサを指すことが意図されている。
SOC800は、リアルタイムサブシステム(RTS)870に結合される。RTS870は、例えばモータとすることができ、このような場合には、SOC800が、ロータ位置に基づき複数セットのステータ巻線への電圧の印加を制御することによって、モータの速度及び方向を制御する。別の例では、RTS870は、SOC800によってデジタルストリームから変換されたオーディオサウンドまたは音楽を再生するためのスピーカとし得る。本開示の目的のため、RTS870は、ハードリアルタイム制御の何らかの形式を必要とする、現在知られている、または将来開発される、任意のタイプのデバイスまたは構成要素である。
1つまたは複数の周辺デバイス860は、制御信号またはデータ信号をRTS870へ提供し得、RTS870からステータスまたは他の情報を受け取ることができる。例えば、RTS870がモータである場合、周辺デバイス860は、新しいステータ制御の設定のために割り込みを生成するRTS870からのロータ位置データを受け取り得る。SOC800は、例えば自動車用エンジン制御システムの一部とし得、エンジン位置及び速度情報を受け取り、燃料及びスパーク燃焼制御信号を提供し得る。
別の例として、RTS870がスピーカである場合、周辺デバイス860は、アナログサウンド信号をRTS870へ提供し得る。別の周辺モジュールが、オーディオデータのデジタルストリームにアクセスすることができ、オーディオデータの新たなフレームが利用可能であるときに割り込みを生成し得る。SOC800は、モバイルハンドセットの一部とし得、例えば、セルラーフォンネットワークを介して音声及び音楽デジタル信号を受け取ることができる。
DSC820は、より詳細に上述したように、各CPU802へのクロック及び電圧レベル830を制御するように動作し得る。一実施例では、DSC820による動的電力管理を備える、16個のCPU802があり得る。この例では、DSC820は、バス852を介するトランザクションを介して、様々なCPU802からアイドル指示を受け取る。同様に、DSC820は、バス852を介するトランザクションを介して、プリエンプティブウェイクアップ割り込みを様々なCPU802に送る。DSC820は、ハードワイヤードロジック、ソフトウェア制御マイクロコントローラ、ステートマシン、または、より詳細に上述したような動的電力管理機能を実行する、その他のタイプの論理として実装され得る。
上記で詳細に述べたように、様々なCPU802の各々のためのDSC820の性能を監視するために、性能監視ユニット840がDSC820に結合されてもよい。
図9は、コンピュータシステムにおけるプロセッサによる電力消費を著しく削減するための動的電力管理の動作を示すフローチャートである。トークンの時間期間にタスクを実行する場合に、トークンの時間期間の間に低電力モードへ移行された後、プロセッサが招き得るスタートアップ遅延の最大回数が決定される(902)。これは概して、デッドライン時間前にタスクのスラック時間を決定することによって、また、選択された低電力モードのレベルに基づいて招かれ得るウェイクアップ待ち時間を決定することによって、システムが設計及び構成される一方でなされる。いくつかの実施例では、選択され得る低電力モードを1タイプよりも多くし得る。
タスクのためにプロセッサがスタートアップ遅延を招き得る決定された最大回数に従い、トークンカウントがタスクに割り当てられる(904)。これは、タスクについてのスラック時間をウェイクアップ待ち時間で除算することによってなされる。前述のように、スタートアップ遅延時間は、低電力モードのどのレベルにプロセッサが置かれるかに応じて変化し得る。
タスクはアイドルポイントに到達するまで実行される(906)。このポイントで、プロセッサはアイドル信号をアサートして、有用な処理が停止したことを知らせる。上述のように、これは、タスクの一部である、または、タスクのスケジューリングを制御するオペレーティングシステムの一部であるアイドル命令を実行することに応答し得る。
タスクに割り当てられたトークンカウントの現在値がゼロよりも大きい場合にのみ(908)、プロセッサは、アイドルインジケータに応答してタスクを実行する一方で、低電力モードに置かれる(910)。実際の閾値数はゼロとは異なっていてもよく、ヒストグラムによりキャプチャされる(930)プロセッサのアクティビティパターンに依存し得る。閾値はまた、アイドルポイントが検出された現在のタイムスロット値にも依存していてもよい。図4は、このような閾値ポリシーの一例であり、ここでは、タイムスロットxの各Min_token[x]は、ヒストグラムに基づいて決定される。
プロセッサを低電力モードから復帰させることにより(916)、タスクの実行は再開される。これは、概して、例えば、システム内のデバイスまたは周辺機器による、またはカウンタまたはタイマーによる機能割り込みの結果として生じる。
プロセッサが、低電力モードから復帰されることに応答してスタートアップ遅延を招く度、タスクのトークンカウントの現在値はデクリメントされる(918)。
現在のトークンカウントは、各トークン期間の終わりに、割り当てられたトークンカウントに一致させるようにリセットされる(924)。
プロセッサが復帰されそうな時間は予測可能であり得(912)、プロセッサは、この予測された時間より前に動的スリープコントローラによってプリエンプティブに復帰され得(914)、そのためスタートアップ遅延は招かれない。この場合、プロセッサが処理を開始する際にスタートアップ遅延が起こらないときには、トークンカウンタの現在値は維持される(915)。プロセッサが復帰されそうであっても、プロセッサが復帰されない低い確率から予期されるエネルギー節約が、トークンを用いるために値するようであれば、動的スリープコントローラは、プロセッサをプリエンプティブに復帰しないと決定し得る。
ウェイクアップ割り込み信号がアサートされ(916)、プロセッサが低電力モードにあるときにはプロセッサを低電力モードから復帰させ、プロセッサが低電力モードに移行しなかったときにはタスク実行を再スタートさせる(920)。
トークン期間中のウェイクアップ割り込み発生のヒストグラムが、複数のタイムスロットに対して作成される場合がある(930)。ヒストグラムの各反復が、例えば、監視ユニット440からの性能警告に応答してなされ得る。低電力モードにおける総スリープ時間対時間期間の間のプロセッサの総アイドル時間のスリープ比が監視ユニット440により決定され得、スリープ比がスリープ比閾値よりも低いときヒストグラムはリセットされ得る。監視ユニットは、時間期間の間にプロセッサをプリエンプティブに復帰させる前に、何回ウェイクアップ割り込みが受け取られたかのウェイクアップ比を決定することができ、これは予測失敗として参照され、そして、ウェイクアップ比がウェイクアップ比閾値よりも大きいときヒストグラムをリセットする。監視ユニットが予測失敗をカウントするとき、トークンを節約するに値しないという理由で動的スリープコントローラがプロセッサを意図的に復帰させなかった状況(912)を、監視ユニットは無視し得る。
あるいは、ヒストグラムは、例えば、システム設計の間に決定される周期的レートでリセットされてもよい。典型的に、ヒストグラムは、動的スリープコントローラによって生成されるプリエンプティブウェイクアップ要求を除外する。
プロセッサが復帰される可能性があるとき(912)、閾値を上回るヒストグラム値を有するタイムスロットが予測時間として選択され得る。
ヒストグラムを作成した後(930)、DSCは、後に用いるためにトークンを節約することによって達成され得る潜在的なエネルギー節約を、ヒストグラムの各タイムスロットに対して決定し得る。プロセッサが低電力モードにある一方で、タイムスロットがプリエンプティブウェイクアップタイムスロットとして選択され得(912)、タイムスロットの間にウェイクアップ割り込みによってプロセッサが復帰され得る可能性があることをヒストグラムが示す場合、また、後で用いるためにトークンを節約することによって達成され得る潜在的なエネルギー節約が、タイムスロットでスリープ状態であり続けることにより達成され得るエネルギー節約よりも高い場合、動的スリープコントローラによってプリエンプティブウェイクアップ要求がアサートされる(914)。このことは、例えば、SDM400及びWDM500を用いることにより、式1及び式2に関してより詳細に述べている。
その他の実施形態
例示的な実施例を参照して本発明を説明してきたが、この説明は限定的な意味に解釈されることを意図していない。本発明の様々な他の実施例が、この説明を参照して当業者に明らかとなろう。例えば、単一のDSCが、シングルプロセッサまたはシステムオンチップ内のマルチプロセッサコア用に、動的電力制御を提供してもよい。
本明細書で説明された動的スリープ管理の実施例及び方法は、任意のいくつかのタイプのデジタルシステムに提供され得る。例えば、デジタルシグナルプロセッサ(DSP)、汎用プログラマブルプロセッサ、特定用途向け回路、または、DSPと、様々な特殊なアクセラレータを有する縮小命令セット(RISC)プロセッサとの組み合わせなどのシステムオンチップ(SoC)である。ボード上のまたは外部の(フラッシュEEP)ROMまたはFRAMに記憶されたプログラムが、動的電力管理の態様を実装するために用られ得る。
本開示で説明した技術は、ハードウェア、ソフトウェア、ファームウェア、またはそれらの任意の組み合わせにおいて実装され得る。ソフトウェアで実装する場合、ソフトウェアは、マイクロプロセッサ、特定用途向け集積回路(ASIC)、フィールド・プログラマブル・ゲート・アレイ(FRGA)、またはデジタルシグナルプロセッサ(DSP)などの1つまたは複数のプロセッサにおいて実行され得る。技術を実行するソフトウェアは、コンパクトディスク(CD)、ディスケット、テープ、ファイル、メモリ、またはその他のコンピュータ読出し可能な記憶デバイスなどの、コンピュータ可読媒体に初めに記憶され得、プロセッサ内でロードされ実行され得る。或る場合には、ソフトウェアは、コンピュータプログラム製品の状態で販売され得、それにはコンピュータ可読媒体と、コンピュータ可読媒体用の包装材料が含まれる。或る場合には、ソフトウェア命令は、コンピュータ可読媒体(例えば、フロッピーディスク、光ディスク、フラッシュメモリ、USBキー)や、別のデジタルシステムのコンピュータ可読媒体等の伝送経路を介して分配され得る。
特許請求の範囲内で、説明された実施形態に対する改変が可能であり、また、多くの他の実施形態が可能であることを、本技術分野に関する当業者は理解するであろう。

Claims (3)

  1. メモリに結合され、当該メモリに格納されたソフトウェアタスクを実行するように構成されるプロセッサと、
    前記プロセッサに結合された割り込みコントローラであって、当該割り込みコントローラがウェイクアップ要求信号を電力コントローラに提供するように構成され、前記電力コントローラが前記プロセッサを低電力モードに置くように構成される、前記割り込みコントローラと、
    前記プロセッサからアイドル信号を受け取るように結合された動的スリープコントローラと、
    を含み、
    前記動的スリープコントローラが、
    タスクに割り当てられたトークンカウントの現在値がゼロより大きい場合にのみ、アイドルインジケータに応答して前記プロセッサを低電力モードに置くように前記電力コントローラに信号を送るように、
    前記プロセッサが前記低電力モードから復帰されることに応答してスタートアップ遅延を招く度に、前記タスクのトークンカウントの現在値をデクリメントするように、
    各トークン期間の最後に前記割り当てられたトークンカウントに一致させるために前記トークンカウントをリセットするように、
    複数のタイムスロット対して、前記トークン期間の間のウェイクアップ割り込み発生のヒストグラムを作成するように、
    後に用いるためにトークンを節約することにより達成され得る潜在的なエネルギー節約を前記ヒストグラムの各タイムスロットに対して決定するように、
    構成され、
    前記トークンカウントが、トークン時間期間にタスクを実行するときに前記プロセッサが前記トークン時間期間中に低電力モードに置かれた後にスタートアップ遅延を招き得る最大回数を示し、
    前記プロセッサが低電力モードにある一方で、前記プロセッサがタイムスロットの間にウェイクアップ割り込みにより復帰されることがあり得ることを前記ヒストグラムが示す場合と、後に用いるためにトークンを節約することにより達成され得る潜在的なエネルギー節約が、前記タイムスロットでスリープを継続することにより達成され得るエネルギー節約より高いことが推定される場合に、前記タイムスロットがプリエンプティブウェイクアップタイムスロットとして選択され、プリエンプティブウェイクアップ要求が動的スリープコントローラによってアサートされる、
    コンピュータシステム。
  2. 請求項に記載のシステムであって、
    前記動的スリープコントローラが、前記ヒストグラムを作成する一方で、前記動的スリープコントローラによって生成されるプリエンプティブウェイクアップ要求を除外するように更に構成される、システム。
  3. 請求項に記載のシステムであって、
    前記動的スリープコントローラが、
    時間期間の間の前記プロセッサの総アイドル時間に対する前記低電力モードにおける総スリープ時間のスリープ比を決定するように、
    当該スリープ比がスリープ比閾値より低いときに前記ヒストグラムをリセットするように、
    更に構成される、システム。
JP2014555788A 2012-02-01 2013-02-01 リアルタイムシステムにおける動的電力管理 Active JP6125539B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/363,949 2012-02-01
US13/363,949 US8775838B2 (en) 2012-02-01 2012-02-01 Limiting the number of unexpected wakeups in a computer system implementing a power-saving preemptive wakeup method from historical data
PCT/US2013/024474 WO2013116751A1 (en) 2012-02-01 2013-02-01 Dynamic power management in real-time systems

Publications (3)

Publication Number Publication Date
JP2015513336A JP2015513336A (ja) 2015-05-07
JP2015513336A5 JP2015513336A5 (ja) 2016-03-17
JP6125539B2 true JP6125539B2 (ja) 2017-05-10

Family

ID=48871380

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014555788A Active JP6125539B2 (ja) 2012-02-01 2013-02-01 リアルタイムシステムにおける動的電力管理

Country Status (4)

Country Link
US (1) US8775838B2 (ja)
JP (1) JP6125539B2 (ja)
CN (1) CN104094191B (ja)
WO (1) WO2013116751A1 (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8812761B2 (en) * 2011-10-28 2014-08-19 Apple Inc. System and method for adjusting power usage to reduce interrupt latency
US9104423B2 (en) * 2012-05-16 2015-08-11 Nvidia Corporation Method and system for advance wakeup from low-power sleep states
US9015510B2 (en) * 2012-06-29 2015-04-21 Intel Corporation Optimizing energy efficiency using device idle duration information and latency tolerance based on a pre-wake configuration of a platform associated to the device
US9395799B2 (en) 2012-08-09 2016-07-19 Nvidia Corporation Power management techniques for USB interfaces
US9760150B2 (en) 2012-11-27 2017-09-12 Nvidia Corporation Low-power states for a computer system with integrated baseband
CN103857019B (zh) 2012-11-30 2018-01-02 辉达公司 一种在移动终端中用于省电的方法
US9213390B2 (en) * 2012-12-28 2015-12-15 Intel Corporation Periodic activity alignment
JP6175980B2 (ja) * 2013-08-23 2017-08-09 富士通株式会社 Cpuの制御方法、制御プログラム、情報処理装置
US9459683B2 (en) * 2013-09-27 2016-10-04 Intel Corporation Techniques for entering a low power state
CN103577736B (zh) * 2013-11-07 2017-02-15 上海动联信息技术股份有限公司 一种低功耗的动态令牌以及动态口令生成方法
US9510283B2 (en) * 2014-01-24 2016-11-29 Starkey Laboratories, Inc. Systems and methods for managing power consumption in a wireless network
US20150355942A1 (en) * 2014-06-04 2015-12-10 Texas Instruments Incorporated Energy-efficient real-time task scheduler
US20160187958A1 (en) * 2014-12-24 2016-06-30 Intel Corporation Techniques for managing power and performance for a networking device
US10261569B2 (en) * 2015-05-01 2019-04-16 Qualcomm Incorporated Universal serial bus (USB) host and client devices for supporting scheduled low-power operations
US9465664B1 (en) 2015-09-09 2016-10-11 Honeywell International Inc. Systems and methods for allocation of environmentally regulated slack
US10379560B2 (en) * 2015-10-05 2019-08-13 Savant Systems, Llc Home automation system device power optimization
US20170168853A1 (en) * 2015-12-14 2017-06-15 Qualcomm Incorporated Dynamic predictive wake-up techniques
US20170177068A1 (en) * 2015-12-17 2017-06-22 Intel Corporation Systems, methods and devices for standby power savings
CN106055079B (zh) * 2016-05-31 2017-11-24 广东欧珀移动通信有限公司 一种中央处理器的管理方法、及装置
CN107515662B (zh) * 2016-06-15 2020-05-15 深圳市博巨兴微电子科技有限公司 一种面向键控类应用的mcu芯片中低功耗管理方法
US10275008B2 (en) * 2016-09-22 2019-04-30 Intel Corporation Methods and apparatus to reduce computing device power consumption
US10462059B2 (en) 2016-10-19 2019-10-29 Intel Corporation Hash table entries insertion method and apparatus using virtual buckets
CN106534175B (zh) * 2016-12-07 2019-06-21 西安电子科技大学 基于OAuth协议的开放平台授权认证系统及方法
CN108475096A (zh) * 2016-12-23 2018-08-31 北京金山安全软件有限公司 信息显示方法、装置及终端设备
KR102576707B1 (ko) * 2016-12-26 2023-09-08 삼성전자주식회사 전자 시스템 및 그 동작 방법
CN106708246A (zh) * 2017-01-18 2017-05-24 深圳市博巨兴实业发展有限公司 一种基于dsp的soc低功耗控制方案
US10423209B2 (en) 2017-02-13 2019-09-24 Apple Inc. Systems and methods for coherent power management
US10747298B2 (en) * 2017-11-29 2020-08-18 Advanced Micro Devices, Inc. Dynamic interrupt rate control in computing system
CN107943746A (zh) * 2017-12-08 2018-04-20 建荣半导体(深圳)有限公司 可编辑的电源管理方法、电源管理模块及片上系统
KR102453689B1 (ko) * 2017-12-13 2022-10-11 삼성전자주식회사 주기적 프로세스 처리 시스템 및 시스템 온 칩
US10613619B2 (en) * 2017-12-15 2020-04-07 Google Llc Ultra-low power mode for a low-cost force-sensing device
JP6793316B2 (ja) * 2018-03-30 2020-12-02 パナソニックIpマネジメント株式会社 電子機器、制御方法、及び、プログラム
US11201739B2 (en) * 2019-05-02 2021-12-14 Shopify Inc. Systems and methods for tying token validity to a task executed in a computing system
US11567527B2 (en) * 2019-07-23 2023-01-31 Texas Instruments Incorporated Preemptive wakeup circuit for wakeup from low power modes
CN110912794B (zh) * 2019-11-15 2021-07-16 国网安徽省电力有限公司安庆供电公司 基于令牌集的近似匹配策略
WO2024013831A1 (ja) * 2022-07-11 2024-01-18 日本電信電話株式会社 タスクスケジューラ装置、計算システム、タスクスケジューリング方法およびプログラム
CN117632521B (zh) * 2024-01-26 2024-05-03 中电云计算技术有限公司 后台任务的cpu利用率控制方法、装置、设备及存储介质

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5218704A (en) * 1989-10-30 1993-06-08 Texas Instruments Real-time power conservation for portable computers
KR0174356B1 (ko) 1996-03-13 1999-04-01 이정식 퍼스널컴퓨터의 전력제어방법 및 그 장치
US6085325A (en) 1996-12-16 2000-07-04 Intel Corporation Method and apparatus for supporting power conservation operation modes
JP2004528613A (ja) * 2000-09-26 2004-09-16 サン・マイクロシステムズ・インコーポレイテッド 電力消費を減らす方法および装置
US6748546B1 (en) * 2000-09-26 2004-06-08 Sun Microsystems, Inc. Method and apparatus for reducing power consumption
JP4095501B2 (ja) 2003-06-25 2008-06-04 インターナショナル・ビジネス・マシーンズ・コーポレーション コンピュータ装置、無線アクセスポイント、無線ネットワークを介した電源投入方法、フレーム聴取方法、フレーム送信方法、およびプログラム
KR100932920B1 (ko) 2007-12-17 2009-12-21 한국전자통신연구원 센서노드의 웨이크업 장치 및 방법
US7962314B2 (en) * 2007-12-18 2011-06-14 Global Foundries Inc. Mechanism for profiling program software running on a processor
US7949889B2 (en) * 2008-01-07 2011-05-24 Apple Inc. Forced idle of a data processing system
US8468377B2 (en) * 2008-10-22 2013-06-18 Microsoft Corporation Conserving power using predictive modelling and signaling
JP2010267561A (ja) * 2009-05-18 2010-11-25 Panasonic Corp 熱電併給装置とその制御方法
US20100332877A1 (en) 2009-06-30 2010-12-30 Yarch Mark A Method and apparatus for reducing power consumption
US8504855B2 (en) * 2010-01-11 2013-08-06 Qualcomm Incorporated Domain specific language, compiler and JIT for dynamic power management
US9235251B2 (en) * 2010-01-11 2016-01-12 Qualcomm Incorporated Dynamic low power mode implementation for computing devices
US20110252252A1 (en) * 2010-04-12 2011-10-13 Xerox Corporation System and method for identifying and reducing power consumption based on an inactivity period
US8612786B1 (en) * 2010-09-24 2013-12-17 Amazon Technologies, Inc. Deep idle mode

Also Published As

Publication number Publication date
CN104094191B (zh) 2017-06-23
US8775838B2 (en) 2014-07-08
CN104094191A (zh) 2014-10-08
US20130198540A1 (en) 2013-08-01
WO2013116751A1 (en) 2013-08-08
JP2015513336A (ja) 2015-05-07

Similar Documents

Publication Publication Date Title
JP6125539B2 (ja) リアルタイムシステムにおける動的電力管理
US9921635B2 (en) Dynamic and adaptive sleep state management
CN105183128B (zh) 强制处理器进入低功率状态
US8286014B2 (en) Power management for a system on a chip (SoC)
US9176572B2 (en) System and method for controlling central processing unit power with guaranteed transient deadlines
KR101597167B1 (ko) 전력 소비를 감소시키기 위한 우선순위 기반 애플리케이션 이벤트 제어(paec)
EP3320438B1 (en) High availability and energy-efficient watchdog timer
JPWO2005106623A1 (ja) Cpuクロック制御装置、cpuクロック制御方法、cpuクロック制御プログラム、記録媒体、及び伝送媒体
EP2954385A1 (en) System and method for controlling central processing unit power with guaranteed transient deadlines
WO2012113232A1 (zh) 调整时钟中断周期的方法和装置
TWI502332B (zh) 電源管理方法及應用該方法之電子系統
US20230113657A1 (en) Preemptive wakeup circuit for wakeup from low power modes
WO2017176383A1 (en) Enhanced dynamic clock and voltage scaling (dcvs) scheme
US20150286271A1 (en) System and method for predicting a central processing unit idle pattern for power saving in a modem system on chip
US8892923B2 (en) Data processing apparatus and method for maintaining a time count value in normal and power saving modes of operation
US9075609B2 (en) Power controller, processor and method of power management
US9448617B2 (en) Systems and methods for messaging-based fine granularity system-on-a-chip power gating
US11256321B2 (en) Network-driven, packet context-aware power management for client-server architecture
JP2024512468A (ja) アイドル持続期間履歴に基づく低電力状態選択
US20140007135A1 (en) Multi-core system, scheduling method, and computer product
US20140089694A1 (en) Dynamically controlling power based on work-loop performance
JP7408650B2 (ja) ダイナミックランダムアクセスメモリランクのパワーダウンモードの投機的な終了
Niu et al. Leakage-aware scheduling for embedded real-time systems with (m, k)-constraints
US20160306406A1 (en) Performance State Selection for Low Activity Scenarios
CN117492848A (zh) 一种处理器状态的切换方法、装置、设备及介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160914

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161004

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20161228

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20170303

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170324

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170405

R150 Certificate of patent or registration of utility model

Ref document number: 6125539

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250