JP2017529600A - システム・オン・チップにおけるメモリアクセスの電力管理 - Google Patents

システム・オン・チップにおけるメモリアクセスの電力管理 Download PDF

Info

Publication number
JP2017529600A
JP2017529600A JP2017508988A JP2017508988A JP2017529600A JP 2017529600 A JP2017529600 A JP 2017529600A JP 2017508988 A JP2017508988 A JP 2017508988A JP 2017508988 A JP2017508988 A JP 2017508988A JP 2017529600 A JP2017529600 A JP 2017529600A
Authority
JP
Japan
Prior art keywords
memory
power state
module
modules
power
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.)
Granted
Application number
JP2017508988A
Other languages
English (en)
Other versions
JP6322838B2 (ja
Inventor
アール. パルティワラ、スケク
アール. パルティワラ、スケク
ビビカル、ヴァスデヴ
メイチャー、ステファン
アール. ロイット、ヴァルマ
アール. ロイット、ヴァルマ
エイブラハム、フィリップ
ジェイ. ヴァズ、アーウィン
ジェイ. ヴァズ、アーウィン
カシュウリイア、マナン
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 JP2017529600A publication Critical patent/JP2017529600A/ja
Application granted granted Critical
Publication of JP6322838B2 publication Critical patent/JP6322838B2/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
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/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/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • 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

Abstract

システム・オン・チップ(SOC)のための電力状態を管理するための技術および機構。SOCの複数のモジュールは、メモリへの1回または2回以上のアクセスを含むタスクを実行する第1のモジュールを含んでいる。一実施形態では、SOCは、パス・ツー・メモリ・アベイラブル(PMA)電力状態およびパス・ツー・メモリ・ノット・アベイラブル(PMNA)電力状態のうちの1つへ遷移し、上記遷移は、タスクの間、複数のモジュールのうちの第1のモジュールのみが、メモリへアクセスすることになるという指示に対する応答である。PMA電力状態は、メモリと第1のモジュールの間のデータ通信を有効にし、かつ、メモリと、複数のモジュールのうちの他のモジュールとの間のデータ通信を阻止する。別の実施形態では、PMNA電力状態は、メモリと複数のモジュールのいずれとの間のデータ通信も阻止するが、PMNA電力状態からPMA電力状態への小さなレイテンシの遷移を可能にする。

Description

本明細書で述べる実施形態は、一般に、集積回路の電力管理に関する。より詳細には、ある実施形態は、これらには限定はされないが、システム・オン・チップのメモリへの電力効率の良いアクセスを容易にする電力状態を含んでいる。
システム・オン・チップ(SOC)では、SOCの回路構成部品は単一のチップ上に集積されている。SOC集積回路は、セット・トップ・ボックス、携帯電話、ポータブル・メディア・デバイスなどを伴うものなどの埋め込みアプリケーションを含むさまざまなアプリケーションで、よりいっそう一般的となっている。SOC内の構成部品の高い集積度が、チップ面積の節約およびより良好な信号品質などの利点をもたらす一方で、電力消費およびパフォーマンスレイテンシが、こうしたSOCを含むデバイスにとってますます重要な制約となってきている。特にポータブルSOCアプリケーションに対して、効果的な電力管理機能は、多くのSOCの実施の重要な側面である。
メモリアクセスは、SOCの効率およびパフォーマンスに大きな影響を与える。多くの場合、SOCの異なった構成部品が同一のメモリリソースへさまざまにアクセスする。既存のSOCメモリアクセスソリューションは、SOCのメモリへのアクセスが必要なときに、SOC全体、およびSOC用のメイン電圧供給源の電源を入れることをさまざまに伴っている。しかし、こうしたアプローチに関しては、少なくともレイテンシおよび遷移のエネルギーの観点において、高額な費用がかかる。さらに、構成部品の動作のためのレイテンシ要件、メモリへアクセスする際の電力効率など、SOCの構成部品間でのメモリの共有に関する課題がある。
本発明のさまざまな実施形態を、添付の図面の図に、限定を目的としてではなく、例示を目的として示している。
一実施形態に係る、メモリアクセスを提供するためのシステム・オン・チップの構成要素を示すハイレベル機能ブロック図である。 一実施形態に係る、システム・オン・チップを動作させるための方法の要素を示すフロー図である。 一実施形態に係る、システム・オン・チップの電力状態遷移を示す状態図である。 一実施形態に係る、システム・オン・チップを動作させるための信号交換の要素を示すタイミング図である。 一実施形態に係る、システム・オン・チップによって実行されるタスクの要素を示すタイミング図である。 一実施形態に係る、メモリリソースへのアクセスを提供するためのコンピュータプラットフォームの要素を示すハイレベル機能ブロック図である。 一実施形態に係る、メモリリソースへのアクセスを提供するためのモバイル機器の要素を示すハイレベル機能ブロック図である。
SOC回路内の集積レベルが上がるにつれ、メモリリソースを利用するSOC構成部品の数および種類も増加する。その結果、SOC構成部品に対して、電力効率の良いメモリアクセスを提供する必要性が高まっている。本明細書で述べる技術および機構は、SOC内に存在する複数のモジュールのうちの特定のモジュールによるメモリへの効率の良いアクセスを容易にする電力状態をさまざまに提供する。こうした技術および/または機構は、メモリへのアクセスが、第1のSOCモジュールには提供されるが、SOCの異なる電力状態において別の方法でメモリへアクセスすることができる可能性のある1つまたは複数の他のSOCモジュールには提供されない、第1のSOC電力状態を提供し得る。電力状態は、第1のモジュールおよびその他のモジュールによるメモリへのアクセスを阻止する第2の電力状態をさらに備え得る。ただし、第2の電力状態は、第1の電力状態への小さなレイテンシでの遷移を容易にするスタンバイの電力状態として機能し得る。
図1は、ある実施形態に係る、メモリアクセスのための電力管理を提供するためのシステム・オン・チップ(SOC)100の要素を示している。SOC100は、複数の構成部品(本明細書では「モジュール」と称す)を備える集積回路(IC)の一例にすぎず、構成部品のそれぞれは、そのICに含まれるかまたは連結されている同一のメモリリソースへさまざまにアクセスする。こうしたICは、複数のモジュールに対するメモリのアクセス性に関して、複数のモジュールのいくつかのみ(例えば、1つのみ)に対してメモリアクセスをサポートする、1つまたは複数のSOC電力状態を提供し得る。
本明細書では、SOC100のモジュール130によるメモリアクセスを容易にする電力状態に関するある実施形態について述べており、この実施形態では、こうした電力状態は、SOC100の1つまたは複数の他のモジュール110によるメモリアクセスを阻止する。ただし、こうした議論は拡張して、SOCの各種の他のモジュールのいずれによるメモリアクセスにも、追加的または代替的に適用され得る。1つまたは複数の他のモジュール110の特定の数およびタイプは、単なる例示であり、特定の実施形態を限定するものではない。
SOC100は、デスクトップコンピュータ、ラップトップコンピュータ、ハンドヘルドデバイス(例えば、スマートフォン、パームトップデバイス、タブレットなど)、ゲームコンソール、無線通信デバイスまたは他のこうした計算能力を持つデバイスの構成部品として動作する回路を含み得る。このような動作を容易にするため、SOC100は、複数のモジュール(例えばモジュール130および1つまたは複数のモジュール110を含んで)、およびそれらに連結されたメモリコントローラ140を備え得、メモリコントローラ140は、複数のモジュールに、SOC100に含まれるかまたは連結されているメモリへのアクセスを提供する。限定ではなく例示の目的で、メモリコントローラ140は、SOC100に含まれるダイナミック・ランダム・アクセ・メモリ(DRAM)モジュールなどのメモリ145へのアクセスを提供し得る。別の実施形態では、メモリ145は、パッケージされたデバイスのICダイスタック内でSOC100とスタックされ得る別のICチップ(図示省略)の一部である。メモリ145および/またはメモリコントローラ140の動作は、例えば、DDR4 SDRAM JEDEC Standard JESD79−4(2012年9月)などのデュアル・データ・レート(DDR)仕様、HBM DRAM Standard JESD235(2013年10月)などの広帯域幅メモリ(HBM)仕様、または他のこうした仕様のいくつかの要件またはすべての要件に従い得る。
相互接続回路120は、データおよび/または制御メッセージのさまざまな交換のために、SOC100のさまざまなモジュールをメモリコントローラ140(およびいくつかの実施形態では、相互に)に連結し得る。相互接続回路120は、モジュール110、130をメモリコントローラ140にさまざまに連結するために、1つまたは複数の、バス、クロスバー、ファブリックおよび/または他の接続機構の各種組合せのいずれかを含み得る。相互接続回路120は、例えば、1つまたは複数の、アドレスバスおよび/またはデータバスを備え得る。モジュール110、130の一部またはすべてが、それぞれ個別の通信経路を経由してメモリコントローラ140に連結され得ると理解するべきである。例えば、いくつかの実施形態によれば、1つまたは複数の、専用のデータラインおよび/または制御ラインなどを使用して、モジュール110、130の特定の1つのみをメモリ145に連結し得る。モジュール110、130とメモリコントローラ140との間の通信は、従来の通信技術から適用され得るが、従来の通信技術は本明細書では詳述しておらず、また、ある実施形態を限定するものではない。
モジュール110、130は、メモリ145へアクセするための要求をメモリコントローラ140へさまざまに送信し得る(例えば、モジュール110、130は、互いに無関係にこうしたアクセスを要求する)。この点に関して、ある実施形態が限定されることはないが、1つまたは複数のモジュール110は、メモリコントローラ140に連結されたプロセッサユニット111を含み得る。プロセッサユニット111は、オペレーティングシステム(OS)(図示省略)を実行する1つまたは複数のコア112を含み得る。それに加えて、プロセッサユニット111は、例えばスタティック・ランダム・アクセス・メモリ(SRAM)など、またはさまざまなタイプの内部の集積メモリのいずれかなどのキャッシュメモリ(図示省略)を含み得る。一例では、メモリ145は、プロセッサユニット111によって実行され得るソフトウェアプログラムを記憶し得る。いくつかの実施形態では、プロセッサユニット111は、基本入出力システム(BIOS)命令(例えば、メモリ145または別個のストレージデバイスに記憶された)にアクセスすることができ得る。
1つまたは複数のモジュール110は、画像データ処理を実行するための例示的な表示モジュール114、およびSOC100の1つまたは複数の他の構成部品(図示省略)のハブとしての役割を果たすハブモジュール116に代表されるように、追加的または代替的なモジュールを含み得る。ハブモジュール116は、例えば、プラットフォームハブ、入出力(I/O)ハブまたは他のこうしたハブ回路を備え得る。プロセッサユニット111と同様に、表示モジュール114およびハブモジュール116は、メモリコントローラ140を経由してさまざまな時間にそれぞれメモリ145へアクセスし得る(例えば、SOC100の与えられた電力状態に応じて)。
SOC100は、異なった時間に2つ以上の電力状態のいずれかで動作し得、こうした電力状態間の遷移をサポート、開始、またはその他方法で実行するためのロジック(例えば、ハードウェア、ファームウェア、および/または、ソフトウェアの実行を含む)を提供し得る。一例示的実施形態によれば、SOC100の電力管理ユニット105は、ハードウェアを含み、および/またはソフトウェアを実行してSOC100用に構成されるべき与えられた電力状態を特定する状態ロジック162を備え得る(例えば、ここで、こうした特定は、モジュール110、130の現在の動作および/または予測される今後の動作に一部基づく)。さらに、電力管理ユニット105は、異なる時間に状態ロジック162によって特定される異なった電力状態をさまざまに構成するための回路を含んでいるかまたはそれに連結され得る。限定ではなく例示の目的で、電力管理ユニット105は、SOC100の1つまたは複数の構成部品のクロックゲーティングを実行してSOC100の電力状態をさまざまに構成する回路を備えたクロック・ゲート・ロジック160を含み得る。これに代えてまたはこれに加えて、電力管理ユニット105は、このような電力状態を構成するための電力ゲーティングを実行するための電力・ゲート・ロジック164を含み得る。いくつかの実施形態では、電圧供給ロジック166は、1つまたは複数の供給電圧を選択的にアクティブ化または非アクティブ化して与えられた電力状態を実行し得る。こうしたクロックゲーティング、電力ゲーティングおよび/または電圧制御を実施する特定の機構は、従来の電力制御機構から適用され得るので、ある実施形態の特徴を曖昧にすることを避けるため、従来の電力制御機構につては本明細書で詳しくは述べない。
一実施形態では、電力管理ユニット105で構成された1つまたは複数の電力状態は、メモリ145との通信をモジュール110、130のサブセット(例えばそのサブセットのみ)に対して選択的に可能にすることができる。第1の電力状態は、メモリコントローラ140を経由したモジュール130とメモリ145との間のデータ通信を有効にし得、その第1の電力状態は、1つまたは複数のモジュール110の一部またはすべてがメモリ145とのデータ交換に参加できないようにもする。いくつかの実施形態では、第2の電力状態は、モジュール130によるメモリ145のアクセス性のために第1の電力状態への迅速な遷移を可能にするスタンバイモードとしての役割を果たす。こうした電力状態は、SOC100の動作に対してクリティカルと考えられるか、またはさもなければ、1つまたは複数のモジュール110が少なくともメモリアクセスに関して非アクティブであることが予測される時間の間に実行されるべき、モジュール130のタスクを受け入れるにあたって、電力効率の向上を提供し得る。
例えば、モジュール130は、SOC100とそれに連結されているエージェント(図示省略)との間のI/O通信のための機能を提供し得る。こうしたエージェントは、SOC100を含むプラットフォームに存在するか、またはこれに代えて、1つまたは複数の、有線ネットワークおよび/または無線ネットワークの各種組合せのいずれかを経由して、こうしたプラットフォームと通信し得る。一実施形態では、モジュール130は、通信プロセッサ、モデム、WiFiネットワークモジュール、Bluetooth(登録商標)ネットワークモジュール、携帯電話モジュールまたは他のこうした通信I/Oインタフェースハードウェアを備えている。いくつかの実施形態では、モジュール130は、測地系情報を交換するためにグローバル・ポジショニング・システム(GPS)モジュール、グローバル・ナビゲーション・サテライト・システム(GNSS)モジュールまたは他の受信機および/または送信機回路を備えている。さらに他の実施形態では、モジュール130は、SOC100がオーディオデータのストリームを出力または受信するためのストリーミング回路を備えている。これらは、メモリアクセスを含むタスクを実行するためにモジュール130によって提供される機能のほんの一部の例である(例えば、一方で、1つまたは複数の他のモジュール110は、比較的深い低電力モードにある)。
1つまたは複数のモジュール110が非アクティブ(少なくともメモリ145へのアクセスに関して)である間にモジュール130の動作を効率よくサポートするために、電力管理ユニット105は、電力状態を実行してメモリ145と1つまたは複数のモジュール110との間のデータ通信を選択的に無効にし得る。さらに、モジュール130はメモリ145へアクセスしていないが、1つまたは複数のモジュール110のアクティビティ中にメモリ145へ切迫してアクセスすることが予測され得る間、電力管理ユニット105は、別の電力状態を選択的に実行してさらなる電力効率をもたらし得る。こうした電力状態は、モジュール130と電力管理ユニット105との間で交換される信号伝達150に応答してさまざまに実行され得る。いくつかの実施形態では、モジュール130は、モジュール110、130のうちで、電力管理ユニット105に対して、こうした電力状態が実行されるべきことを要求、またはその他の方法で信号を送ることができる唯一のものである。信号伝達150は、ファームウェア(または他のこうしたコード)の実行とは独立して、電力状態遷移を実行する制御回路の高速動作を提供し得る。
図2は、一実施形態に係る、SOCを動作させるための方法200の要素を示している。方法200は、例えば、SOC100の電力状態をさまざまに構成するように実行され得る。一実施形態では、方法200は、電力管理ユニット105の特徴の一部またはすべてを有する回路で実行される。
方法200は、210に、SOCの複数のモジュールのうちの第1のモジュールのタスクの間、SOCの複数のモジュールによるメモリへのアクセスは、第1のモジュールによるアクセスとなることを検出することを含み得る。第1のモジュールは、モジュール130の特徴の一部またはすべてを有し得る(例えば、複数のモジュールが、メモリコントローラ140を経由してメモリ145連結される)。210で検出することは、例えば電力管理ユニット105によって受信される、複数のモジュールの現在のアクティビティおよび/または複数のモジュールの予測される今後のアクティビティを示す、1つまたは複数の信号に基づき得る。こうした1つまたは複数の信号は、少なくとも、複数のモジュールのうちの、1つまたは複数の他のもののメモリアクセスを無効にする(その結果電力が節約される)ことを可能にしている期間、複数のモジュールのうちの第1のモジュールのみが、メモリアクセスを要求することが予測されることを明示するかまたはその他の方法で示し得る。こうした1つまたは複数の信号は、事前入力として受信され得るが、その信号の特定の数および/またはタイプは、ある実施形態を限定するものではない。こうした1つまたは複数の信号が生成され、通信されおよび/または評価される可能性のある特定の機構は、従来のプラットフォームパフォーマンス評価技術から適用され得るが、従来のプラットフォームパフォーマンス評価技術は、本明細書では詳述しない。
210で検出することに応答して、方法200は、220で、SOCを第1の電力状態および第2の電力状態の1つへ移行させ得、第1の電力状態は、メモリと第1のモジュールとの間の通信を有効にし、メモリと、第1のモジュール以外の複数のモジュールのうちのいずれとの間のデータ通信も阻止する。簡潔化のため、本明細書ではこうした第1の電力状態は、パス・ツー・メモリ・アベイラブル(PMA)電力状態と称す。これに対して、第2の電力状態は、メモリと複数のモジュールのうちのいずれとの間のデータ通信も阻止し得る。ただし、第2の電力状態は、第1の電力状態への迅速な遷移(例えば、SOCの別の電力状態によって提供されている可能性のある、対応するいかなる遷移と比べても)を可能にし得る。その結果、第2の電力状態は、第1の電力状態における第1のモジュールによるメモリアクセスの迅速な再開を容易にし得る。簡潔化のため、本明細書ではこうした第2の電力状態は、パス・ツー・メモリ・ノット・アベイラブル(PMNA)電力状態と称す。
第1の電力状態の間、方法200は、230で、第1のモジュールのためのタスクの動作を実行するためにデータを交換する。230での交換は、SOCのメモリコントローラを経由して第1のモジュールとメモリとの間でデータを交換することを含み得る。230でのデータ交換の前または後に、方法200は、240で、第1の電力状態と第2の電力状態の間でSOCの遷移を実行し得る。240での遷移に起因する、メモリおよび複数のモジュールとのデータ通信の有効化と、メモリおよび複数のモジュールとのデータ通信の阻止との間の変化は、メモリと第1のモジュールとの間の通信に関する変化である。その結果、第1のモジュールは、複数のモジュールのうちで、240で実行される遷移に起因して、メモリとデータを交換することを阻止されている状態と、メモリとデータを交換することを許可されている状態との間で遷移させられる唯一のものであり得る。これに対して、その他のモジュールは、それぞれ240での遷移の前後およびその最中、メモリと通信することができないままであり得る。
220で遷移することは、第1の電力状態および第2の電力状態のいずれか以外のSOCの電力状態からSOCを遷移させることを含み得る。例えば、図3は、方法200に従って動作するSOCについての電力状態および電力状態遷移を含む状態図300を示している。状態図300に示すように、一実施形態に係る状態マップ305(パス・ツー・メモリ・アベイラブルの電力状態PMA310およびパス・ツー・メモリ・ノット・アベイラブルの電力状態PMNA320を含む状態マップ305)は、SOCの1つまたは複数の他の電力状態を含む大きな状態マップの一部であり得る。状態マップ305は、PMA310からPMNA320への遷移315を含んでいる。こうした遷移315は、第1のモジュールによる予測される切迫したメモリアクセスの前に、少なくとも一時的に電力消費を削減する(PMA310によって提供される他の電力節約に加えて)機会を検出するSOCの電力管理・ロジックに応答して発生し得る。状態マップ305は、例えばこうした次のメモリアクセスの必要性を示す第1のモジュールに応答して発生し得る、PMNA320からPMA310への遷移325をさらに含んでいる(例えば、その他のモジュールの非アクティビティが持続することが予測される間)。
図3の状態図300および表350は、さまざまな従来の電力状態に関連してPMA310とPMNA320の間の明確な区別を示している。ただし、状態マップ305の外側にある、タイミング図300の状態および状態遷移は、単なる例示であり、ある実施形態を限定するものではないことを当業者の読者であれば理解するであろう。一実施形態では、状態図300は、状態マップ305の外側に、PMA310から完全動作電力状態であるActive330への遷移335をさらに含んでいる。Active330にいる間、SOCは、SOCの複数のモジュールのそれぞれいずれによるメモリアクセスもサポートし得る。状態図300は、状態マップ305の外側に、さまざまなロー・電力状態LPS1 340a、LPS2 340b、…、LPSn 340nをさらに示しており、こうしたロー・電力状態は、それぞれの遷移345a、345b、…、345nを経由してPMA310へ、またはPMA310から、さまざまに移行し得る。こうしたロー・電力状態の一部またはすべては、少なくとも、複数のモジュールによるメモリアクセスをサポートすることに関して、複数のモジュールを平等に取り扱い得る。この点においてある実施形態が限定されることはないが、LPS1 340a、LPS2 340b、…、LPSn 340nは、さまざまな従来のスタンバイ、スリープ、休止および/または他の電力状態のいずれかを含み得る。こうした従来の電力状態の例としては、例えば、米国カリフォルニア州サンタクララのIntel Corporationが製造したSOCのためのSOi1、SOi2、…などの電力状態が挙げられる。
表350に示すように、ロー・電力状態LPS1 340a、LPS2 340b、…、340nは、データ交換を阻止するために、メモリ自体を無効化することをさまざまに含み得る(例えば、メモリデバイスが切り離される、電力ダウンされる、クロックゲートされる、電力ゲートされるなど)。例示の表350に示すように、こうした無効化は、例えば、メモリを、メモリとメモリコントローラとの間のデータ交換を阻止するセルフリフレッシュモードにすることを含み得る。これに対して、メモリは、第1のモジュールとのデータ交換を容易にするため、PMA310の間有効化され、また(いくつかの実施形態では)PMNA320の間そのように有効化され得る(例えば、SOCの他の何らかの構成部品が、代わりにPMNA320において、こうしたデータ交換を阻止するように構成される)。
一実施形態では、メモリ自体は、PMNA320の間部分的に無効化される(例えば、メモリをセルフリフレッシュモードにすることによって、および/またはメモリクロック信号のメモリへの伝達をゲーティングするか、阻止するか、またはその他の方法で制限することによって)。PMA状態の間、メモリは、代わりに、メモリコントローラから明確なメモリリフレッシュ信号を受信するように構成され得る(例えば、セルフリフレッシュモードで動作するのではなくむしろ)。例えば、表350に示すように、PMA電力状態の間、メモリクロック信号は、メモリへ供給され得、PMNA電力状態の間、メモリクロック信号はメモリへ供給されないようにする。
これに代えてまたはこれに加えて、システムクロック信号は、PMA310の間(また、いくつかの実施形態では、PMNA320の間)、第1のモジュールへ伝達される(が、SOCの他のモジュールへは伝達されない)が、SOCの1つまたは複数の他のロー・電力状態の間は第1のモジュールへもその他のモジュールへも伝達されない。その結果、PMA電力状態とPMNA電力状態との間の遷移(例えば、遷移315、325のうちの1つ)は、第1のモジュール、メモリコントローラまたはメモリの、1つまたは複数への電力ゲーティングおよび/またはクロックゲーティングを変化させることを含み得る。PMNA320の間、メモリ、メモリコントローラおよび/または第1のモジュールが、少なくとも部分的に電力を供給され、および/またはクロックされたままである場合、SOCのこうした構成部品の一部またはすべては、こうした構成部品へのクロック信号伝達を再開することによって、遷移325の「瞬時起動」の実施に容易に利用可能であり得る。
いくつかの実施形態では、第1のモジュール以外のSOCのモジュールは、(PMA電力状態以外の)動作電力状態の間、パワーレールに連結され得、そのモジュールはPMA状態および/またはPMNA電力状態の間、クロックゲートされ、電力ゲートされ、および/またはパワーレールから切り離される。例えば、Active330の間、複数のモジュールのそれぞれは、それぞれのパワーレールを経由して電力を受け取るように連結され得、PMNA320の間は、複数のモジュールのうちの第1のモジュールのみが、メモリアクセスを有効にするために十分な電力を受け取るように連結される。第1のモジュールは、複数のモジュールのうちで、PMNA320の間にこうした電力に連結される唯一のものでもあり得る。
いくつかの実施形態では、メモリコントローラは、PMA電力状態の間、電力を受け取るように連結され、また、いくつかの実施形態では、PMNA電力状態の間、少なくともいくらかの電力を受け取るように連結され得る。例えば、メモリコントローラは、PMNA320の間、電力ゲートされ、および/またはクロックゲートされ得る。これに代えてまたはこれに加えて、PMA電力状態は、メモリコントローラと、第1のモジュール以外のSOCの1つまたは複数のモジュールとの間のデータ通信を阻止するために切り離され、および/または電力ダウンされている相互接続回路を含み得る。こうした一実施形態では、PMNA電力状態は、メモリコントローラと第1のモジュールとの間のデータ通信をさらに阻止するために切り離され、および/または電力ダウンされている他の相互接続回路を含み得る。
ここで図4を参照すると、SOCの1つのモジュールとSOCの電力管理・ロジックとの間で交換される信号についてのタイミング図400を示している。モジュールは、SOCのPMA電力状態によってメモリへのアクセスを選択的に提供され得る。タイミング図400は、それぞれPMA電力状態またはPMNA電力状態への1回または2回以上の遷移を制御するための交換(例えば、信号150の交換など)を表し得る。例えば、こうした1つまたは複数の電力状態遷移は、遷移315,325の1つまたは両方を含み得る。タイミング図400に示されている信号の特定のタイミングは、ある実施形態を限定するものではない。
例示的なタイミング図400に示すように、PMA電力モードの要求が予測されることを、PreWake410が前もって電力管理・ロジックへ知らせる場合に、信号PreWake410がモジュールによってアサートされ得る。PreWake410に応答して、SOCの1つまたは複数のクロック信号源が起動され得る(例えば、SOCが、LPS1 340a、LPS2 340b、…、LPSn 340nのうちの1つなどのロー・電力状態から遷移するために)。
時刻t1に、電力管理・ロジックが、PMA電力状態を構成することを要求するために、モジュールによって信号PMA_REQ420がアサートされ得る。続いて、電力管理・ロジックは、PMA_REQ420によって伝達された要求をモジュールに承認して返す信号PMA_ACK430をアサートし得る。続いて、要求信号PMA_REQ420はデアサートされる(例えば、PMA_ACK430の立ち上がりエッジがモジュールによって受信された後で)。
PMA電力状態要求に応答して、モジュールがメモリとデータを交換するためにリンクを利用可能であることをモジュールに信号伝達するために、電力管理・ロジックによってMEM_LINK_STATUS470がアサートされ得る。それに応じて、モジュールは、そのリンクを経由してメモリへアクセスし得る(例えば、例示した時刻t5から時刻t6までの期間の間)。この期間、電力管理・ロジックがPMNA電力状態を構成することをさまざまに要求するために、信号PMNA_REQ440がモジュールによって1回または2回以上アサートされ得る。こうしたPMNA_REQ440のアサートは、モジュールによって非アクティビティ期間が次にやってくることを予測して行われ得る(少なくともメモリアクセスに関して)。SOCは、このメモリへアクセスするタスクのストリーミングおよび/または他の動作の間に、PMA電力状態とPMNA電力状態との間を複数回遷移し得る。
タスクが完了したとき、(少なくとも一時的に)モジュールがもはやメモリを要求しないこと、および場合によっては、予測される今後のリンクアップ手順に起因するレイテンシが許容可能であることを電力管理ユニットに示すために、モジュールは、信号PMA_RELEASE450をアサートし得る。次いで、モジュールは、PMA_RELEASE450の受領を電力管理・ロジックに承認して返す信号PMA_RELEASE_ACK460をアサートし得る(例えば、MEM_LINK_STATUS470のデアサート中に)。MEM_LINK_STATUS470が、メモリが解放されたことを示した後、PMA電力状態が必要なくなることを電力管理ユニットへ信号伝達するためにPreWake410がデアサートされ得る(例えば、ここで、SOCはロー・電力状態へ遷移することになる)。
ここで、図5を参照すると、SOCの動作を示すためにタイミング図500、510を示しており、こうした動作は、一実施形態に係るさまざまな電力状態遷移を含んでいる。タイミング図500、510は、例えば、SOC100の一部またはすべての特徴を含むSOCの動作を表し得る。一実施形態では、図5に示す電力遷移の1つまたは複数が、方法200の動作に従って実行される。
タイミング図500、510は、例えばスイスのジュネーブの国際電気通信連合のInternational Mobile Telecommunications−2000(IMT−2000)の仕様に従ったものなど第3世代(3G)通信を支持して実行され得るメモリページング動作の特徴を表している。ただし、タイミング図500、510の特徴は、異なった実施形態に係る、さまざまな1つまたは複数の追加的な、または代替的な動作のいずれかに同様に適用され得る。
タイミング図500に示すように、SOCのモジュール(この例ではモデム)は、周期的に(例えば1,280ミリ秒毎に)起動して、SOCのメインメモリへのアクセスを要求する必要なページング動作一切を実施する。この点においてある実施形態が限定されることはないが、典型的なページングサイクルは約20ms続き得る。一実施形態では、モデムは、例示的な20msのページングサイクルのいくらかの期間のみアクティブである通信プロセッサ、コントローラ、ステートマシンまたは他の回路を含み得る。例えば、モデムのプロセッサは、サイクルの約10%のみメモリへのアクセスを必要とし得る。ただし、メモリへのアクセスを必要とする場合、プロセッサは、こうしたアクセスを受け入れる電力状態への遷移において、大きなレイテンシを許容することができ得ない。
タイミング図510に示すように、モデムのプロセッサ(または他の回路)がアクティブである場合、プロセッサ(または他の回路)は、SOCをPMA電力状態に構成するためにPMA_req信号をアサートし得る。こうしたPMA電力状態の間、モデムプロセッサは、非常に小さなレイテンシでメインメモリへアクセスでき得る。モデムのプロセッサがアイドル状態に入った場合(メモリアクセスに関して)、モデムは、SOCをPMNA電力状態へ遷移させるためにPMNA_req信号をアサートし得る。PMNA電力状態の構成により、モデムがメインメモリへアクセスできないようにし得る。ただし、PMNA電力状態は、PMA電力状態の手段に加えて追加の電力節約手段を用い得る。限定ではなく例示の目的で、PMNA電力状態の構成は、メモリをセルフリフレッシュモードにすること、および/または別の方法でクロック信号伝達を促す1つまたは複数のフェーズ・ロック・ループ(PLL)を無効にすることを含み得る。1つの20msページングサイクルの間に、SOCはPMA電力状態とPMNA電力状態との間で複数回遷移し得る。
図6は、SOCの電力管理が実施され得るコンピューティングシステムの一実施形態のブロック図である。システム600は、本明細書に記載の実施形態に係るコンピューティングデバイスを表しており、ラップトップコンピュータ、デスクトップコンピュータ、サーバ、ゲームまたはエンターテイメント・コントロール・システム、スキャナ、コピー機、プリンタ、または他の電子デバイスであり得る。システム600は、システム600のために処理、動作管理、および命令の実行を提供するプロセッサ620を含み得る。プロセッサ620は、システム600のために処理を提供するタイプのマイクロプロセッサ、中央処理装置(CPU)、処理コア、または他の処理ハードウェアを含み得る。プロセッサ620は、システム600のすべての動作を制御し、1つまたは複数の、プログラマブル汎用マイクロプロセッサまたはプログラマブル専用マイクロプロセッサ、デジタル・シグナル・プロセッサ(DSP)、プログラマブルコントローラ、特定用途向け集積回路(ASIC)、プログラマブル・ロジック・デバイス(PLD)など、またはこうしたデバイスの組合せであり得るか、またはそれらを含み得る。
メモリサブシステム630は、システム600のメインメモリを表しており、プロセッサ620によって実行されることになるコード、またはルーチンを実行するのに使用されることになるデータ値のための一時的なストレージを提供する。メモリサブシステム630は、リード・オンリ・メモリ(ROM)、フラッシュメモリ、1つまたは複数の種類のランダム・アクセス・メモリ(RAM)、もしくは他のメモリデバイス、またはこうしたデバイスの組合せなどの1つまたは複数のメモリデバイスを含み得る。メモリサブシステム630は、何よりも、システム600で命令を実行するためのソフトウェアプラットフォームを提供するためのオペレーティングシステム(OS)636を記憶し受け皿となる。さらに、システム600のロジックおよび処理を提供するために、他の命令638が記憶され、メモリサブシステム630から実行される。OS636および命令638は、プロセッサ620によって実行される。
メモリサブシステム630は、データ、命令、プログラムまたは他のアイテムを記憶するメモリデバイス632を含み得る。一実施形態では、メモリサブシステム630は、システム600のSOC690上に存在し、同様にSOC690上に存在するモジュールのためにメモリ632へのアクセスを提供するメモリコントローラ634を含んでいる。SOC690は、SOC100の一部またはすべての特徴を含み得る。SOC690のこうしたモジュールは、例えば、プロセッサ620,ネットワークインタフェース650、および/またはシステム600の他のこうしたさまざまな構成部品のいずれかを含み得る。SOC690の電力管理ユニットPMU695は、本明細書に述べる技術に従って、SOCの電力状態をさまざまに構成し得る。
SOC690は、バス/バスシステム610へ連結されている。バス610は、適切なブリッジ、アダプタ、および/またはコントローラで接続された、1つまたは複数の、別個の物理的バス、通信ライン/インタフェース、および/またはポイント・ツー・ポイント接続一切を表す概念である。したがって、バス610は、例えば、システムバス、PCI(Peripheral Component Interconnect)バス、ISA(Industry Standard Architecture)バス、SCSI(Small Computer System Interface)バス、USB(Universal Serial Bus)、またはIEEE(Institute of Electrical and Electronics Engineers)1394バス(一般にFirewire(登録商標)と称す)の1つまたは複数を含み得る。バス610のバスは、ネットワークインタフェース650内のインタフェースにも対応し得る。
システム600は、バス610へ連結された、1つまたは複数の入出力(I/O)インタフェース640、1つまたは複数の内部マスストレージデバイス660,および周辺インタフェース670も含み得る。I/Oインタフェース640は、ユーザがそれを通してシステム600とインタラクションする1つまたは複数のインタフェース構成部品を含み得る(例えば、映像、オーディオ、および/または英数字インタフェース)。ネットワークインタフェース650は、1つまたは複数のネットワークを介して遠隔デバイス(例えば、サーバ、他のコンピューティングデバイス)と通信する能力をシステム600に提供する。ネットワークインタフェース650は、イーサネット(登録商標)アダプタ、無線相互接続構成部品、USB(universal serial bus)、または他の有線もしくは無線の標準ベースのもしくは独自のインタフェースを含み得る。
ストレージ660は、1つまたは複数の、磁気、ソリッドステートまたは光学ベースのディスク、またはその組合せなど、不揮発方式で大量のデータを記憶するための従来の媒体であり得るか、またはそれを含み得る。ストレージ660は、コードまたは命令、およびデータ662を存続状態に保持する(すなわち、システム600への電力が遮断されても値が維持される)。メモリ630は、プロセッサ620へ命令を供給するための実行または動作メモリであるが、ストレージ660は、一般的に「メモリ」と考えられ得る。ストレージ660は不揮発性であるのに対して、メモリ630は揮発性メモリを含み得る(すなわち、システム600に対して電力が遮断された場合、データの値または状態は不定である)。
周辺インタフェース670は、具体的に前述していないハードウェアインタフェースを含み得る。周辺とは一般に、依存的にシステム600につながるデバイスをいう。依存的なつながりとは、システム600が、その上で動作を実行し、およびそれを用いてユーザがインタラクションをするソフトウェアおよび/またはハードウェアプラットフォームを提供するものである。
図7は、SOCの電力管理が実施され得るモバイル機器の一実施形態のブロック図である。デバイス700は、コンピューティングタブレット、携帯電話もしくはスマートフォン、無線利用可能なe−リーダ、または他のモバイル機器などのモバイル・コンピューティング・デバイスを表している。構成部品のいくつかが一般に示されており、こうしたデバイスのすべての構成部品がデバイス700に示されているわけではないことが理解されよう。
デバイス700は、デバイス700の主な処理動作を実行するプロセッサ710を含み得る。プロセッサ710は、マイクロプロセッサ、アプリケーションプロセッサ、マイクロコントローラ、プログラマブル・ロジック・デバイス、または他の処理手段などの、1つまたは複数の物理デバイスを含み得る。プロセッサ710によって実行される処理動作は、アプリケーションおよび/またはデバイス機能が実行されるオペレーティングプラットフォームまたはオペレーティングシステムの実行を含んでいる。処理動作は、人間のユーザとの、または他のデバイスとのI/O(入出力)に関連する動作、電力管理に関連する動作、および/またはデバイス700を別のデバイスへ接続することに関連する動作を含んでいる。処理動作は、オーディオI/Oまたは表示I/Oに関連する動作も含み得る。
一実施形態では、デバイス700は、コンピューティングデバイスにオーディオ機能を提供することに関連するハードウェア(例えば、オーディオハードウェア、およびオーディオ回路)およびソフトウェア(例えば、ドライバ、コーデック)構成部品を表すオーディオサブシステム720を含んでいる。オーディオ機能は、スピーカおよび/またはヘッドフォン出力、ならびにマイク入力を含み得る。こうした機能のためのデバイスは、デバイス700に組み入れられ得るか、またはデバイス700へ接続され得る。一実施形態では、ユーザは、プロセッサ710によって受信され、処理されるオーディオコマンドを提供することによって、デバイス700とインタラクションを行う。
表示サブシステム730は、ユーザがコンピューティングデバイスとインタラクションを行うための視覚および/または触覚表示を提供するハードウェア(例えば、表示デバイス)およびソフトウェア(例えば、ドライバ)構成部品を表している。表示サブシステム730は、ユーザへ表示を提供するために使用する特定のスクリーンまたはハードウェアデバイスを含む表示インタフェース732を含み得る。一実施形態では、表示インタフェース732は、表示に係わる少なくともいくつかの処理を実行するために、プロセッサ710から切り離されたロジックを含んでいる。一実施形態では、表示サブシステム730は、ユーザへ入出力の両方を提供するタッチスクリーンデバイスを含んでいる。
I/Oコントローラ740は、ユーザとのインタラクションに関連するハードウェアデバイスおよびソフトウェア構成部品を表している。I/Oコントローラ740は、オーディオサブシステム720および/または表示サブシステム730の一部であるハードウェアを管理するために動作し得る。さらに、I/Oコントローラ740は、デバイス700につながる追加のデバイスのための接続ポイントを示しており、その接続ポイントを通してユーザがシステムとインタラクションを行う可能性がある。例えば、デバイス700に取り付けられ得るデバイスは、マイクデバイス、スピーカもしくはステレオシステム、ビデオシステムもしくは他の表示デバイス、キーボードもしくはキーパッドデバイス、または、カードリーダもしくは他のデバイスなどの特定のアプリケーションと共に使用するための他のI/Oデバイスを含み得る。
上記のように、I/Oコントローラ740は、オーディオサブシステム720および/または表示サブシステム730とインタラクションを行い得る。例えば、マイクまたは他のオーディオデバイスを通した入力は、デバイス700の、1つまたは複数の、アプリケーションまたは機能のための入力またはコマンドを提供し得る。さらに、表示出力の代わりに、またはそれに加えてオーディオ出力が提供され得る。別の例では、表示サブシステムがタッチスクリーンを含んでいる場合、表示デバイスは入力デバイスの役割も果たし、入力デバイスは、少なくとも部分的にI/Oコントローラ740によって管理され得る。デバイス700には、I/Oコントローラ740によって管理されるI/O機能を提供するために、追加のボタンまたはスイッチも存在し得る。
一実施形態では、I/Oコントローラ740は、デバイス700に含まれ得る加速度センサ、カメラ、光センサもしくは他の環境センサ、ジャイロスコープ、グローバル・ポジショニング・システム(GPS)、または他のハードウェアなどのデバイスを管理する。入力は、直接的なユーザインタラクションの一部であり得るとともに、システムの動作に影響を与えるためにシステムに環境入力を提供するものであり得る(ノイズをフィルタリングすること、明るさ検出のために表示を調節すること、カメラにフラッシュを適用すること、または他の特徴など)。
一実施形態では、デバイス700は、バッテリ電力使用、バッテリの充電、および電力節約動作に関連する特徴を管理する、電力管理750を含んでいる。メモリサブシステム760は、デバイス700に情報を記憶するためのメモリデバイス762を含み得る。メモリサブシステム760は、不揮発性(メモリデバイスへの電力が遮断された場合に状態が変化しない)および/または揮発性(モリデバイスへの電力が遮断された場合に状態が不定である)のメモリデバイスを含み得る。メモリ760は、アプリケーションデータ、ユーザデータ、音楽、写真、文書、または他のデータ、ならびにシステム700のアプリケーションおよび機能の実行に関連するシステムデータ(長期であろうと一時的であろうと)を記憶し得る。
一実施形態では、メモリサブシステム760は、メモリコントローラ764(システム700の制御の一部とも考えることができる)を含んでいる。デバイス700は、メモリコントローラ764、およびメモリコントローラ764を経由してさまざまにメモリ762へアクセスすることになる1つまたは複数のモジュール(例えば、プロセッサ710、モデム778などを含む)を備えたSOC705を含み得る。SOC705は、SOC100の一部またはすべての特徴を含み得る。電力管理750は、異なる時刻にSOC705の異なる電力状態をさまざまに構成し得、本明細書で述べるように、電力状態は、PMA電力状態およびPMNA電力状態を含んでいる。
接続770は、デバイス700が外部のデバイスと通信することを有効にするため、ハードウェアデバイス(例えば、無線および/または有線のコネクタおよび通信ハードウェア)およびソフトウェア構成部品(例えば、ドライバ、プロトコルスタック)を含み得る。デバイスは、他のコンピューティングデバイス、無線アクセスポイントもしくは基地局などの別個のデバイス、またはヘッドセット、プリンタ、もしくは他のデバイスといった周辺である可能性がある。
接続770は、複数の異なるタイプの接続を含み得る。一般化するため、デバイス700は、セルラ接続772および無線接続774(例えば、例示的なダイポールアンテナ776を経由した)とともに示している。セルラ接続772とは、一般に、GSM(登録商標)(global system for mobile communications)または変形もしくは派生、CDMA(符号分割多元接続)または変形もしくは派生、TDM(時分割多重)または変形もしくは派生、LTE(long term evolution(「4G」とも称される))、または他のセルラサービス標準を経由して提供されるなど、無線キャリアによって提供されるセルラネットワーク接続をいう。無線接続774とは、セルラではない無線接続をいい、パーソナル・エリア・ネットワーク(Bluetooth(登録商標)など)、ローカル・エリア・ネットワーク(WiFiなど)、および/またはワイド・エリア・ネットワーク(WiMaxなど)、または他の無線通信を含み得る。無線通信とは、非固体媒体を通した変調電磁放射の使用によるデータの伝送をいう。有線通信は固体通信媒体を通して発生する。
周辺接続780は、ハードウェアインタフェースおよびコネクタ、ならびに周辺接続を行うためのソフトウェア構成部品(例えば、ドライバ、プロトコルスタック)を含んでいる。デバイス700は、他のコンピューティングデバイスに対する周辺デバイスになること(782「へ」)、およびデバイス700に接続される周辺デバイスを有すること(784「から」)との両方の可能性があることが理解されよう。デバイス700は、一般に、デバイス700上のコンテンツを管理する(例えば、ダウンロードおよび/またはアップロードする、変更する、同期する)などの目的のために他のコンピューティングデバイスと接続するための「ドッキング」コネクタを有している。さらに、ドッキングコネクタは、デバイス700が例えば視聴覚システムまたは他のシステムへのコンテンツ出力を制御することを可能にする特定の周辺装置と、デバイス700がつながることを可能にし得る。
独自のドッキングコネクタまたは他の独自の接続ハードウェアに加えて、デバイス700は、共通または標準ベースのコネクタを経由して周辺接続780を行い得る。共通のタイプは、USB(Universal Serial Bus)コネクタ(いくつかの異なったハードウェアインタフェースのいずれかを含み得る)、MiniDisplayPort(MDP)を含むDisplayPort、高解像度マルチメディアインタフェース(HDMI(登録商標))、Firewire(登録商標)、またはその他のタイプを含み得る。
一実施例では、SOC回路は、第1のモジュールを含む複数のモジュールであって、複数のモジュールはそれぞれ、メモリへのアクセスを要求するように構成されるそれぞれの回路を備える複数のモジュールと、複数のモジュールのそれぞれに連結されるメモリコントローラと、第1のモジュールのタスクの間、複数のモジュールによるメモリへのアクセスは、第1のモジュールによるアクセスとなることを示す1つまたは複数の信号を受信するように構成される回路を備える電力管理ユニットとを備えている。上記1つまたは複数の信号に応答して、電力管理ユニットは、SOC回路を第1の電力状態および第2の電力状態のうちの1つへ遷移させることになり、第1の電力状態は、メモリと第1のモジュールとの間のデータ通信を有効にし、かつ、メモリと、第1のモジュール以外の複数のモジュールのうちのモジュールとの間のデータ通信を阻止する。第1のモジュールは、第1のモジュールがメモリコントローラを経由してメモリとデータを交換することを含む、タスクの動作を実行するためにデータを交換することになり、また、電力管理ユニットは、第1の電力状態と第2の電力状態との間の遷移をさらに実行することになり、遷移に起因する、メモリと複数のモジュールとの間の通信の有効化と、メモリと複数のモジュールとの間の通信の阻止との間の変化は、メモリと第1のモジュールとの間の通信に関する変化である。
一実施形態では、SOCはメモリを含んでいる。別の実施形態では、第1の電力状態の間、メモリへメモリクロック信号が供給され、かつ、第2の電力状態の間、メモリへメモリクロック信号が供給されないようにする。別の実施形態では、第1の電力状態の間および第2の電力状態の間、第1のモジュールへクロック信号が供給される。別の実施形態では、第1の電力状態および第2の電力状態以外の、システム・オン・チップの電力状態の間、第1のモジュール以外の複数のモジュールのうちの1つがパワーレールへ連結され、かつ、第1の電力状態または第2の電力状態の間、複数のモジュールのうちの上記1つがパワーレールから切り離される。
別の実施形態では、第1の電力状態および第2の電力状態以外の、アクティブな電力状態の間、複数のモジュールのそれぞれは、それぞれのパワーレールを経由して電力を受け取るように連結され、かつ、第1の電力状態の間、複数のモジュールのうちの第1のモジュールのみが、それぞれのパワーレールを経由して電力を受け取るように連結される。別の実施形態では、第2の電力状態の間、複数のモジュールのうちの第1のモジュールのみが、それぞれのパワーレールを経由して電力を受け取るように連結される。別の実施形態では、第1の電力状態の間、メモリコントローラが電力を受け取るように連結される。別の実施形態では、第2の電力状態の間、メモリコントローラが電力を受け取るように連結される。
別の実施形態では、複数のモジュールのうちの第1のモジュールのみが、第1の電力状態および第2の電力状態のうちの1つを要求するように連結される回路を含んでいる。別の実施形態では、第1の電力状態の間、メモリが、メモリコントローラからメモリリフレッシュ信号を受信するように構成される。別の実施形態では、第1の電力状態と第2の電力状態との間の遷移を実行することが、第1のモジュール、メモリコントローラまたはメモリをゲートしている電力を変更することを含んでいる。別の実施形態では、第1の電力状態と第2の電力状態との間の遷移を実行することが、第1のモジュール、メモリコントローラまたはメモリのクロックゲーティングを変更することを含んでいる。
別の実施形態では、コンピュータ可読記憶媒体は、1つまたは複数の処理ユニットによって実行された場合に、1つまたは複数の処理ユニットに、システム・オン・チップ(SOC)の複数のモジュールのうちの第1のモジュールのタスクの間、複数のモジュールによるメモリへのアクセスは、第1のモジュールによるアクセスになることを示す1つまたは複数の信号を受信することと、上記1つまたは複数の信号に応答して、SOCの第1の電力状態およびSOCの第2の電力状態のうちの1つへ遷移することであって、第1の電力状態は、メモリと第1のモジュールとの間のデータ通信を有効にし、かつ、メモリと、第1のモジュール以外の複数のモジュールのうちのモジュールとの間のデータ通信を阻止することと、を含む方法を実行させる命令を媒体上に記憶している。上記方法は、第1の電力状態の間、SOCのメモリコントローラを経由して第1のモジュールとメモリとの間でデータを交換することを含む、タスクの動作を実行するためにデータを交換することをさらに含んでいる。上記方法は、第1の電力状態と第2の電力状態との間の遷移を実行することをさらに含んでおり、遷移に起因する、メモリと複数のモジュールとの間の通信の有効化と、メモリと複数のモジュールとの間の通信の阻止との間の変化は、メモリと第1のモジュールとの間の通信に関する変化である。
一実施形態では、SOCはメモリを含んでいる。別の実施形態では、第1の電力状態の間、メモリへメモリクロック信号が供給され、かつ、第2の電力状態の間、メモリへメモリクロック信号が供給されないようにする。別の実施形態では、第1の電力状態の間、および第2の電力状態の間、第1のモジュールへクロック信号が供給される。
別の実施例では、方法は、システム・オン・チップ(SOC)の複数のモジュールのうちの第1のモジュールのタスクの間、複数のモジュールによるメモリへのアクセスは、第1のモジュールによるアクセスになることを示す1つまたは複数の信号を受信することと、上記1つまたは複数の信号に応答して、SOCの第1の電力状態およびSOCの第2の電力状態のうちの1つへ遷移することであって、第1の電力状態は、メモリと第1のモジュールとの間のデータ通信を有効にし、かつ、メモリと、第1のモジュール以外の複数のモジュールのうちのモジュールとの間のデータ通信を阻止することと、を含んでいる。上記方法は、第1の電力状態の間、SOCのメモリコントローラを経由して第1のモジュールとメモリとの間でデータを交換することを含む、タスクの動作を実行するためにデータを交換することをさらに含んでいる。上記方法は、第1の電力状態と第2の電力状態との間の遷移を実行することをさらに含んでおり、遷移に起因する、メモリと複数のモジュールとの間の通信の有効化と、メモリと複数のモジュールとの間の通信の阻止との間の変化は、メモリと第1のモジュールとの間の通信に関する変化である。
一実施形態では、第1の電力状態の間、メモリへメモリクロック信号が供給され、かつ、第2の電力状態の間、メモリへメモリクロック信号が供給されないようにする。別の実施形態では、第1の電力状態の間および第2の電力状態の間、第1のモジュールへクロック信号が供給される。別の実施形態では、第1の電力状態および第2の電力状態以外の、SOCの電力状態の間、第1のモジュール以外の複数のモジュールのうちの1つがパワーレールへ連結され、かつ、第1の電力状態または第2の電力状態の間、複数のモジュールのうちの上記1つがパワーレールから切り離される。別の実施形態では、第1の電力状態および第2の電力状態以外の、アクティブな電力状態の間、複数のモジュールのそれぞれは、それぞれのパワーレールを経由して電力を受け取るように連結され、かつ、第1の電力状態の間、複数のモジュールのうちの第1のモジュールのみが、それぞれのパワーレールを経由して電力を受け取るように連結される。
別の実施例では、システムは、第1のモジュールを含む複数のモジュールであって、複数のモジュールはそれぞれ、メモリへのアクセスを要求するように構成されるそれぞれの回路を備える複数のモジュールと、複数のモジュールのそれぞれに連結されるメモリコントローラと、第1のモジュールのタスクの間、複数のモジュールによるメモリへのアクセスは、第1のモジュールによるアクセスとなることを示す1つまたは複数の信号を受信するように構成される回路を備える電力管理ユニットとを含むシステム・オン・チップ(SOC)を備えている。上記1つまたは複数の信号に応答して、電力管理ユニットは、SOC回路を第1の電力状態および第2の電力状態のうちの1つへ遷移させることになり、第1の電力状態は、メモリと第1のモジュールとの間のデータ通信を有効にし、かつ、メモリと、第1のモジュール以外の複数のモジュールのうちのモジュールとの間のデータ通信を阻止する。第1のモジュールは、第1のモジュールがメモリコントローラを経由してメモリとデータを交換することを含む、タスクの動作を実行するためにデータを交換することになる。電力管理ユニットは、第1の電力状態と第2の電力状態との間の遷移をさらに実行することになり、遷移に起因する、メモリと複数のモジュールとの間の通信の有効化と、メモリと複数のモジュールとの間の通信の阻止との間の変化は、メモリと第1のモジュールとの間の通信に関する変化である。システムは、SOC回路の動作に基づく無線通信を交換するためにダイポールアンテナをさらに備えている。一実施形態では、SOCはメモリを含んでいる。別の実施形態では、複数のモジュールのうちの第1のモジュールのみが、第1の電力状態および第2の電力状態のうちの1つを要求するように連結される回路を含んでいる。
システム・オン・チップ回路の電力を管理するための技術およびアーキテクチャを本明細書に記載している。上記の記載では、説明目的のため、ある実施形態の完全な理解を提供するために、多くの特定の詳細を述べている。しかし、これらの特定の詳細なしに、ある実施形態を実践できることは、当業者には明らかであろう。記載を曖昧にすることを避けるため、他の例、構成およびデバイスをブロック図の形式に示している。
本明細書における「一実施形態」の参照は、実施形態に関連して記載された特定の特徴、構成、または特性が、本発明の少なくとも1つの実施形態に含まれることを意味する。本明細書のさまざまな箇所において出現する「一実施形態では」という表現は、必ずしもすべて同じ実施形態を参照しているわけではない。
本明細書の詳細な記述のいくつかの部分は、コンピュータメモリ内のデータビット上の動作のアルゴリズムおよびシンボリック表現の観点から提示されている。これらのアルゴリズム的記載および表現は、コンピュータ技術の当業者によって、自分達のやり方を最も効果的に他の当業者へ伝えるために用いられる手段である。ここで、一般に、アルゴリズムは、所望の結果につながるステップの自己無撞着シーケンスであると考えられる。このステップは、物理量の物理的操作を必要とするものである。通常は、ただし必ずしもではないが、これらの量は、記憶、転送、連結、比較、および他の方法で操作することができる電気または磁気信号の形式をとる。これらの信号をビット、値、要素、記号、文字、用語、数などとして参照することが主に常例であることから、ときに好都合であることが分かっている。
しかし、これらのすべておよび類似の用語は、適切な物理量に関係しているべきであり、これらの量に付与された単に好都合なラベルにすぎないことを留意すべきである。特に具体的に明記しない限り、本明細書での議論から明らかなように、記載の全体を通して、「処理」、または「コンピューティング」、または「計算」、または「決定」、または「表示」などの用語を用いる議論は、コンピュータシステムのレジスタおよびメモリ内で物理(電子)量として表されたデータを操作して、コンピュータ・システム・メモリもしくはレジスタまたは他のこうした情報ストレージ、伝送もしくは表示デバイス内の物理量として類似して表現された他のデータに変換する、コンピュータシステムまたは類似した電子コンピューティングデバイスの働きおよび処理をいう。
ある実施形態はまた、本明細書の動作を実行するための装置に関する。この装置は、必要な目的のために特別に構成され得、または、コンピュータに記憶されたコンピュータプログラムによって選択的にアクティブ化または再構成される汎用コンピュータを備え得る。こうしたコンピュータプログラムは、フロッピィディスク、光ディスク、CD−ROM、および光磁気ディスク、リード・オンリ・メモリ(ROM)、ダイナミックRAM(DRAM)などのランダム・アクセス・メモリ(RAM)、EPROM、EEPROM、磁気カードもしくは光カード、または電子命令を記憶するのに適していて、かつコンピュータシステムバスに連結されている任意のタイプの媒体を含む、任意のタイプのディスクなどではあるがこれには限定されない、コンピュータ可読記憶媒体に記憶され得る。
本明細書に示すアルゴリズムおよび表示は、いかなる特定のコンピュータまたは他の装置にも本質的に関係していない。さまざまな汎用システムを、本明細書の教示に係るプログラムと共に使用し得、また、必要な方法ステップを実行するためのより特化した装置を構築することが好都合であることも証明され得る。さまざまなこれらシステムのために必要な構成が本明細書の記載から見られる。また、ある実施形態が、特定のプログラム言語を参照して記載されていることはない。本明細書に記載されるこうした実施形態の教示を実施するために、さまざまなプログラム言語を使用し得ることが理解されよう。
本明細書に記載している内容に加えて、その開示された実施形態および実施例に対して、それらの範囲を逸脱せずにさまざまな改変を行い得る。したがって、本明細書の説明図および例は、限定的ではなく、例示的な意味において解釈されるべきである。発明の範囲は、後に続く特許請求の範囲を参照することによってのみ評価されるべきである。

Claims (25)

  1. システム・オン・チップ(SOC)回路であって、
    第1のモジュールを含み、それぞれ、メモリへのアクセスを要求するように構成されるそれぞれの回路を有する複数のモジュールと、
    前記複数のモジュールのそれぞれに連結されるメモリコントローラと、
    前記第1のモジュールのタスクの間、前記複数のモジュールによる前記メモリへの任意のアクセスが前記第1のモジュールによるアクセスとなることを示す1つまたは複数の信号を受信するように構成される回路を有する電力管理ユニットであって、前記1つまたは複数の信号に応答して、前記電力管理ユニットは、前記SOC回路を第1の電力状態および第2の電力状態のうちの一方へ遷移させ、前記第1の電力状態は、前記メモリと前記第1のモジュールとの間のデータ通信を有効にし、かつ、前記メモリと、前記第1のモジュール以外の前記複数のモジュールのうちの任意のモジュールとの間のデータ通信を阻止する、電力管理ユニットと、
    を備え、
    前記第1のモジュールは、前記第1のモジュールがメモリコントローラを経由して前記メモリとデータを交換することを含む、前記タスクの動作を実行するために前記データを交換し、前記電力管理ユニットは、前記第1の電力状態と前記第2の電力状態との間の遷移をさらに実行し、前記遷移に起因する、前記メモリと前記複数のモジュールとの間の通信の有効化と、前記メモリと前記複数のモジュールとの間の通信の阻止との間の任意の変化は、前記メモリと前記第1のモジュールとの間の通信に関する変化である、システム・オン・チップ(SOC)回路。
  2. 前記SOCは、前記メモリを含む、請求項1に記載のSOC回路。
  3. 前記第1の電力状態の間、前記メモリへメモリクロック信号が供給され、かつ、前記第2の電力状態の間、前記メモリへ前記メモリクロック信号が供給されない、請求項1または2に記載のSOC回路。
  4. 前記第1の電力状態の間、および前記第2の電力状態の間、前記第1のモジュールへクロック信号が供給される、請求項1から3のいずれか一項に記載のSOC回路。
  5. 前記第1の電力状態および前記第2の電力状態以外の、前記SOC回路の電力状態の間、前記第1のモジュール以外の前記複数のモジュールのうちの1つがパワーレールへ連結され、かつ、前記第1の電力状態および前記第2の電力状態のうちの一方の間、前記複数のモジュールのうちの前記1つが前記パワーレールから切り離される、請求項1から4のいずれか一項に記載のSOC回路。
  6. 前記第1の電力状態および前記第2の電力状態以外の、アクティブな電力状態の間、前記複数のモジュールのそれぞれは、それぞれのパワーレールを経由して電力を受け取るように連結され、かつ、前記第1の電力状態の間、前記複数のモジュールのうちの前記第1のモジュールのみが、それぞれのパワーレールを経由して電力を受け取るように連結される、請求項1から5のいずれか一項に記載のSOC回路。
  7. 前記第2の電力状態の間、前記複数のモジュールのうちの前記第1のモジュールのみが、それぞれのパワーレールを経由して電力を受け取るように連結される、請求項6に記載のSOC回路。
  8. 前記第1の電力状態の間、前記メモリコントローラが電力を受け取るように連結される、請求項6に記載のSOC回路。
  9. 前記第2の電力状態の間、前記メモリコントローラが電力を受け取るように連結される、請求項8に記載のSOC回路。
  10. 前記複数のモジュールのうちの前記第1のモジュールのみが、前記第1の電力状態および前記第2の電力状態のうちの一方を要求するように連結される回路を含む、請求項1から5のいずれか一項に記載のSOC回路。
  11. 前記第1の電力状態の間、前記メモリが、前記メモリコントローラからメモリリフレッシュ信号を受信するように構成される、請求項1から5のいずれか一項に記載のSOC回路。
  12. 前記第1の電力状態と前記第2の電力状態との間の前記遷移を実行することが、前記第1のモジュール、前記メモリコントローラまたは前記メモリをゲートしている電力を変更することを含む、請求項1から5のいずれか一項に記載のSOC回路。
  13. 前記第1の電力状態と前記第2の電力状態との間の前記遷移を実行することが、前記第1のモジュール、前記メモリコントローラまたは前記メモリのクロックゲーティングを変更することを含む、請求項1から5のいずれか一項に記載のSOC回路。
  14. 1つまたは複数の処理ユニットによって実行された場合に、前記1つまたは複数の処理ユニットに、
    システム・オン・チップ(SOC)の複数のモジュールのうちの第1のモジュールのタスクの間、前記複数のモジュールによるメモリへの任意のアクセスは、前記第1のモジュールによるアクセスになることを示す1つまたは複数の信号を受信することと、
    前記1つまたは複数の信号に応答して、前記SOCの第1の電力状態および前記SOCの第2の電力状態のうちの一方へ遷移することであって、前記第1の電力状態は、前記メモリと前記第1のモジュールとの間のデータ通信を有効にし、かつ、前記メモリと、前記第1のモジュール以外の前記複数のモジュールのうちの任意のモジュールとの間のデータ通信を阻止する、遷移することと、
    前記第1の電力状態の間、前記SOCのメモリコントローラを経由して前記第1のモジュールと前記メモリとの間でデータを交換することを含む、前記タスクの動作を実行するためにデータを交換することと、
    前記第1の電力状態と前記第2の電力状態との間で遷移を実行することであって、前記遷移に起因する、前記メモリと前記複数のモジュールとの間の通信の有効化と、前記メモリと前記複数のモジュールとの間の通信の阻止との間の任意の変化は、前記メモリと前記第1のモジュールとの間の通信に関する変化である、実行することと
    を含む方法を実行させる命令を媒体上に記憶させた、コンピュータ可読記憶媒体。
  15. 前記SOCは、前記メモリを含む、請求項14に記載のコンピュータ可読記憶媒体。
  16. 前記第1の電力状態の間、前記メモリへメモリクロック信号が供給され、かつ、前記第2の電力状態の間、前記メモリへ前記メモリクロック信号が供給されない、請求項14または15に記載のコンピュータ可読記憶媒体。
  17. 前記第1の電力状態の間、および前記第2の電力状態の間、前記第1のモジュールへクロック信号が供給される、請求項14から16のいずれか一項に記載のコンピュータ可読記憶媒体。
  18. システム・オン・チップ(SOC)の複数のモジュールのうちの第1のモジュールのタスクの間、前記複数のモジュールによるメモリへの任意のアクセスは、前記第1のモジュールによるアクセスになることを示す1つまたは複数の信号を受信することと、
    前記1つまたは複数の信号に応答して、前記SOCの第1の電力状態および前記SOCの第2の電力状態のうちの一方へ遷移することであって、前記第1の電力状態は、前記メモリと前記第1のモジュールとの間のデータ通信を有効にし、かつ、前記メモリと、前記第1のモジュール以外の前記複数のモジュールのうちの任意のモジュールとの間のデータ通信を阻止する、遷移することと、
    前記第1の電力状態の間、前記SOCのメモリコントローラを経由して前記第1のモジュールと前記メモリとの間でデータを交換することを含む、前記タスクの動作を実行するために前記データを交換することと、
    前記第1の電力状態と前記第2の電力状態との間で遷移を実行することであって、前記遷移に起因する、前記メモリと前記複数のモジュールとの間の通信の有効化と、前記メモリと前記複数のモジュールとの間の通信の阻止との間の任意の変化は、前記メモリと前記第1のモジュールとの間の通信に関する変化である、実行することと
    を含む方法。
  19. 前記第1の電力状態の間、前記メモリへメモリクロック信号が供給され、かつ、前記第2の電力状態の間、前記メモリへ前記メモリクロック信号が供給されない、請求項18に記載の方法。
  20. 前記第1の電力状態の間、および前記第2の電力状態の間、前記第1のモジュールへクロック信号が供給される、請求項18または19に記載の方法。
  21. 前記第1の電力状態および前記第2の電力状態以外の、前記SOCの電力状態の間、前記第1のモジュール以外の前記複数のモジュールのうちの1つがパワーレールへ連結され、かつ、前記第1の電力状態および前記第2の電力状態の一方の間、前記複数のモジュールのうちの前記1つが前記パワーレールから切り離される、請求項18から20のいずれか一項に記載の方法。
  22. 前記第1の電力状態および前記第2の電力状態以外の、アクティブな電力状態の間、前記複数のモジュールのそれぞれは、それぞれのパワーレールを経由して電力を受け取るように連結され、かつ、前記第1の電力状態の間、前記複数のモジュールのうちの前記第1のモジュールのみが、それぞれのパワーレールを経由して電力を受け取るように連結される、請求項18から21のいずれか一項に記載の方法。
  23. 第1のモジュールを含み、それぞれ、メモリへのアクセスを要求するように構成されるそれぞれの回路を有する複数のモジュールと、
    前記複数のモジュールのそれぞれに連結されるメモリコントローラと、
    前記第1のモジュールのタスクの間、前記複数のモジュールによる前記メモリへの任意のアクセスは、前記第1のモジュールによるアクセスとなることを示す1つまたは複数の信号を受信するように構成される回路を有する電力管理ユニットであって、前記1つまたは複数の信号に応答して、前記電力管理ユニットは、システム・オン・チップ(SOC)回路を第1の電力状態および第2の電力状態のうちの一方へ遷移させ、前記第1の電力状態は、前記メモリと前記第1のモジュールとの間のデータ通信を有効にし、かつ、前記メモリと、前記第1のモジュール以外の前記複数のモジュールのうちの任意のモジュールとの間のデータ通信を阻止する、電力管理ユニットと、
    を有する、SOC回路であって、
    前記第1のモジュールは、前記第1のモジュールがメモリコントローラを経由して前記メモリとデータを交換することを含む、前記タスクの動作を実行するために前記データを交換し、また、前記電力管理ユニットは、前記第1の電力状態と前記第2の電力状態との間の遷移をさらに実行し、前記遷移に起因する、前記メモリと前記複数のモジュールとの間の通信の有効化と、前記メモリと前記複数のモジュールとの間の通信の阻止との間の任意の変化は、前記メモリと前記第1のモジュールとの間の通信に関する変化である、SOC回路と、
    前記SOC回路の動作に基づき無線通信を交換するためのダイポールアンテナと、
    を備える、システム。
  24. 前記SOCは、前記メモリを含む、請求項23に記載のシステム。
  25. 前記複数のモジュールのうちの前記第1のモジュールのみが、前記第1の電力状態および前記第2の電力状態のうちの1つを要求するように連結される回路を含む、請求項23または24に記載のシステム。
JP2017508988A 2014-09-26 2015-08-24 システム・オン・チップにおけるメモリアクセスの電力管理 Active JP6322838B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/498,516 2014-09-26
US14/498,516 US20160091957A1 (en) 2014-09-26 2014-09-26 Power management for memory accesses in a system-on-chip
PCT/US2015/046508 WO2016048513A2 (en) 2014-09-26 2015-08-24 Power management for memory accesses in a system-on-chip

Publications (2)

Publication Number Publication Date
JP2017529600A true JP2017529600A (ja) 2017-10-05
JP6322838B2 JP6322838B2 (ja) 2018-05-16

Family

ID=55582229

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017508988A Active JP6322838B2 (ja) 2014-09-26 2015-08-24 システム・オン・チップにおけるメモリアクセスの電力管理

Country Status (7)

Country Link
US (1) US20160091957A1 (ja)
EP (1) EP3198363A4 (ja)
JP (1) JP6322838B2 (ja)
KR (1) KR102244114B1 (ja)
CN (1) CN106575145B (ja)
TW (1) TWI596468B (ja)
WO (1) WO2016048513A2 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9880601B2 (en) * 2014-12-24 2018-01-30 Intel Corporation Method and apparatus to control a link power state
US10539996B2 (en) * 2016-11-28 2020-01-21 Qualcomm Incorporated WiFi memory power minimization
US10984136B2 (en) * 2017-04-21 2021-04-20 Micron Technology, Inc. Secure memory device with unique identifier for authentication
US10474211B2 (en) * 2017-07-28 2019-11-12 Advanced Micro Devices, Inc. Method for dynamic arbitration of real-time streams in the multi-client systems
US11054878B2 (en) * 2017-08-29 2021-07-06 Texas Instruments Incorporated Synchronous power state control scheme for multi-chip integrated power management solution in embedded systems
US11226918B2 (en) * 2017-12-08 2022-01-18 Hewlett-Packard Development Company, L.P. Blocking systems from responding to bus mastering capable devices
CN110007739B (zh) * 2017-12-29 2023-09-12 华为技术有限公司 一种噪声屏蔽电路及芯片
US11237617B2 (en) * 2018-12-31 2022-02-01 Micron Technology, Inc. Arbitration techniques for managed memory
US11687277B2 (en) 2018-12-31 2023-06-27 Micron Technology, Inc. Arbitration techniques for managed memory
US11194511B2 (en) 2018-12-31 2021-12-07 Micron Technology, Inc. Arbitration techniques for managed memory
US11126245B2 (en) * 2019-06-21 2021-09-21 Intel Corporation Device, system and method to determine a power mode of a system-on-chip
CN111176409B (zh) * 2019-12-16 2023-11-21 珠海亿智电子科技有限公司 一种通用可在线编程的功耗控制电路、系统与方法
WO2021056033A2 (en) * 2021-01-20 2021-03-25 Zeku, Inc. Apparatus and method of intelligent power and performance management

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010515164A (ja) * 2006-12-31 2010-05-06 インテル・コーポレーション コンピュータシステム用の高効率電力管理技術
JP2012164046A (ja) * 2011-02-04 2012-08-30 Seiko Epson Corp メモリー制御装置
JP2014179080A (ja) * 2013-03-13 2014-09-25 Intel Corp プラットフォーム非依存型パワー管理

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7693596B2 (en) * 2005-12-14 2010-04-06 Dell Products L.P. System and method for configuring information handling system integrated circuits
US7991992B2 (en) * 2007-03-13 2011-08-02 Intel Corporation Power reduction for system on chip
US7868479B2 (en) * 2007-06-27 2011-01-11 Qualcomm Incorporated Power gating for multimedia processing power management
US8286195B2 (en) * 2007-10-31 2012-10-09 Microsoft Corporation Controlling hardware across two or more simultaneously running operating systems
US8286014B2 (en) * 2008-03-25 2012-10-09 Intel Corporation Power management for a system on a chip (SoC)
KR101543326B1 (ko) * 2009-01-05 2015-08-10 삼성전자주식회사 시스템 온 칩 및 그 구동 방법
JP5578698B2 (ja) * 2009-04-23 2014-08-27 ルネサスエレクトロニクス株式会社 半導体データ処理装置及びデータ処理システム
CN102012736B (zh) * 2009-09-08 2015-06-17 三星电子株式会社 图像形成装置及其功率控制方法
US8706966B1 (en) * 2009-12-16 2014-04-22 Applied Micro Circuits Corporation System and method for adaptively configuring an L2 cache memory mesh
KR101664108B1 (ko) * 2010-04-13 2016-10-11 삼성전자주식회사 멀티 코어의 동기화를 효율적으로 처리하기 위한 하드웨어 가속 장치 및 방법
US8218391B2 (en) * 2010-07-01 2012-07-10 Arm Limited Power control of an integrated circuit memory
WO2012071454A1 (en) * 2010-11-22 2012-05-31 Marvell World Trade Ltd. Sharing access to a memory among clients
US8775836B2 (en) * 2010-12-23 2014-07-08 Intel Corporation Method, apparatus and system to save processor state for efficient transition between processor power states
US20130117589A1 (en) * 2011-11-04 2013-05-09 Anand Satyamoorthy Stability control in a voltage scaling system
DE112011105864T5 (de) * 2011-11-17 2014-08-07 Intel Corporation Verfahren, Vorrichtung und System zur Speichervalidierung
US9710403B2 (en) * 2011-11-30 2017-07-18 Intel Corporation Power saving method and apparatus for first in first out (FIFO) memories
KR20130110459A (ko) * 2012-03-29 2013-10-10 삼성전자주식회사 시스템-온 칩, 이를 포함하는 전자 시스템 및 그 제어 방법
US9104421B2 (en) * 2012-07-30 2015-08-11 Nvidia Corporation Training, power-gating, and dynamic frequency changing of a memory controller
US8730603B2 (en) * 2012-09-11 2014-05-20 Lsi Corporation Power management for storage device read channel
KR102001414B1 (ko) * 2012-09-27 2019-07-18 삼성전자주식회사 데이터 트랜잭션에 따라 전력공급을 제어하는 시스템-온-칩 및 그 동작방법
US9760150B2 (en) * 2012-11-27 2017-09-12 Nvidia Corporation Low-power states for a computer system with integrated baseband
US9430014B2 (en) * 2013-07-18 2016-08-30 Qualcomm Incorporated System and method for idle state optimization in a multi-processor system on a chip

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010515164A (ja) * 2006-12-31 2010-05-06 インテル・コーポレーション コンピュータシステム用の高効率電力管理技術
JP2012164046A (ja) * 2011-02-04 2012-08-30 Seiko Epson Corp メモリー制御装置
JP2014179080A (ja) * 2013-03-13 2014-09-25 Intel Corp プラットフォーム非依存型パワー管理

Also Published As

Publication number Publication date
TW201626155A (zh) 2016-07-16
CN106575145A (zh) 2017-04-19
US20160091957A1 (en) 2016-03-31
EP3198363A4 (en) 2018-05-30
WO2016048513A2 (en) 2016-03-31
WO2016048513A3 (en) 2016-05-06
KR20170034423A (ko) 2017-03-28
JP6322838B2 (ja) 2018-05-16
CN106575145B (zh) 2021-05-11
TWI596468B (zh) 2017-08-21
EP3198363A2 (en) 2017-08-02
KR102244114B1 (ko) 2021-04-26

Similar Documents

Publication Publication Date Title
JP6322838B2 (ja) システム・オン・チップにおけるメモリアクセスの電力管理
US8788861B2 (en) Connected standby sleep state for increased power savings
JP6158135B2 (ja) モバイルデバイス内の組み込まれた不揮発性メモリとメイン揮発性メモリとの並列使用
US8892269B2 (en) Power down and quick start of thermal sensor
US8601304B2 (en) Method, apparatus and system to transition system power state of a computer platform
US20140281616A1 (en) Platform agnostic power management
RU2664398C2 (ru) Архитектура с ультранизкой мощностью для поддержки постоянно включенного пути к памяти
US20140013140A1 (en) Information processing apparatus and computer program product
EP3317746B1 (en) Method and apparatus for a multiple-processor system
US9195292B2 (en) Controlling reduced power states using platform latency tolerance
US10496298B2 (en) Configurable flush of data from volatile memory to non-volatile memory
US10860083B2 (en) System, apparatus and method for collective power control of multiple intellectual property agents and a shared power rail
US20160055110A1 (en) Transaction Filter for On-Chip Communications Network
US9270555B2 (en) Power mangement techniques for an input/output (I/O) subsystem
US20160077959A1 (en) System and Method for Sharing a Solid-State Non-Volatile Memory Resource
US10409513B2 (en) Configurable low memory modes for reduced power consumption
US20230280809A1 (en) Method and apparatus to control power supply rails during platform low power events for enhanced usb-c user experience
CN117581189A (zh) 降低远存储器中的存储器功率使用
US20150370564A1 (en) Apparatus and method for adding a programmable short delay

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170330

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170330

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180228

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180316

R150 Certificate of patent or registration of utility model

Ref document number: 6322838

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250