JP2021193544A - 高速で動的なキャパシタンス、周波数、及び/又は電圧スロットリング装置及び方法 - Google Patents

高速で動的なキャパシタンス、周波数、及び/又は電圧スロットリング装置及び方法 Download PDF

Info

Publication number
JP2021193544A
JP2021193544A JP2020204107A JP2020204107A JP2021193544A JP 2021193544 A JP2021193544 A JP 2021193544A JP 2020204107 A JP2020204107 A JP 2020204107A JP 2020204107 A JP2020204107 A JP 2020204107A JP 2021193544 A JP2021193544 A JP 2021193544A
Authority
JP
Japan
Prior art keywords
processor
power
throttle
voltage
processor cores
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
JP2020204107A
Other languages
English (en)
Inventor
ジェンドラー アレクサンダー
Gendler Alexander
エンジェル ニムロド
angel Nimrod
アンバーデカール アメヤ
Ambardekar Ameya
ウィジェラトネ サプマル
Wijeratne Sapumal
ヴィジ ヴィカス
Vij Vikas
シフ トド
Schiff Tod
ウアン‐ゾ‐リ アレクサンダー
Uan-Zo-Li Alexander
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.)
Intel Corp
Original Assignee
Intel 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 Intel Corp filed Critical Intel Corp
Publication of JP2021193544A publication Critical patent/JP2021193544A/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/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3212Monitoring battery levels, e.g. power saving mode being initiated when battery voltage goes below a certain level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • G06F11/3062Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations where the monitored property is the power consumption
    • 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
    • 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
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • G06F9/30101Special purpose registers
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • 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)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Power Sources (AREA)
  • Executing Machine-Instructions (AREA)
  • Microcomputers (AREA)

Abstract

【課題】動的スロットリングを提供するシステム、装置及びプロセッサを提供する。【解決手段】プロセッサによる方法は、バッテリーの電力レベル(電荷、電圧及び/又は電流)が閾値を下回るかを指し示すために、プロセッサ又はシステム・オン・チップの専用ピンを使用する。閾値は所定又はプログラム可能である。バッテリーは、プロセッサ及び/又はSoCに電力を供給するために使用する。プロセッサは、バッテリーの電力レベルが閾値を下回るとの判定を受けて、低性能又は低電力モードに入る従来プロセスをバイパスして、プロセッサの電圧及び/又は動作周波数を直接スロットルし、プロセッサが低バッテリー電力で動作し続けることを可能にする。専用ピン上の電圧の論理レベルに従ったアクティブ状態から低性能又は低電力モードへの高速遷移は、デカップリングキャパシタ設計要求を下げ、より高いパッケージ電力制御設定にプロセッサを適応させる。【選択図】図3

Description

バッテリーからの最大電流出力は、プロセッサの最大高周波数(maximum high frequency)動作を制限する。例えば、マルチコアプロセッサでは、最大高周波数によってターボモード周波数が制限される。バッテリーから、プロセッサへの、又はプロセッサを含むシステムへの、電圧レベル又は電流送達が閾値を下回るとき、プロセッサ又はシステムは、オペレーティングシステムと協調して、低電力モードに移行することを決定することができ、そうして、プロセッサ又はシステムは、低下した性能レベルで動作し続けることができる。しかしながら、このような低電力モードへの移行は時間がかかる。例えば、プロセッサは、動作周波数を最小周波数まで低下させるのに300μs以上を要することがある。このような遅延は、ユーザ体験に負の影響を及ぼし得る。また、低電力モードに入るための応答時間は、プラットフォームの(1つ以上の)電源レール上の(1つ以上の)デカップリングキャパシタのサイズを決定し得る。(1つ以上の)デカップリングキャパシタは、バッテリーが要求電力をもはや供給できなくなったときに、(1つ以上の)電源レール上の電圧を維持する。低電力モードに入る応答時間が大きいことは、電圧を維持してシステム時間が低電力モードに入ることを可能にするために、(1つ以上の)デカップリングキャパシタがサイズ的に大きくあるべきであることを意味する。大きい(1つ以上の)デカップリングキャパシタは、システムの部品表(bill-of-material;BoM)を増加させ得る。
開示の実施形態は、以下に与えられる詳細な説明から、及び開示の様々な実施形態の添付図面から、より十分に理解されることになるが、それらは、開示を特定の実施形態に限定するように解釈されるべきではなく、単に説明及び理解のためのものである。
一部の実施形態に従った、動的なキャパシタンス、周波数、及び/又は電圧スロットリングによる高速低電力モードのための装置を例示している。 一部の実施形態に従った、動的なキャパシタンス、周波数、及び/又は電圧スロットリングによる高速低電力モードのための、ドループ検出器を有する装置を例示している。 一部の実施形態に従った、高速低電力モードを可能にする制御レジスタを例示している。 一部の実施形態に従った、スロットル状態に関するルックアップテーブルを例示している。 一部の実施形態に従った、高速低電力モードに関するフローチャートを例示している。 一部の実施形態に従った、高速低電力モードに関するプラットフォームレベルでのフローチャートを例示している。 様々な実施形態に従った、動的なキャパシタンス、周波数、及び/又は電圧スロットリングによる高速低電力モードのための装置を有するスマート機器又はコンピュータシステム又はSoC(システム・オン・チップ)を例示している。
様々な実施形態は、高速で動的なキャパシタンス、周波数、及び/又は電圧スロットリングのための装置及び方法を記述する。一部の実施形態において、バッテリーの電力レベル(例えば、電荷、電圧及び/又は電流)が閾値を下回るかを指し示すために、プロセッサ又はシステム・オン・チップ(SoC)の専用ピンを使用する。閾値は所定又はプログラム可能とし得る。バッテリーは、プロセッサ及び/又はSoCに電力を供給するために使用される。バッテリーの電力レベルが閾値を下回るとの判定を受けて、プロセッサは、低性能又は低電力モードに入る従来プロセスをバイパスして、プロセッサの電圧及び/又は動作周波数を直接スロットルする。これは、プロセッサが低バッテリー電力で動作し続けることを可能にする。専用ピン上の電圧の論理レベルに従ったアクティブ状態から低性能又は低電力モードへの高速遷移(例えば、約10μs)は、デカップリングキャパシタ設計要求を下げ、より高いパッケージ電力制御設定(例えば、PL4)にプロセッサが適応することを可能にする。パッケージ電力制御設定の他の例は、PL1、PL2、PL4、及びTauである。一部の実施形態において、電圧及び/又は動作周波数の高速スロットリングの機能をイネーブル又はディセーブルするために、レジスタが設けられる。
ここでは、電力制限1(power limit 1;PL1)は、熱対策の冷却限界を超えるべきでない平均電力に対する閾値を指す。PL1は一般にTDP電力に等しく設定される。PL1は、熱対策の冷却限界より高く設定されるべきでない。
ここでは、電力制限2(PL2)は、もし超えると、PL2高速電力制限アルゴリズムが、PL2より上のスパイクを制限しようとすることになる、という電力閾値を指す。
ここでは、電力制限3(PL3)は、もし超えると、PL3高速電力制限アルゴリズムが、反動的に周波数を制限することによって、PL3より上のスパイクのデューティサイクルを制限しようとすることになる、という電力閾値を指す。
ここでは、電力制限4(PL4)は、超えることがない電力上限を指す。PL4電力制限アルゴリズムが、PL4より上のスパイクを防止するように、先制的に周波数を制限することになる。
ここでは、ターボ時間パラメータ(Tau)は、PL1指数重み付け移動平均(exponential weighted moving average;EWMA)電力計算に使用される平均定数を指す。
様々な実施形態の数多くの技術的効果が存在する。例えば、様々な実施形態は、プラットフォーム電力イベント(例えば、バッテリーレベルが閾値を下回ること)に対する高速又は迅速な応答のためのメカニズムを提供する。該応答は、プロセッサの電圧及び/又は動作周波数をスロットルする(絞る)形態をとる。該メカニズムは、プロセッサ又はSoCの最小電流仕様(Icc Min)を低下させることを可能にする。例えば、Icc Minは、元のIcc Minと比較して1/2に減少することができる。該メカニズムはまた、さもなければ典型的にディセーブルされるものである例えばPL3及びPL4などの、いっそう高いパッケージ制御設定の適応を可能にする。プロセッサの電圧及び/又は動作周波数をスロットルすることをもたらすこの高速な応答は、デカップリングキャパシタのサイズを小さくすることを可能にし、それ故に、プラットフォームのコストを低減させる。様々な実施形態及び図から、他の技術的効果が明らかになる。
以下の説明では、本開示の実施形態のより完全なる説明を提供するために、多数の詳細事項を説明する。しかしながら、当業者に明らかになることには、本開示の実施形態は、これらの特定の詳細事項なしで実施されることができる。また、本開示の実施形態を不明瞭にしてしまうことを回避するために、周知の構造及びデバイスは、詳細にではなくブロック図の形態で示す。
なお、実施形態の対応する図面では、信号を線で表されている。一部の線は、より構成要素である信号経路を指し示すために太めにされることがあり、且つ/或いは情報の主な流れ方向を指し示すために一端又は両端に矢印を有することがある。このようなインジケーションは、限定することを意図したものではない。むしろ、それらの線は、1つ以上の例示的な実施形態に関連して、回路又は論理ユニットの容易な理解を支援するために使用される。表される信号は、設計のニーズ又は嗜好によって決められ、実際には、何れかの方向に進行し得る1つ以上の信号を有し得るとともに、任意の好適タイプの信号スキームで実装され得る。
明細書全体を通して、及び特許請求の範囲において、用語“接続され”は、中間デバイスなしでの、接続された物の間の例えば電気的、機械的又は磁気的な接続などの直接的な接続を意味する。
用語“結合され”は、例えば、接続された物の間の例えば直接的な電気的、機械的、若しくは磁気的な接続、又は1つ以上の受動的若しくは能動的な中間デバイスを介した間接的な接続などの、直接的又は間接的な接続を意味する。
用語“隣接した”は、ここでは概して、ある物が他の物に隣にある(例えば、すぐ隣、又はそれらの間に1つ以上の物を置いて近接)又は境を接している(例えば、くっついている)位置を指す。
用語“回路”又は“モジュール”は、所望の機能を提供するよう互いに協働するように構成された1つ以上の受動及び/又は能動コンポーネントを指し得る。
用語“信号”は、少なくとも1つの電流信号、電圧信号、磁気信号、又はデータ/クロック信号を指し得る。“a”、“an”、“the”の意味は複数参照を含む。“in”の意味は“in”及び“on”を含む。
用語“アナログ信号”は、ここでは概して、信号の時間変化する特徴(変数)が、何らかの他の時間変化する量を表すものである、すなわち、別の時変信号と類似である連続的な信号を指す。
用語“デジタル信号”は、例えば、任意のビットストリーム、又はデジタル化された(サンプリングされてアナログ−デジタル変換された)アナログ信号といった、一連の離散値(数量化された離散時間信号)、を表すものである物理信号である。
用語“スケーリング”は概して、設計(回路図及びレイアウト)をあるプロセス技術から別のプロセス技術へと変換することを指し、後にレイアウト面積において縮小され得る。一部のケースにおいて、スケーリングはまた、設計をあるプロセス技術から別のプロセス技術へと大型化し、後にレイアウト面積において拡大され得る。用語“スケーリング”は概して、同じテクノロジーノードの中でレイアウト及びデバイスを小型化又は大型化することも指す。用語“スケーリング”はまた、例えば電源レベルといった別のパラメータに対して相対的に信号周波数の調整(例えば、低速化又は高速化、すなわち、それぞれ、スケールダウン又はスケールアップ)することを指し得る。用語“実質的に”、“近い”、“近似的に”、“ほぼ”、及び“約”は概して、目標値の±10%以内であることを指す。
別段の断りがない限り、共通のオブジェクトを記述するための序数形容詞“第1の”、“第2の”、“第3の”などの使用は、単に、同様のオブジェクトの異なるインスタンスが参照されていることを示すものであり、そのように記述されるオブジェクトが、時間的に、空間的に、ランク付けにおいて、又は何らかの他のやり方で、所与のシーケンスになければならないことを意味する意図はない。
本開示の目的で、“A及び/又はB”及び“A又はB”という言い回しは、(A)、(B)、又は(A及びB)を意味する。本開示の目的で、“A、B、及び/又はC”という言い回しは、(A)、(B)、(C)、(A及びB)、(A及びC)、(B及びC)、又は(A、B及びC)を意味する。
明細書及び特許請求の範囲において、存在する場合に、用語“左”、“右”、“前”、“後”、“頂部”、“底部”、“上”、“下”、及びこれらに類するものは、説明の目的で使用されており、必ずしも恒久的な相対位置を記載するために使用されているわけではない。
指摘しておくことには、他の図の要素と同じ参照符号(又は名称)を持つ図の要素は、記載されたものと同様にして動作又は機能することができるが、そのように限定されるものではない。
実施形態の目的で、ここに記載される様々な回路及び論理ブロック内のトランジスタは、金属酸化膜半導体(MOS)トランジスタ又はそれらの派生物であり、MOSトランジスタは、ドレイン、ソース、ゲート、及びバルク端子を含む。トランジスタ及び/又はMOSトランジスタ派生物はまた、トライゲート及びFinFETトランジスタ、ゲートオールアラウンド円筒型トランジスタ、トンネリングFET(TFET)、スクエアワイヤ、又は矩形リボン型トランジスタ、強誘電体FET(FeFET)、又はカーボンナノチューブ若しくはスピントロニックデバイスのようなトランジスタ機能を実現する他のデバイスを含む。MOSFETの対称的なソース及びドレイン端子は、言い換えれば、相等しい端子であり、ここでは交換可能に使用される。一方、TFETデバイスは、非対称のソース及びドレイン端子を有する。当業者が理解することには、開示の範囲から逸脱することなく、例えばバイポーラ接合トランジスタ(BJT PNP/NPN)、BiCMOS、CMOSなどといった他のトランジスタも使用され得る。
図1Aは、一部の実施形態に従った、動的なキャパシタンス、周波数、及び/又は電圧スロットリングによる高速低電力モードのための装置100を例示している。装置100は、供給源102(例えば、バッテリー又は充電器102)によって電力供給されるプロセッサ又はシステム・オン・チップ(SoC)101を有するプラットフォームの簡略化された表現である。様々な実施形態において、SoC101は、バッテリー102の状態に関する情報を提供する専用ピンLPMpin(低電力モードピン)を有する。一部の実施形態において、LPMpinはプロセッサのPROCHOT#ピンである。
フューエルゲージ103又は任意の好適なロジック若しくはチップが、バッテリー102からプロセッサ101への電圧及び/又は電流(又は電荷)供給をモニタする。例えば、フューエルゲージ103内の比較器が、バッテリー102の充電レベルを閾値と比較し、LPMpinによって受け取られる出力を提供する。閾値は、ソフトウェア(例えば、ファームウェア)又はハードウェア(例えば、ヒューズ、レジスタなど)によってプログラム可能であるとし得る。一部の実施形態において、閾値は、バッテリー容量の20%に設定される。しかしながら、他の閾値を使用することができる。バッテリー102の閾値レベルに達すると、フューエルゲージ103又は好適な適切なロジック若しくはチップが、高速スロットリングフローを開始するようにLPMpinをアサートする。
SoC101は、LPMpin上の信号を受信し、それを、プロセッサ101の電力を管理する電力制御ユニット101aに送る。PCU101aは、図5を参照して説明されるように、プロセッサ101の電力状態、VR101bからの電圧レベル、PLL101cからのクロック周波数、及びプロセッサコア101eの他の様相を管理する。図1Aを参照し戻すに、高速スロットリングがイネーブルされるかに応じて、PCU101aは低電力モードフローを実行する。高速スロットリング又は高速低電力モードがディセーブルされる場合、PCU101aは、伝統的な動的電圧・周波数(dynamic voltage and frequency;DVFS)フローを実行する。DVFSフローは、様々な実施形態の高速スロットリングフローと比較して、低電力状態に入るのにより長い時間を要するものである。
ここで、スロットリングは、プロセッサ101の電力消費を低減するために、1つ以上の性能パラメータを調節することを指す。それら1つ以上の性能パラメータは、電圧、周波数、及び/又はキャパシタンスなどを含む。例えば、プロセッサ101をスロットルすることは、VR101bへの入力供給Vinを下げること、クロック周波数を低下させるようにPLL101cの分周比を変化させること、クロック周波数における急速な減少のためのクロックスカッシュ、電力ゲーティング、高活動信号ルート上のキャパシタンスを減少させることなどを含み得る。
LPMpinがアサートされて、高速スロットリングがイネーブルされたことを制御レジスタ101dが指し示すと、PCU101a(又は任意の他の好適なロジック)は、低電力モード(例えば、C状態、S0iX状態など)に入るための伝統的な(1つ以上の)有限状態マシンをバイパスして、1つ以上の性能パラメータを直接的にスロットルする。従って、低いバッテリー充電レベルに適合するようにプロセッサ101の電力を低下させる高速スロットリングが達成される。1つ以上のコア101eの高速スロットルは、1つ以上のコア101eの周波数、電圧、及び/又はキャパシタンスを低下させることを含む。
図1Bは、一部の実施形態に従った、動的なキャパシタンス、周波数、及び/又は電圧スロットリングによる高速低電力モードのための、ドループ検出器を有する装置120を例示している。一部の実施形態において、バッテリー出力(例えば、Vin)をモニタし、それを閾値と比較するプラットフォームレベルのドループ検出器121が設けられる。プラットフォームレベルドループ検出器121の出力がドループ信号である。ドループ信号は、Vin上にドループが存在するかを指し示す単一ビット信号である。プラットフォームレベルドループ検出器121に関する閾値は、ソフトウェア/ファームウェア又はハードウェア(例えば、ヒューズ)によってプログラムされることができる。一部の実施形態において、フューエルゲージ103の出力とドループ検出器121の出力とがOR演算されて、LPMpinに供給される最終的な信号が生成される。そのような実施形態では、冗長回路が、フューエルゲージ103又はドループ検出器121のうちの一方が適正に動作しない場合に、追加の信頼性を提供する。プラットフォームレベルドループ検出器121は、バッテリー/充電器102がフューエルゲージを持たない場合に使用されてもよい。プラットフォームレベルドループ検出器121を実装することには、電圧ドループを検出する任意の好適な回路を使用することができる。
図2Aは、一部の実施形態に従った、高速低電力モードを可能にする制御レジスタ200(例えば、101d)を例示している。制御レジスタ200は、レジスタ名(例えば、FORCE_THOTTLE_CONTROL)、ビット数(例えば、32ビット)、及びビットに関するフィールド(例えば、イネーブル、スロットルレベルなど)を含む。この例では、FORCE_THOTTLE_CONTROLのビット[0](1ビット)が、高速スロットリングスキームをイネーブル又はディセーブルするのに使用される。イネーブルにされるとき、PCU101aは、伝統的な低電力モードスキームフローをバイパスし、プロセッサ101を迅速にスロットルする。ディセーブルにされたとき、PCU101aは、伝統的な低電力モードスキームに従う。一部の実施形態において、スロットルレベルは、16個の異なる設定を提供する4ビット[3:1]によって記述される。様々なフィールドのビット数は一例として示されている。如何なるビット数が使用されてもよい。この例では、ビット[31:4]は保留ビットである。
図2Bは、一部の実施形態に従った、スロットル状態に関するルックアップテーブル(LUT)220を例示している。LUT220は、制御レジスタ200の上記4ビットに関する16個の異なるスロットリングレベルを例示している。PCU101aは、LUT220の1つ以上のパラメータ(周波数、電圧、電流)を使用してプロセッサ101をスロットルし得る。一例において、制御レジスタ200のスロットルレベルフィールドが0010スロットルレベルであるとき、PCU101aは、プロセッサ101をスロットルするためのターゲットとして周波数f2、電圧v2、及び電流i2を選択する。制御レジスタ200の異なるスロットルレベルフィールドによって、他のスロットルレベルが達成され得る。ここで、周波数は(1つ以上の)コア101eの動作周波数であり、電圧は(1つ以上の)コアに供給される電源電圧レベルであり、電流は電圧レギュレータ101bからの電流供給である。周波数はまた、プロセッサ101の平均周波数(例えば、コール動作コア101eの平均周波数)であってもよく、電圧は、プロセッサ101の平均電源電圧レベル(例えば、動作コア101eの平均電源電圧レベル)であってもよく、電流は、電圧レギュレータ101bからの平均電流供給であってもよい。LUT220は16個のスロットルレベルを示しているが、如何なる数のスロットルレベルが高速スロットリングのために識別されてもよい。
図3は、一部の実施形態に従った、高速低電力モードに関するフローチャート300を例示している。フローチャート300の種々のブロックが特定の順序で図示されているが、順序は変えられてもよい。例えば、一部のブロックが並列に実行されてもよい。
ブロック301にて、PCU101a又は任意の好適なロジックが、LPMpinの論理レベルを読み取る。例えば、PCU101aは、LPMpin上の信号の論理レベルを閾値と比較して、LPMpinの論理レベルを決定する。ブロック302にて、PCU101aは、LPMpinがアサートされているかを判定する。当業者が理解することには、ピンの論理レベルを決定することは、そのピン上の信号の論理レベルを決定することである。LPMpinがアサートされている場合、ブロック303にて、PCU101aは制御レジスタ200をチェックしてフィールド[0]の論理値を割り出し、高速スロットリングがイネーブルされているかを確認する。LPMpinがアサートされていない場合には、PCU101aは、レガシーすなわち伝統的なスロットリングフロー(例えば、レガシー動的電圧・周波数スケーリングフロー)を使用する。LPMがイネーブルされている場合、プロセスはブロック304に進む。ブロック304にて、PCU101aは、プロセッサ101の既存の電力状態を特定する。
既存の電力状態は、LUT220からどのスロットリングレベルを選択すべきかを決め得る。一例において、プロセッサ101がC6電力状態(2019年1月のACPI(Advanced Configuration and Power Interface)仕様書バージョン6.3によって規定されている)にあることをPCU101aが特定したとき、プロセッサ101は既に非常に低い電力モードにあり、更なるスロットリングは望ましくないことがある。その場合、PCU101aが、異なる電力モード状態、又はC6電力状態フローの終了、を待った後に、高速スロットルプロセスが開始する。ブロック305にて、PCU101aは、プロセッサ101の電力消費を低くするように周波数、電圧、及び/又は電流(又はキャパシタンス)を直接低下させることによって、高速スロットリングフローを実現する。
一部の実施形態において、高速LPMフロー(又は高速スロットルフロー)は、レガシーDVFS(動的電圧・周波数スケーリング)よりも高い優先度を与えられる。一部の実施形態において、コア101eがDVFSプロセスにある場合、PCU101aは、高速スロットリングフローに移行する前にコア101eがDVFSを完了することを可能にする。プロセッサ101の(1つ以上の)コア101eが高速スロットルフローを実行している場合、PCU101aは、高速スロットリングが完了する後まで、DVFSを実行するための如何なるコマンドもバイパス又は延期する。
一部の実施形態において、プロセッサ101が高速スロットリングフローから退出するとき(例えば、LPMpinがデアサートされるとき)、PCU101aは、プロセッサ101の現在の負荷状態をレビューし、それに従って電力状態に入り得る。例えば、高速スロットリングフローを退出した後に、PCU101aが、プロセッサ101が働いておらず(例えば、低負荷状態)命令を実行していないと判定した場合、C1E状態に入り得る。C1Eは、プロセッサ101がロードされない間、プロセッサ101がアイドル状態(x12 mult)に入ることを可能にするハードウェア機能である。一部の実施形態において、プロセッサがC1E状態にあり、且つLPMpinがアサートされるとき、PCU101aは、CIE状態を終了し、高速スロットリングフローに移行する。高速スロットリングフローが終了し、且つC1E状態に関する負荷条件が満たされた後、PCU101aはC1E状態に戻り得る。システム電力状態(例えば、S1−S4状態)の間、プロセッサコア101eは、LPMpinによってトリガされる高速LPMに応答しないとし得る。その場合、システムは、LPMpinによってトリガされた高速LPMを進めるために、プロセッサコア101eがアクティブ状態(例えば、C0状態)に入るのを待たなければならないとし得る。
一部の実施形態において、TT1(サーマルスロットリングフロー)がイネーブルされているとき、C1電力状態が終了したことの確認応答がPCU101aによって受信された後に、高速LPMがイネーブルされる。一部の実施形態において、高速LPMモードは、テスト容易化設計(design-for-test;DFT)回路及び/又は遠隔測定(テレメトリー)情報を介してデバッグされる。一部の実施形態において、PCU101a(又は任意の他の好適ロジック)は、プロセッサ101が高速スロットリングモードにある時間の間、基準クロック(例えば、位相ロックループへの基準クロック)を使用してカウントアップするカウンタを含み得る。カウンタの出力は、オペレーティングシステム、スキャンチェーン、デバッグピンなどによって見ることができる。一部の実施形態において、更なるカウンタが、高速LPMへの移行回数を追跡する。例えば、この更なるカウンタは、プロセッサ101が高速LPMに入る及び/又は出る度にカウントする。この更なるカウンタの出力は、オペレーティングシステム、スキャンチェーン、デバッグピンなどによって見ることができるとし得る。
図4は、一部の実施形態に従った、高速低電力モードに関するプラットフォームレベルでのフローチャート400を例示している。フローチャート400は、高速スロットリングスキームをイネーブルにして実行するための、プラットフォーム100、PCU101a、及び(1つ以上の)コア101eの間でのハンドシェイクプロセスを例示している。様々な実施形態において、プロセッサリセットフロー401の間又は後に、PCU101aは、FORCE_THROTTLE_CONTROLレジスタのビット[0]をセットすることによって、(1つ以上の)コア101eに関して高速LPM応答をイネーブルする。従って、(1つ以上の)コア101eが高速低電力モードを実行することが可能にされる。
ブロック402にて、プラットフォームが、低バッテリー電圧状態を検出する。例えば、フューエルゲージ103又は任意の好適なロジックが、バッテリー102の電荷をモニタし、バッテリー102の電荷レベルが閾値を下回ったと判定する。その場合、プラットフォーム100は、LPMpinをアサートして、高速スロットリングフローを開始するようにPCU101aに要求する。LPMpinがアサートされていることを検出すると、PCU101aは、高速スロットリングインジケーションを(1つ以上の)コア101eに送信する。これは、ブロック403によって示されるように、(1つ以上の)コア101eに、例えばTT1、GV(例えば、ローカルクロックスロットリング)、システム電力状態S1などのその他の電力モード動作よりも、高速スロットリングフローに、優先度を与えさせる。ここで、GVは周波数及び/又は電圧スロットリングを意味する。
そして、PCU101aが、進行中の電力状態フローと高速スロットリングフローとの間でのハンドシェイクを管理し、プロセッサ101が高速スロットリングフローを進める。ブロック404にて、プラットフォームが、バッテリー電荷が改善されて閾値を上回っていることを指し示す。次いで、プラットフォームは、LPMpinをデアサートして、高速スロットリングフローを終了させ得ることをPCU101aに指し示す。PCU101aが、高速スロットリングフローがもはや必要でないことを(1つ以上の)コア101eに通知する。結果として、ブロック405にて、(1つ以上の)コア101eが通常のDVFSフローに戻る。
図5は、様々な実施形態に従った、動的なキャパシタンス、周波数、及び/又は電圧スロットリングによる高速低電力モードのための装置を有するスマート機器又はコンピュータシステム又はSoC(システム・オン・チップ)を例示している。指摘しておくことには、他の図の要素と同じ参照符号(又は名称)を持つ図5の要素は、記載されたものと同様にして動作又は機能することができるが、そのように限定されるものではない。
一部の実施形態において、装置2400は、例えばコンピューティングタブレット、携帯電話若しくはスマートフォン、ラップトップ、デスクトップ、モノのインターネット(IOT)装置、サーバ、ウェアラブル装置、セットトップボックス、ワイヤレス対応電子書籍リーダ、又はこれらに類するものなどの、適切なコンピューティング装置を表す。理解されることには、特定の構成要素が概略的に示されており、そのような装置の全てのコンポーネントが装置2400に示されているわけではない。
一例において、装置2400は、SoC(システム・オン・チップ)2401を有する。SoC2401の境界の一例が図5に点線を用いて示され、一部のコンポーネントの例がSoC2401の中に含められるように示されているが、SoC2401は、装置2400の任意の適切なコンポーネントを含み得る。
一部の実施形態において、装置2400はプロセッサ2404を含む。プロセッサ2404は、例えばマイクロプロセッサ、アプリケーションプロセッサ、マイクロコントローラ、プログラマブルロジックデバイス、プロセッシングコア、又は他のプロセッシング手段などの、1つ以上の物理デバイスを含むことができる。プロセッサ2404によって実行される処理動作は、その上でアプリケーション及び/又は装置機能が実行されるオペレーティングプラットフォーム又はオペレーティングシステムの実行を含む。それら処理動作は、人間ユーザ若しくは他の装置とのI/O(入力/出力)に関係する動作、電力管理に関係する動作、コンピューティング装置2400を他の装置に接続することに関係する動作、及び/又はこれらに類するものを含む。それら処理動作はまた、オーディオI/O及び/又はディスプレイI/Oに関係する動作を含み得る。
一部の実施形態において、プロセッサ2404は、複数のプロセッシングコア(コアとしても参照される)2408a、2408b、2408cを含む。図5には、単に3つのコア2408a、2408b、2408cが示されるが、プロセッサ2404は、例えば何十個の又は何百個ものプロセッシングコアといった、任意の他の好適数のプロセッシングコアを含み得る。プロセッサコア2408a、2408b、2408cは、単一の集積回路(IC)チップ上に実装され得る。さらに、そのチップは、1つ以上の共有キャッシュ及び/又はプライベートキャッシュ、バス又は相互接続、グラフィックスコントローラ及び/又はメモリコントローラ、又は他のコンポーネントを含んでもよい。
一部の実施形態において、プロセッサ2404はキャッシュ2406を含む。一例において、キャッシュ2406のセクションは、個々のコア2408に専用とされ得る(例えば、キャッシュ2406の第1のセクションがコア2408aに専用であり、キャッシュ2406の第2のセクションがコア2408bに専用であり、等々)。一例において、キャッシュ2406の1つ以上のセクションが、コア2408のうちの2つ以上の間で共有されてもよい。キャッシュ2406は、例えばレベル1(L1)キャッシュ、レベル2(L2)キャッシュ、レベル3(L3)キャッシュなどといった異なる階層に分割されてもよい。
一部の実施形態において、プロセッサコア2404は、コア2404による実行のために命令(条件付き分岐を有する命令を含む)をフェッチするフェッチユニットを含み得る。命令は、例えばメモリ2430などの任意の記憶装置からフェッチされ得る。プロセッサコア2404はまた、フェッチした命令を復号するデコードユニットを含み得る。例えば、デコードユニットは、フェッチされた命令を複数のマイクロオペレーションへと復号し得る。プロセッサコア2404は、デコードした命令を格納することに伴う様々な動作を実行するスケジュールユニットを含み得る。例えば、スケジュールユニットは、命令がディスパッチの準備が整うまで(例えば、復号された命令の全てのソース値が利用可能になるまで)、デコードユニットからのデータを保持し得る。一実施形態において、スケジュールユニットは、復号された命令を、実行のために、スケジュールし及び/又は実行ユニットに発行(又はディスパッチ)し得る。
実行ユニットは、(例えばデコードユニットによって)復号され且つ(例えばスケジュールユニットによって)ディスパッチされた後のディスパッチされた命令を実行し得る。一実施形態において、実行ユニットは、2つ以上の実行ユニット(例えば、撮像計算ユニット、グラフィックス計算ユニット、汎用計算ユニットなど)を含み得る。実行ユニットはまた、例えば加算、減算、乗算、及び/又は除算などの種々の算術演算を実行し得るとともに、1つ以上の算術論理ユニット(ALU)を含み得る。一実施形態において、実行ユニットと共にコプロセッサ(図示せず)が種々の算術演算を実行してもよい。
また、実行ユニットは、命令を順不同に命令してもよい。従って、プロセッサコア2404は、一実施形態において、アウトオブオーダープロセッサコアであってもよい。プロセッサコア2404はまた、回収(リタイアメント)ユニットを含み得る。回収ユニットは、実行された命令を、それらがコミットされた後に回収し得る。一実施形態において、実行された命令の回収は、プロセッサ状態が命令の実行からコミットされることや、命令によって使用された物理レジスタが割り当て解除されることなどをもたらし得る。プロセッサコア2404はまた、プロセッサコア2404のコンポーネントと他のコンポーネントとの間での1つ以上のバスを介した通信を可能にするバスユニットを含み得る。プロセッサコア2404はまた、コア2404の様々なコンポーネントによってアクセスされるデータ(例えば、割り当てられたアプリケーションプライオリティ及び/又はサブシステム状態(モード)アソシエーションに関係する値など)を格納する1つ以上のレジスタを含み得る。
一部の実施形態において、装置2400は接続回路2431を含む。例えば、接続回路2431は、ハードウェアデバイス(例えば、無線及び/又は有線コネクタと通信ハードウェア)及び/又はソフトウェアコンポーネント(例えば、ドライバ、プロトコルスタック)を含み、例えば、装置2400が外部デバイスと通信することを可能にする。装置2400は、例えば他のコンピューティング装置、無線アクセスポイント又は基地局などの外部装置から隔てられ得る。
一例において、接続回路2431は、複数の異なるタイプの接続を含み得る。一般化するに、接続回路2431は、セルラー接続回路、無線接続回路などを含んでもよい。接続回路2431のセルラー接続回路は、一般に、例えばGSM(global system for mobile communications)又はそのバリエーション若しくは派生物、CDMA(符号分割多重アクセス)又はそのバリエーション若しくは派生物、TDM(時分割多重化)又はそのバリエーション若しくは派生物、第3世代パートナーシッププロジェクト(3GPP)UMTS(Universal Mobile Telecommunications Systems)システム又はそのバリエーション若しくは派生物、3GPPロングタームエボリューション(LTE)システム又はそのバリエーション若しくは派生物、3GPP LTEアドバンスト(LTE−A)システム又はそのバリエーション若しくは派生物、第5世代(5G)無線システム又はそのバリエーション若しくは派生物、5Gモバイルネットワークシステム又はそのバリエーション若しくは派生物、5G新無線(NR)システム又はそのバリエーション若しくは派生物、又は他のセルラーサービス標準を介して提供されるものなど、無線通信事業者によって提供されるセルラーネットワーク接続を指す。接続回路2431の無線接続回路(又は無線インタフェース)は、セルラーではない無線接続を指し、パーソナルエリアネットワーク(例えば、Bluetooth(登録商標)、ニアフィールドなど)、ローカルエリアネットワーク(例えば、Wi−Fiなど)、及び/又はワイドエリアネットワーク(例えば、WiMaxなど)、及び/又は他の無線通信を含むことができる。一例において、接続回路2431は、例えば、システム実施形態が例えば携帯電話又は携帯情報端末といったワイヤレス装置に組み込まれ得るように、例えば有線又は無線インタフェースなどのネットワークインタフェースを含み得る。
一部の実施形態において、装置2400は、1つ以上のI/O装置とのインタラクションに関係するハードウェアデバイス及び/又はソフトウェアコンポーネントを表すものであるコントロールハブ2432を含む。例えば、プロセッサ2404は、コントロールハブ2432を介して、ディスプレイ2422、1つ以上の周辺装置2424、ストレージ装置2428、1つ以上の他の外部装置2429などのうちの1つ以上と通信し得る。コントロールハブ2432は、チップセット、プラットフォームコントロールハブ(PCH)、及び/又はこれらに類するものとし得る。
例えば、コントロールハブ2432は、装置2400に接続する追加の装置のための1つ以上の接続ポイントを例示するものであり、例えば、それを通じて、ユーザがシステムとインタラクトし得る。例えば、装置2400に取り付けられることができる装置(例えば、装置2429)は、マイクロホン装置、スピーカ若しくはステレオシステム、オーディオ装置、ビデオシステム若しくは他の表示装置、キーボード若しくはキーパッド装置、又は例えばカードリーダ若しくは他の装置などの特定のアプリケーションで使用される他のI/O装置を含む。
上述のように、コントロールハブ2432は、オーディオ装置やディスプレイ2422などとインタラクトすることができる。例えば、マイクロホン又は他のオーディオ装置を介しての入力が、装置2400の1つ以上のアプリケーション又は機能のための入力又はコマンドを提供することができる。さらに、ディスプレイ出力に代えて、又は加えて、オーディオ出力を提供することができる。他の一例において、ディスプレイ2422がタッチスクリーンを含む場合、ディスプレイ2422は、少なくとも部分的にコントロールハブ2432によって管理され得るものである入力装置としても機能する。コンピューティング装置2400上にはまた、コントロールハブ2432によって管理されるI/O機能を提供するために更なるボタン又はスイッチも存在することができる。一実施形態において、コントロールハブ2432は、例えば加速度計、カメラ、光センサ若しくは他の環境センサなどのデバイス、又は装置2400に含められ得る他のハードウェアを管理する。入力は、直接的なユーザインタラクションの一部とすることができるとともに、システムに環境入力を提供して、その動作(例えば、ノイズのフィルタリング、輝度検出のためのディスプレイの調整、カメラのためのフラッシュの適用、又は他の機構)に影響を及ぼすことができる。
一部の実施形態において、コントロールハブ2432は、例えば、PCIe(ペリフェラルコンポーネントインターコネクトエクスプレス)、USB(ユニバーサルシリアルバス)、サンダーボルト、高精細マルチメディアインタフェース(HDMI(登録商標))、ファイヤワイヤなどといった、任意の適切な通信プロトコルを使用して様々なデバイスに結合し得る。
一部の実施形態において、ディスプレイ2422は、ユーザが装置2400とインタラクトするための視覚ディスプレイ及び/又は触覚ディスプレイを提供するハードウェア(例えば、ディスプレイ装置)及びソフトウェア(例えば、ドライバ)コンポーネントを表す。ディスプレイ2422は、ディスプレイインタフェース、ディスプレイスクリーン、及び/又はユーザに表示を提供するために使用されるハードウェア装置を含み得る。一部の実施形態において、ディスプレイ2422は、出力及び入力の両方をユーザに提供するタッチスクリーン(又はタッチパッド)装置を含む。一例において、ディスプレイ2422は、プロセッサ2404と直接的に通信し得る。ディスプレイ2422は、モバイルエレクトロニクス装置若しくはラップトップ装置においてのような内部ディスプレイ、又はディスプレイインタフェース(例えば、DisplayPortなど)を介して取り付けられる外付けディスプレイ装置のうちの一方以上とし得る。一実施形態において、ディスプレイ2422は、例えば仮想現実(VR)アプリケーション又は拡張現実(AR)アプリケーションで使用される立体表示装置などのヘッドマウントディスプレイ(HMD)であってもよい。
一部の実施形態において、図には示していないが、プロセッサ2404に加えて(又は代えて)、装置2400は、ディスプレイ2422上にコンテンツを表示することの1つ以上の態様を制御し得るものである1つ以上のグラフィックス処理コアを含むグラフィックス処理ユニット(GPU)を含んでいてもよい。
コントロールハブ2432(又はプラットフォームコントローラハブ)は、ハードウェアインタフェース及びコネクタと、例えば周辺装置2424への周辺接続を行うためのソフトウェアコンポーネント(例えば、ドライバ、プロトコルスタック)とを含んでいてもよい。
理解されることには、装置2400は、他のコンピューティング装置に対する周辺装置であってもよく、また、それに接続された周辺装置を有してもよい。装置2400は、例えば装置2400上のコンテンツを管理する(例えば、ダウンロード及び/又はアップロードする、変更する、同期させる)などの目的のために、他のコンピューティング装置に接続するための“ドッキング”コネクタを有し得る。加えて、ドッキングコネクタは、例えばオーディオビジュアルシステム又は他のシステムへのコンテンツ出力をコンピューティング装置2400が制御することを可能にする特定の周辺機器に装置2400が接続することを可能にし得る。
専用ドッキングコネクタ又は他の専用接続ハードウェアに加えて、装置2400は、共通又は標準ベースのコネクタを介して周辺接続を行うことができる。共通のタイプは、ユニバーサルシリアルバス(USB)コネクタ(これは、多数の異なるハードウェアインタフェースのうちのいずれかを含み得る)、ミニディスプレイポート(MDP)、高精細マルチメディアインタフェース(HDMI)、ファイヤワイヤ、又は他のタイプを含み得る。
一部の実施形態において、接続回路2431は、例えば、プロセッサ2404に直接的に結合されることに加えて、又は代えて、コントロールハブ2432に結合されてもよい。一部の実施形態において、ディスプレイ2422は、例えば、プロセッサ2404に直接的に結合されることに加えて、又は代えて、コントロールハブ2432に結合されてもよい。
一部の実施形態において、装置2400は、メモリインタフェース2434を介してプロセッサ2404に結合されたメモリ2430を含む。メモリ2430は、装置2400内の情報を格納するためのメモリデバイスを含む。
一部の実施形態において、メモリ2430は、様々な実施形態を参照して説明したように、安定したクロック生成を維持管理するための装置を含む。メモリは、不揮発性(メモリデバイスへの電力が中断された場合に状態が変化しない)及び/又は揮発性(メモリデバイスへの電力が中断された場合に状態が不確定となる)メモリデバイスを含むことができる。メモリデバイス2430は、ダイナミックランダムアクセスメモリ(DRAM)デバイス、スタティックランダムアクセスメモリ(SRAM)デバイス、フラッシュメモリデバイス、相変化メモリデバイス、又はプロセスメモリとして機能するのに適した性能を持つ何らかの他のメモリデバイスとし得る。一実施形態において、メモリ2430は、1つ以上のプロセッサ2404がアプリケーション又はプロセスを実行するときに使用されるデータ及び命令を格納するための、装置2400のシステムメモリとして動作することができる。メモリ2430は、アプリケーションデータ、ユーザデータ、音楽、写真、文書、又は他のデータ、並びに、装置2400のアプリケーション及び機能の実行に関係するシステムデータ(長期であるか一時的であるかにかかわらず)を格納することができる。
様々な実施形態及び例の要素はまた、コンピュータ実行可能命令(例えば、ここで説明されるいずれか他のプロセスを実行するための命令)を格納する機械読み取り可能媒体(例えば、メモリ2430)として提供される。機械読み取り可能媒体(例えば、メモリ2430)は、以下に限られないが、フラッシュメモリ、光ディスク、CD−ROM、DVD ROM、RAM、EPROM、EEPROM、磁気カード若しくは光カード、相変化メモリ(PCM)、又は電子命令若しくはコンピュータ実行可能命令を格納するのに適した他のタイプの機械読み取り可能媒体を含み得る。例えば、開示の実施形態は、通信リンク(例えば、モデム又はネットワーク接続)を介してデータ信号によってリモートコンピュータ(例えば、サーバ)から要求元コンピュータ(例えば、クライアント)に転送され得るコンピュータプログラム(例えば、BIOS)としてダウンロードされ得る。
一部の実施形態において、装置2400は、例えば装置2400の種々のコンポーネントの温度を測定するための、温度測定回路2440を含む。一例において、温度測定回路2440は、その温度を測定及びモニタすべきである様々なコンポーネントに内蔵され、結合され、又は取り付けられ得る。例えば、温度測定回路2440は、コア2408a、2408b、2408c、電圧レギュレータ2414、メモリ2430、SOC2401のマザーボード、及び/又は装置2400の任意の適切なコンポーネント、のうちの1つ以上の温度(又はその中の温度)を測定し得る。
一部の実施形態において、装置2400は、例えば装置2400の1つ以上のコンポーネントによって消費される電力を測定するための、電力測定回路2442を含む。一例において、電力を測定することに加えて、又は代えて、電力測定回路2442は、電圧及び/又は電流を測定してもよい。一例において、電力測定回路2442は、その電力、電圧、及び/又は電流を測定及びモニタすべきである様々なコンポーネントに内蔵され、結合され、又は取り付けられ得る。例えば、電力測定回路2442は、1つ以上の電圧レギュレータ2414によって供給される電力、電流及び/又は電圧、SOC2401に供給される電力、装置2400に供給される電力、装置2400のプロセッサ2404(又は他のコンポーネント)によって消費される電力などを測定し得る。
一部の実施形態において、装置2400は、概して電圧レギュレータ(VR)2414として参照する1つ以上の電圧レギュレータ回路を含む。VR2414は、装置2400のいずれか適切なコンポーネントを動作させるために供給され得るものである適切な電圧レベルの信号を生成する。単なる一例として、VR2414は、装置2400のプロセッサ2404に信号を供給しているように図示されている。一部の実施形態において、VR2414は、1つ以上の電圧識別(Voltage Identification;VID)信号を受信し、該VID信号に基づいて、適切なレベルにある電圧信号を生成する。VR2414には、種々のタイプのVRが利用され得る。例えば、VR2414は、“バック”VR、“ブースト”VR、バックVRとブーストVRとの組み合わせ、低ドロップアウト(LDO)レギュレータ、スイッチングDC−DCレギュレータ、定オン時間コントローラベースのDC−DCレギュレータなどを含み得る。バックVRは、一般に、1より小さい比で入力電圧を出力電圧に変換する必要がある電力送達用途で使用される。ブーストVRは、一般に、1より大きい比で入力電圧を出力電圧に変換する必要がある電力送達用途で使用される。一部の実施形態において、各プロセッサコアがそれ自身のVRを持ち、それがPCU2410a/b及び/又はPMIC2412によって制御される。一部の実施形態において、電力管理のための効率的な制御を提供するために、各コアが、分散されたLDOのネットワークを持つ。LDOは、デジタルLDO、アナログLDO、又はデジタル若しくはアナログのLDOの組み合わせとし得る。一部の実施形態において、VR2414は、(1つ以上の)電源レールを通る電流を測定する電流追跡装置を含む。
一部の実施形態において、装置2400は、概してクロック発生器2416として参照する1つ以上のクロック発生器回路を含む。クロック発生器2416は、装置2400の任意の適切なコンポーネントに供給され得るものである適切な周波数レベルのクロック信号を生成する。単なる一例として、クロック発生器2416は、装置2400のプロセッサ2404にクロック信号を供給しているように図示されている。一部の実施形態において、クロック発生器2416は、1つ以上の周波数識別(Frequency Identification;FID)信号を受信し、該FID信号に基づいて、適切な周波数にあるクロック信号を生成する。
一部の実施形態において、装置2400は、装置2400の様々なコンポーネントに電力を供給するバッテリー2418を含む。単なる一例として、バッテリー2418は、プロセッサ2404に電力を供給しているように図示されている。図には示していないが、装置2400は、ACアダプタから受け取られる交流(AC)電源に基づいて例えばバッテリーを再充電するための充電回路を含み得る。
一部の実施形態において、装置2400は、電力制御ユニット(PCU)2410(電力管理ユニット(PMU)、電力コントローラなどとしても参照する)を含む。一例において、PCU2410の一部のセクションは、1つ以上のプロセッシングコア2408によって実装されてもよく、PCU2410のこれらのセクションは、点線のボックスを用いてPCU2410aというラベルを付して象徴的に図示されている。一例において、PCU2410の他の一部のセクションは、プロセッシングコア2408の外部に実装されてもよく、PCU2410のこれらのセクションは、点線のボックスを用いてPCU2410bというラベルを付して象徴的に図示されている。PCU2410は、装置2400に関する様々な電力管理動作を実装し得る。PCU2410は、装置2400に関する様々な電力管理動作を実装するために、ハードウェアインタフェース、ハードウェア回路、コネクタ、レジスタなどと、ソフトウェアコンポーネント(例えば、ドライバ、プロトコルスタック)とを含み得る。一部の実施形態において、PCU2410は、動的なキャパシタンス、周波数、及び/又は電圧スロットリングによる高速低電力モードを管理する。
一部の実施形態において、装置2400は、例えば、装置2400に関する様々な電力管理動作を実装するために、電力管理集積回路(PMIC)2412を含む。一部の実施形態において、PMIC2412は、リコンフィギュラブル電力管理IC(RPMIC)及び/又はIMVP(Intel(登録商標) Mobile Voltage Positioning)である。一例において、PMICは、プロセッサ2404とは別個のICチップ内にある。これは、装置2400に関する様々な電力管理動作を実装し得る。PMIC2412は、装置2400に関する様々な電力管理動作を実装するために、ハードウェアインタフェース、ハードウェア回路、コネクタ、レジスタなどと、ソフトウェアコンポーネント(例えば、ドライバ、プロトコルスタック)とを含み得る。
一例において、装置2400は、PCU2410又はPMIC2412の一方又は両方を含む。一例において、PCU2410又はPMIC2412のいずれか一方は、装置2400内に存在しなくてもよく、それ故に、これらのコンポーネントは点線を用いて図示されている。
装置2400の様々な電力管理動作は、PCU2410によって、PMIC2412によって、又はPCU2410とPMIC2412との組み合わせによって実行され得る。例えば、PCU2410及び/又はPMIC2412は、装置2400の様々なコンポーネントに関する電力状態(例えば、P状態)を選択し得る。例えば、PCU2410及び/又はPMIC2412は、装置2400の様々なコンポーネントに関する電力状態を(例えば、ACPI(Advanced Configuration and Power Interface)仕様に従って)選択し得る。単なる一例として、PCU2410及び/又はPMIC2412は、装置2400の様々なコンポーネントに、スリープ状態、アクティブ状態、適切なC状態(例えば、ACPI仕様に従った、C0状態、又は他の適切なC状態)などに遷移させ得る。一例において、PCU2410及び/又はPMIC2412は、VR2414によって出力される電圧及び/又はクロック発生器によって出力されるクロック信号の周波数を、例えば、それぞれVID信号及び/又はFID信号を出力することによって制御し得る。一例において、PCU2410及び/又はPMIC2412は、バッテリー電力使用量、バッテリー2418の充電、及び電力節減動作に関係する機能を制御し得る。
様々な実施形態において、バッテリー2418の電力レベル(例えば、電荷、電圧、及び/又は電流)が閾値を下回るかを指し示すために、SoC2401の専用ピンLPMpinが使用される。閾値は所定又はプログラム可能とし得る。バッテリー2418は、プロセッサ及び/又はSoC2401に電力を供給するために使用される。バッテリー2418の電力レベルが閾値を下回るとの判定を受けて、PCU2410a又は2410bは、低性能又は低電力モードに入る従来プロセスをバイパスして、プロセッサ2402又はSoC2401の電圧及び/又は動作周波数を直接スロットルする。これは、プロセッサ2402又はSoC2401が低バッテリー電力で動作し続けることを可能にする。専用ピンLPMpin上の電圧の論理レベルに従ったアクティブ状態(例えば、C0状態)から低性能又は低電力モードへの高速遷移(例えば、約10μs)は、デカップリングキャパシタ設計要求を下げ、より高いパッケージ電力制御設定(例えば、PL4)にプロセッサ2402又はSoC2401が適応することを可能にする。
クロック発生器2416は、位相ロックループ(PLL)、周波数ロックループ(FLL)、又は任意の好適なクロック源を有することができる。一部の実施形態において、プロセッサ2404の各コアが、それ自身のクロック源を持つ。斯くすると、各コアは、他のコアの動作周波数とは独立の周波数で動作することができる。一部の実施形態において、PCU2410及び/又はPMIC2412は、適応的又は動的な周波数スケーリング又は調整を実行する。例えば、あるプロセッサコアのクロック周波数が、そのコアがその最大電力消費閾値又は制限値で動作していない場合に上昇され得る。一部の実施形態において、PCU2410及び/又はPMIC2412は、プロセッサの各コアの動作条件を決定し、そして、コアが目標性能レベルよりも下で動作しているとPCU2410及び/又はPMIC2412が判定したとき、そのコアのクロック源(例えば、そのコアのPLL)がロックを失うことなく、機に乗じてそのコアの周波数及び/又は電源電圧を調整する。例えば、コアが、そのコア又はプロセッサ2404に対して割り当てられた総電流よりも小さい電流を電力供給レールから引き出している場合に、PCU2410及び/又はPMIC2412は、そのコア又はプロセッサ2404がより高い性能レベルを発揮することができるように、(例えば、クロック周波数及び/又は電源電圧レベルを上昇させることによって)そのコア又はプロセッサ2404に対する電力引き出しを一時的に増加させることができる。斯くして、製品の信頼性を損なうことなく、プロセッサ2404に対して電圧及び/又は周波数を一時的に上昇させることができる。
一例において、PCU2410及び/又はPMIC2412は、例えば、電力測定回路2442、温度測定回路2440からの測定結果、バッテリー2418の充電レベル、及び/又は電力管理のために使用され得る他の適切な情報を受信することに少なくとも部分的に基づいて、電力管理動作を実行し得る。この目的のために、PMIC2412は、システム/プラットフォームの電力/熱挙動に対して影響を持つ1つ以上のファクタにおける様々な値/変動を検知/検出するために、1つ以上のセンサに通信可能に結合される。該1つ以上のファクタの例は、電流、電圧ドループ、温度、動作周波数、動作電圧、電力消費、コア間通信活動などを含む。これらのセンサのうちの1つ以上は、コンピューティングシステムの1つ以上のコンポーネント又は論理/IPブロックと物理的に近接して(且つ/或いは熱的に接触/結合して)設けられ得る。さらに、少なくとも一実施形態において、PCU2410及び/又はPMIC2412に直接的に(1つ以上の)センサを結合することで、PCU2410及び/又はPMIC2412が、それらセンサのうちの1つ以上によって検出された(1つ以上の)値に少なくとも部分的に基づいてプロセッサコアエネルギーを管理することを可能にしてもよい。
装置2400のソフトウェアスタックの一例も図示している(しかし、ソフトウェアスタックの全ての要素が図示されているわけではない)。単なる一例として、プロセッサ2404は、アプリケーションプログラム2450、オペレーティングシステム2452、1つ以上の電力管理(PM)向けアプリケーションプログラム(例えば、概してPMアプリケーション2458として参照する)、及び/又はこれらに類するものを実行し得る。PMアプリケーション2458はまた、PCU2410及び/又はPMIC2412によって実行されてもよい。OS2452も、1つ以上のPMアプリケーション2456a、2456b、2456cを含み得る。OS2452はまた、様々なドライバ2454a、2454b、2454cなどを含むことができ、それらのうちの一部は電力管理目的に特有のものとし得る。一部の実施形態において、装置2400は更に、基本入力/出力システム(BIOS)2420を含み得る。BIOS2420は、(例えば、1つ以上のドライバ2454を介して)OS2452と通信し、プロセッサ2404と通信し、等々とし得る。
例えば、PMアプリケーション2458、2456、ドライバ2454、BIOS2420などのうちの1つ以上を使用して、例えば、装置2400の様々なコンポーネントの電圧及び/又は周波数を制御するため、装置2400の様々なコンポーネントのウェイクアップ状態、スリープ状態、及び/又は他の適切な電力状態を制御するため、バッテリー電力使用量、バッテリー2418の充電、電力節減動作に関係する機能を制御するため、などの電力管理向けタスクを実装し得る。
明細書における“ある実施形態”、“一実施形態”、“一部の実施形態”、又は“他の実施形態”への言及は、それらの実施形態に関連して記述される特定の機構、構造又は特徴が、必ずしも全ての実施形態においてなく、少なくとも一部の実施形態に含まれることを意味する。“ある実施形態”、“一実施形態”又は“一部の実施形態”が様々に現れることは、必ずしもすべてが同じ実施形態に言及しているわけではない。明細書が、コンポーネント、機構、構造、又は特徴が含まれ“てもよい”、“ることがある”又は“得る”と述べている場合、その特定のコンポーネント、機構、構造、又は特徴は含められる必要がない。明細書又は請求項が“a”又は“an”を付けて要素に言及する場合、それは、それらの要素が1つだけ存在することを意味するわけではない。明細書又は請求項が“an additional”を付けて要素に言及する場合、それは、その追加の要素が2つ以上あることを除外するものではない。
また、特定の機構、構造、機能、又は特徴が、1つ以上の実施形態において好適なように組み合わされ得る。例えば、第1の実施形態が、第2の実施形態と、これら2つの実施形態に関連する特定の機構、構造、機能、又は特徴が相互に排他的でない場合に組み合わされ得る。
開示をその特定の実施形態に関して説明してきたが、以上の説明を踏まえて、これらの実施形態の数多くの改変、変更、及び変形が当業者に明らかになる。開示の実施形態は、添付の請求項の広い範囲に入る全てのそのような改変、変更、及び変形を包含することを意図している。
加えて、図示及び説明を簡単にするため、また、開示を不明瞭にしないため、集積回路(IC)チップ及び他のコンポーネントへの周知の電力/グランド接続は、提示される図の中に示されたり示されなかったりすることがある。また、構成がブロック図の形態で示されることがあるが、これは、開示を不明瞭にすることを避けるためであり、また、そのようなブロック図の構成の実装に関する詳細事項が、その中で本開示が実装されることになるプラットフォームに大きく依存する(すなわち、そのような詳細事項は、十分に、当業者の関与の範囲内にあるはずである)という事実に鑑みてのことである。開示の実施形態例を記述するために特定の詳細事項(例えば、回路)が説明される場合に、開示したことがそれらの特定の詳細事項を用いずに又はそれらの変形を用いて実施されることは、当業者に明らかなはずである。この記述は、故に、限定するものでなく例示するものとして見なされることになる。
ここに記載された様々な実施形態を例として示す。これらの例の特徴は好適であるようにして互いに組み合わされることができる。これらの例は以下を含む。
例1: 閾値に対するバッテリー充電に関するインジケーションを受け取るピンと、1つ以上のプロセッサコアと、前記ピンからの前記インジケーションを処理して、前記1つ以上のプロセッサコアを高速スロットルすべきかを決定する電力制御ユニットであり、前記1つ以上のプロセッサコアを高速スロットルするために、当該電力制御ユニットは、レガシー動的電圧・周波数スケーリングフローをバイパスして、前記1つ以上のプロセッサコアを直接スロットルする、電力制御ユニットと、を有するプロセッサ。
例2: 前記高速スロットルをイネーブル又はディセーブルするためのビットをセットするレジスタ、を有する例1に記載のプロセッサ。
例3: 前記レジスタは、スロットルレベルに関する1つ以上のフィールドを含む、例2に記載のプロセッサ。
例4: 前記スロットルレベルを格納するルックアップテーブル、を有する例3に記載のプロセッサ。
例5: 前記レジスタの前記ビットは、リセット時にセットされる、例2に記載のプロセッサ。
例6: 前記閾値はプログラム可能である、例1に記載のプロセッサ。
例7: 前記1つ以上のプロセッサコアを高速スロットルすることは、前記1つ以上のプロセッサコアの周波数、電圧、及び/又はキャパシタンスを下げることを有する、例1に記載のプロセッサ。
例8: 前記電力制御ユニットは、当該プロセッサがC6電力状態にある場合に、前記高速スロットルを延期する、例1に記載のプロセッサ。
例9: 閾値に対するバッテリー充電に関するインジケーションを受け取るピンと、1つ以上のプロセッサコアと、前記ピンからの前記インジケーションを処理して、前記1つ以上のプロセッサコアを高速スロットルすべきかを決定する電力制御ユニットであり、当該電力制御ユニットは、前記1つ以上のプロセッサコアのいずれかがC6電力状態にある場合に前記高速スロットルを延期する、電力制御ユニットと、を有する装置。
例10: 前記1つ以上のプロセッサコアを高速スロットルするために、前記電力制御ユニットは、レガシー動的電圧・周波数スケーリングフローをバイパスして、前記1つ以上のプロセッサコアを直接スロットルする、例9に記載の装置。
例11: 前記高速スロットルをイネーブル又はディセーブルするためのビットをセットするレジスタ、を有する例9に記載の装置。
例12: 前記レジスタは、スロットルレベルに関する1つ以上のフィールドを含む、例11に記載の装置。
例13: 前記スロットルレベルを格納するルックアップテーブル、を有する例12に記載の装置。
例14: 前記レジスタの前記ビットは、リセット時にセットされる、例12に記載の装置。
例15: 前記閾値はプログラム可能である、例9に記載の装置。
例16: 前記1つ以上のプロセッサコアを高速スロットルすることは、前記1つ以上のプロセッサコアの周波数、電圧、及び/又はキャパシタンスを下げることを有する、例9に記載の装置。
例17: メモリと、前記メモリに結合されたプロセッサと、前記プロセッサに電力供給するバッテリーと、閾値に対して前記バッテリーの充電レベルをモニタするフューエルゲージであり、当該フューエルゲージの出力が前記プロセッサのピンに提供される、フューエルゲージと、を有し、前記プロセッサは、1つ以上のプロセッサコアと、前記ピンからのインジケーションを処理し、前記ピンの論理レベルに基づいて、前記1つ以上のプロセッサコアを高速スロットルすべきかを決定する電力制御ユニットであり、前記1つ以上のプロセッサコアを高速スロットルするために、当該電力制御ユニットは、レガシー動的電圧・周波数スケーリングフローをバイパスして、前記1つ以上のプロセッサコアを直接スロットルする、電力制御ユニットと、を有する、システム。
例18: 前記プロセッサは、前記高速スロットルをイネーブル又はディセーブルするためのビットをセットするレジスタを有し、該レジスタは、スロットルレベルに関するフィールドを含む、例17に記載のシステム。
例19: 前記プロセッサは、前記スロットルレベルを格納するルックアップテーブルを有する、例17に記載のシステム。
例20: 前記電力制御ユニットは、前記プロセッサがC6電力状態にある場合に、前記高速スロットルを延期する、例17に記載のシステム。
技術開示の性質及び骨子を読者が確認することを可能にする要約が提供される。要約は、請求項の範囲又は意味を限定するために使用されることにならないという理解の下で提出される。以下の特許請求の範囲は詳細な説明に組み込まれ、各請求項が別個の実施形態として自立したものとなる。

Claims (20)

  1. 閾値に対するバッテリー充電に関するインジケーションを受け取るピンと、
    1つ以上のプロセッサコアと、
    前記ピンからの前記インジケーションを処理して、前記1つ以上のプロセッサコアを高速スロットルすべきかを決定する電力制御ユニットであり、前記1つ以上のプロセッサコアを高速スロットルするために、当該電力制御ユニットは、レガシー動的電圧・周波数スケーリングフローをバイパスして、前記1つ以上のプロセッサコアを直接スロットルする、電力制御ユニットと、
    を有するプロセッサ。
  2. 前記高速スロットルをイネーブル又はディセーブルするためのビットをセットするレジスタ、を有する請求項1に記載のプロセッサ。
  3. 前記レジスタは、スロットルレベルに関する1つ以上のフィールドを含む、請求項2に記載のプロセッサ。
  4. 前記スロットルレベルを格納するルックアップテーブル、を有する請求項3に記載のプロセッサ。
  5. 前記レジスタの前記ビットは、リセット時にセットされる、請求項2に記載のプロセッサ。
  6. 前記閾値はプログラム可能である、請求項1に記載のプロセッサ。
  7. 前記1つ以上のプロセッサコアを高速スロットルすることは、前記1つ以上のプロセッサコアの周波数、電圧、及び/又はキャパシタンスを下げることを有する、請求項1に記載のプロセッサ。
  8. 前記電力制御ユニットは、当該プロセッサがC6電力状態にある場合に、前記高速スロットルを延期する、請求項1乃至7のいずれか一項に記載のプロセッサ。
  9. 閾値に対するバッテリー充電に関するインジケーションを受け取るピンと、
    1つ以上のプロセッサコアと、
    前記ピンからの前記インジケーションを処理して、前記1つ以上のプロセッサコアを高速スロットルすべきかを決定する電力制御ユニットであり、当該電力制御ユニットは、前記1つ以上のプロセッサコアのいずれかがC6電力状態にある場合に前記高速スロットルを延期する、電力制御ユニットと、
    を有する装置。
  10. 前記1つ以上のプロセッサコアを高速スロットルするために、前記電力制御ユニットは、レガシー動的電圧・周波数スケーリングフローをバイパスして、前記1つ以上のプロセッサコアを直接スロットルする、請求項9に記載の装置。
  11. 前記高速スロットルをイネーブル又はディセーブルするためのビットをセットするレジスタ、を有する請求項9に記載の装置。
  12. 前記レジスタは、スロットルレベルに関する1つ以上のフィールドを含む、請求項11に記載の装置。
  13. 前記スロットルレベルを格納するルックアップテーブル、を有する請求項12に記載の装置。
  14. 前記レジスタの前記ビットは、リセット時にセットされる、請求項12に記載の装置。
  15. 前記閾値はプログラム可能である、請求項9に記載の装置。
  16. 前記1つ以上のプロセッサコアを高速スロットルすることは、前記1つ以上のプロセッサコアの周波数、電圧、及び/又はキャパシタンスを下げることを有する、請求項9乃至15のいずれか一項に記載の装置。
  17. メモリと、
    前記メモリに結合されたプロセッサと、
    前記プロセッサに電力供給するバッテリーと、
    閾値に対して前記バッテリーの充電レベルをモニタするフューエルゲージであり、当該フューエルゲージの出力が前記プロセッサのピンに提供される、フューエルゲージと、
    を有し、
    前記プロセッサは、
    1つ以上のプロセッサコアと、
    前記ピンからのインジケーションを処理し、前記ピンの論理レベルに基づいて、前記1つ以上のプロセッサコアを高速スロットルすべきかを決定する電力制御ユニットであり、前記1つ以上のプロセッサコアを高速スロットルするために、当該電力制御ユニットは、レガシー動的電圧・周波数スケーリングフローをバイパスして、前記1つ以上のプロセッサコアを直接スロットルする、電力制御ユニットと、
    を有する、
    システム。
  18. 前記プロセッサは、前記高速スロットルをイネーブル又はディセーブルするためのビットをセットするレジスタを有し、該レジスタは、スロットルレベルに関するフィールドを含む、請求項17に記載のシステム。
  19. 前記プロセッサは、前記スロットルレベルを格納するルックアップテーブルを有する、請求項18に記載のシステム。
  20. 前記電力制御ユニットは、前記プロセッサがC6電力状態にある場合に、前記高速スロットルを延期する、請求項17乃至19のいずれか一項に記載のシステム。
JP2020204107A 2020-06-08 2020-12-09 高速で動的なキャパシタンス、周波数、及び/又は電圧スロットリング装置及び方法 Pending JP2021193544A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US16/896,070 US11275663B2 (en) 2020-06-08 2020-06-08 Fast dynamic capacitance, frequency, and/or voltage throttling apparatus and method
US16/896,070 2020-06-08

Publications (1)

Publication Number Publication Date
JP2021193544A true JP2021193544A (ja) 2021-12-23

Family

ID=73834222

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020204107A Pending JP2021193544A (ja) 2020-06-08 2020-12-09 高速で動的なキャパシタンス、周波数、及び/又は電圧スロットリング装置及び方法

Country Status (6)

Country Link
US (1) US11275663B2 (ja)
EP (1) EP3923120A1 (ja)
JP (1) JP2021193544A (ja)
CN (1) CN113835517A (ja)
AU (1) AU2021200136A1 (ja)
BR (1) BR102021001590A2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11616373B2 (en) * 2020-07-30 2023-03-28 Intel Corporation Low latency fine grain system-on-chip throttling apparatus and method on USB type-C port
EP4325332A1 (en) * 2022-08-16 2024-02-21 NXP USA, Inc. Power consumption control of an electronic system and apparatus for controlling the power consumption

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5423045A (en) * 1992-04-15 1995-06-06 International Business Machines Corporation System for distributed power management in portable computers
KR100371181B1 (ko) * 2000-11-28 2003-02-06 엘지전자 주식회사 휴대용 기기의 절전방법
KR100369463B1 (ko) * 2000-12-21 2003-01-24 엘지전자 주식회사 휴대용 컴퓨터에서의 호스트 버스 클럭 가변 제어방법
US6472848B2 (en) * 2001-01-18 2002-10-29 Hewlett-Packard Company Reducing battery discharge current by throttling CPU power
US8612782B2 (en) * 2011-03-31 2013-12-17 Intel Corporation System and method for determining multiple power levels of the sub-systems based on a detected available power and prestored power setting information of a plurality of different combinations of the sub-systems
US9535484B2 (en) * 2011-11-29 2017-01-03 Maxim Integrated Products, Inc. Extending RunTime with battery ripple cancellation using CPU throttling
US9087114B2 (en) * 2012-02-24 2015-07-21 Qualcomm Incorporated System and method for managing electrical current in a portable computing device
US9846463B2 (en) * 2012-09-28 2017-12-19 Intel Corporation Computing system and processor with fast power surge detection and instruction throttle down to provide for low cost power supply unit
US9541991B2 (en) * 2012-12-14 2017-01-10 Intel Corporation Method and apparatus for managing computing system power
WO2015144085A1 (en) * 2014-03-28 2015-10-01 Mediatek Inc. Method for performing system power control within an electronic device, and associated apparatus
CN105531642A (zh) * 2014-04-18 2016-04-27 联发科技股份有限公司 功率管理方法以及应用该功率管理方法的电子系统
US9660649B2 (en) * 2014-11-17 2017-05-23 Qualcomm Incorporated Voltage scaling for holistic energy management
CN110300943B (zh) * 2017-02-16 2023-04-25 雷蛇(亚太)私人有限公司 电源供应电路、穿戴式装置及提供电源供应给穿戴式装置的方法
US11449127B2 (en) * 2017-09-28 2022-09-20 Intel Corporation Peak power determination for an integrated circuit device
US11543878B2 (en) * 2018-05-01 2023-01-03 Intel Corporation Power control arbitration
US10739844B2 (en) * 2018-05-02 2020-08-11 Intel Corporation System, apparatus and method for optimized throttling of a processor
US10873949B1 (en) * 2019-10-22 2020-12-22 Link Labs, Inc. Battery watchdog system and methodology

Also Published As

Publication number Publication date
CN113835517A (zh) 2021-12-24
US11275663B2 (en) 2022-03-15
EP3923120A1 (en) 2021-12-15
AU2021200136A1 (en) 2021-12-23
US20210382805A1 (en) 2021-12-09
BR102021001590A2 (pt) 2021-12-14

Similar Documents

Publication Publication Date Title
US11353914B2 (en) Workload based adaptive voltage and frequency control apparatus and method
CN113950675A (zh) Type-c连接器的电力节省
US11762450B2 (en) USB Type-C subsystem power management
US11940855B2 (en) Apparatus and method for dynamic reallocation of processor power by throttling processor to allow an external device to operate
JP2021193544A (ja) 高速で動的なキャパシタンス、周波数、及び/又は電圧スロットリング装置及び方法
TW202206973A (zh) 漏電流退化控制及量測
CN113809727A (zh) 驱动器辅助esd保护装置和方法
CN117597649A (zh) 热优化功率输送
CN114174951A (zh) 低功率时钟门电路
EP3945426B1 (en) Low latency fine grain system-on-chip throttling apparatus and method on usb type-c port
US11757434B2 (en) High performance fast Mux-D scan flip-flop
TW202226016A (zh) 安全的裝置電力啟動設備及方法
US11791819B2 (en) Low power flip-flop with reduced parasitic capacitance
JP2022097390A (ja) 動的usb-cモード選択ospmポリシー方法及び装置
TW202127171A (zh) 數位線性調節器鉗位方法及設備
CN113625859A (zh) 智能预测处理器空闲时间的装置及方法
CN113841200A (zh) 基于抑制的存储器刷新改进电池寿命
US11705750B2 (en) Power negotiation sequence to improve user experience and battery life
US20210194468A1 (en) Double edge triggered mux-d scan flip-flop

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20231206