JP2022540673A - 動的リフレッシュレート制御 - Google Patents

動的リフレッシュレート制御 Download PDF

Info

Publication number
JP2022540673A
JP2022540673A JP2022502424A JP2022502424A JP2022540673A JP 2022540673 A JP2022540673 A JP 2022540673A JP 2022502424 A JP2022502424 A JP 2022502424A JP 2022502424 A JP2022502424 A JP 2022502424A JP 2022540673 A JP2022540673 A JP 2022540673A
Authority
JP
Japan
Prior art keywords
refresh rate
temperature
dram
rate
refresh
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
JP2022502424A
Other languages
English (en)
Other versions
JP7240553B2 (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.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of JP2022540673A publication Critical patent/JP2022540673A/ja
Application granted granted Critical
Publication of JP7240553B2 publication Critical patent/JP7240553B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40611External triggering or timing of internal or partially internal refresh operations, e.g. auto-refresh or CAS-before-RAS triggered refresh
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • G06F13/1636Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement using refresh
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/406Management or control of the refreshing or charge-regeneration cycles
    • G11C11/40626Temperature related aspects of refresh operations
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/4074Power supply or voltage generation circuits, e.g. bias voltage generators, substrate voltage generators, back-up power, power control circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/409Read-write [R-W] circuits 
    • G11C11/4091Sense or sense/refresh amplifiers, or associated sense circuitry, e.g. for coupled bit-line precharging, equalising or isolating
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2211/00Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C2211/401Indexing scheme relating to cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C2211/406Refreshing of dynamic cells
    • G11C2211/4061Calibration or ate or cycle tuning
    • 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)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Dram (AREA)

Abstract

一実施形態では、集積回路内のメモリコントローラは、リフレッシュレートに従って、集積回路に結合された1つ以上のDRAMに対するリフレッシュを発生させ得る。集積回路は、1つ以上の温度センサを含み得る。温度の変化レートは、温度センサから判定され得る。上記レートが閾値よりも大きい場合、メモリコントローラは、DRAMによって指定されたリフレッシュレートに従って、リフレッシュを発生させ得る。上記レートが閾値未満である場合、メモリコントローラは、低減リフレッシュレートでリフレッシュを発生させ得る。

Description

本明細書で説明する実施形態は、ダイナミックランダムアクセスメモリ(dynamic random access memory)(DRAM)におけるリフレッシュ動作に関する。
DRAMは、多くの場合、デスクトップコンピュータ又はサーバコンピュータから、ラップトップ、パーソナルデジタルアシスタント、スマートフォン、及び他のポータブルデバイスまで、様々なタイプのコンピューティングシステムにおけるメインメモリシステムとして使用されている。多くの場合、DRAMにおいて消費される電力は、電力全体の有意な部分である。バッテリなどの制限された電源で動作することが多いポータブルシステムでは、システム内の構成要素の電力消費を低減させることが、制限された電源でシステムが動作し得る時間を延長するために重要である。加えて、電力消費は、熱生成をもたらし、熱生成は全てのタイプのシステムにおいて放散されなければならない。
DRAMメモリセルは、コンデンサ上に電荷としてデータを蓄積し、経時的な電荷の漏れにさらされる。すなわち、蓄積された電荷が漏れ出すことがあり、電荷が漏れ出した後にメモリセルから読み取られた値は、書き込まれた値とは異なることになり、それにより、誤動作がもたらされる。コンデンサ上の電荷の損失に起因するDRAM内に蓄積されたデータの損失/破損を防止するために、メモリセルは、定期的にリフレッシュされる(セルから値を読み取り、その値を再び書き込む)。リフレッシュを実行するために消費される電力は、DRAMにおいて消費される電力全体の相当な部分であり得る。
データ損失/破損を防止するために要求されるリフレッシュレートは、所与のDRAMに対して指定され、それは温度依存性である。温度が上昇するにつれて、漏れレートが増大し、したがって、要求されるリフレッシュレートが増大する(例えば、リフレッシュがより頻繁に行う必要がある)。多くのDRAMは、温度センサを備えており、DRAMは、センサによって感知された温度に基づいて、要求されるリフレッシュレートを判定する。DRAMは、要求されるリフレッシュレートを判定するために読み取られ得るレジスタを含む。しかしながら、大部分のDRAMに実装される温度センサは、かなり粗粒度である(例えば、摂氏10~20度の範囲が一般に同じリフレッシュレートを割り当てられている)。所与の範囲に対するリフレッシュレートは、その範囲の高い温度に要求されるリフレッシュレートである。温度が所与のリフレッシュレートに対する範囲の下限に近い場合、リフレッシュレートは、実際に必要とされるものよりも高い。加えて、多くのDRAMは、単一の温度センサを実装している。DRAM上の温度センサの位置に近くない潜在的なホットスポットに対処するために、DRAMは、温度測定値に対して有意なマージンを適用することができる。ホットスポットが存在しない場合、リフレッシュレートは、実際に必要とされるものよりも高い。場合によっては、マージンは、摂氏10度以上程度の高さになり得る。
一実施形態では、1つ以上のDRAMは、DRAMを制御するためにメモリコントローラを含む集積回路に近接してパッケージ化される。メモリコントローラは、リフレッシュレートに従って、DRAMに対するリフレッシュを生成し得る。一実施形態では、集積回路は、複数の温度センサを含む。熱コントローラは、センサを読み取り、温度の変化レート(「温度変化レート」)を判定することができる。上記レートが閾値よりも大きい場合、メモリコントローラは、DRAMによって指定されたリフレッシュレートに従って、リフレッシュを発生させ得る。上記レートが閾値未満である場合、メモリコントローラは、低減リフレッシュレートでリフレッシュを発生させ得る。上記レートが閾値未満である場合、ホットスポットは、DRAM内で生成されないことがあり、かつDRAM温度測定値におけるマージンが不要であることがあるので、低減リフレッシュレートが使用され得る。加えて、集積回路上の温度センサから読み取られた温度は、DRAMによって対応するリフレッシュレートにマッピングされる温度範囲よりも微粒度であり得るので、したがって、低減レートは、実際の温度に対して十分であり得る。DRAMによって指定されたリフレッシュレートが使用される場合よりもリフレッシュが頻繁には実行されないので、消費電力を低減させることができる。
下記の詳細な説明は、以下に簡単に記載する添付の図面を参照する。
集積回路(この実施例では、システムオンチップ(SOC))とともにパッケージ化されたDRAMの一実施形態の側面図である。 集積回路を有するDRAMパッケージの一実施形態の上面図である。 図1及び図2に示した、集積回路(SOC)、及びDRAMを含むメモリの一実施形態のブロック図である。 DRAM、メモリコントローラ、及び熱コントローラの一実施形態のブロック図である。 DRAMのリフレッシュを制御する集積回路の一実施形態の動作を示すフローチャートである。 集積回路(SOC)とDRAMを含むメモリとを含むシステムの一実施形態のブロック図である。
この開示で説明する実施形態には、各種の変更形態及び代替形態の余地があり得るが、その具体的な実施形態を例として図面に示し、本明細書で詳細に説明する。しかし、図面及び図面に関する詳細な説明は、開示する特定の形態に実施形態を限定することを意図しておらず、むしろその意図は、添付の請求項の趣旨及び範囲に含まれる全ての変更形態、均等形態、及び代替形態を網羅することであることを理解されたい。本明細書において用いられる表題は、構成を目的とするに過ぎず、説明の範囲を制限するために用いることを意図していない。本出願を通して使用するとき、「~することができる、~し得る、~してもよい(may)」という語は、義務的な意味(すなわち、~しなければならないを意味する)ではなく、許容的な意味(すなわち、~する可能性を有することを意味する)で使用される。同様に、「含む(include、including、及びincludes)」という語は、「~を含むが、それに限定されるものではないこと」を意味する。本明細書で使用される用語「第1の」、「第2の」などは、名詞の前に付くラベルとして使用され、特に言及しない限りいかなるタイプの順序(例えば、空間的、時間的、論理的など)も意味しない。
本開示内で、(「ユニット」、「回路」、他の構成要素などと様々に呼ばれることがある)様々なエンティティは、1つ以上のタスク又は動作を実行するように「構成されている(configured)」ものとして記述又は請求されることがある。[1つ以上のタスクを実施する]ように構成されている[実在物]というこの表現は、本明細書では構造(すなわち、電子回路など、物理的なもの)を指すために使用される。より具体的には、この表現は、この構造が動作中に1つ以上のタスクを実施するように配置されたことを示すために使用される。構造は、その構造が現在動作していない場合でも、何らかのタスクを実行する「ように構成されている」と述べられることがある。「出力クロック信号を生成するように構成されているクロック回路」は、例えば、当該の回路が現在使用されていない(例えば、その回路に電源が接続されていない)場合でも、動作中にこの機能を実行する回路を網羅することを意図している。このように、何らかのタスクを実施するように「構成されている」ものとして記述又は具陳されるエンティティは、そのタスクを実装するように実行可能なデバイス、回路、プログラム命令を記憶したメモリなど、物理的なものを指す。この句は、本明細書では無形のものを指すために使用されない。概して、「~ように構成されている」に対応する構造を形成する回路は、ハードウェア回路を含み得る。ハードウェア回路は、組み合わせ論理回路、フロップ、レジスタ、ラッチなどのクロックド記憶デバイス、有限状態マシン、スタティックランダムアクセスメモリ又は埋め込みダイナミックランダムアクセスメモリなどのメモリ、カスタム設計回路、アナログ回路、プログラマブル論理アレイなどの任意の組み合わせを含むことができる。同様に、種々のユニット/回路/構成要素は、説明を簡便にするために、タスク(単数又は複数)を実行するものとして述べられることがある。そのような説明は、「~ように構成されている」という語句を含むものとして解釈されるべきである。
「~ように構成されている」という用語は、「~ように構成可能な」を意味することを意図していない。例えば、プログラムされていないFPGAは、何らかの特定の機能を実行する「ように構成可能」であり得るが、その機能を実行する「ように構成されている」とは見なされないであろう。適切なプログラミング後、FPGAは次いで、その機能を実行する「ように構成されている」と言うことができる。
一実施形態では、本開示によるハードウェア回路は、回路の記述を、Verilog又はVHDLなどのハードウェア記述言語(hardware description language、HDL)でコーディングすることによって実装されてもよい。HDL記述は、所与の集積回路製造技術のために設計されたセルのライブラリに対して合成されてもよく、タイミング、電力、及び他の理由のために修正されて、結果としてファウンドリに送信することができる最終設計データベースとなり、マスクを生成し、最終的に集積回路を製造することができる。いくつかのハードウェア回路又はその一部も、回路図エディタでカスタム設計して、合成された回路とともに集積回路設計に取り込むことができる。集積回路は、トランジスタを含んでもよく、他の回路素子(例えば、コンデンサ、抵抗、インダクタなどの受動素子)、及びトランジスタと回路素子との間の相互接続を更に含むことができる。いくつかの実施形態は、ハードウェア回路を実現するために一体的に接続された複数の集積回路を実装することができ、及び/又は、いくつかの実施形態では、個別の要素を使用することができる。あるいは、HDL設計は、フィールドプログラマブルゲートアレイ(field programmable gate array、FPGA)などのプログラム可能な論理アレイに統合してもよく、FPGAに実装してもよい。
本明細書で使用する「~に基づいて」又は「~に依存して」という用語は、判定に影響を及ぼす1つ以上の要因を記述するために使用される。この用語は、追加の要因が決定に影響を及ぼすことがある可能性を除外しない。すなわち、決定は、指定された要因のみに基づくか、又は、指定された要因並びに他の指定されていない要因に基づき得る。「Bに基づいてAを判定する」という語句を検討する。この語句により、Bは、Aを判定するために使用されるか、又はAの判定に影響を及ぼす要因であることが特定される。この語句は、Aの判定が、Cなど、何らかの他の要因にも基づき得ることを除外しない。この句は、AがBのみに基づいて判定される実施形態をも網羅することを意図している。本明細書で使用する「~に基づいて」という句は、「~に少なくとも部分的に基づいて」という句と同義である。
本開示が特定の一実施態様を指すことを意図しておらず、むしろ、添付の請求項を含む、本開示の趣旨内に入る幅広い実施形態を指すことを意図していることを示すために、本明細書は様々な実施形態への言及を含む。特定の特徴、構造、又は特性は、本開示と一貫性を有するいずれかの適切な方式で組み合わされてもよい。
本明細書では、「a」又は「an」という語を使用して要素を指す、又は「the」という語を使用して要素を指す場合がある。これらの語は、要素の1つのインスタンスのみが存在することを意味することを意図するものではない。様々な実施形態では、2つ以上が存在し得る。したがって、「a」、「an」、及び「the」は、1つのみとして明示的に表されない限り、「1つ以上」を意味すると解釈されるべきである。
本明細書は、結合されているような様々な構成要素、ユニット、回路などを説明することができる。いくつかの実施形態では、構成要素、ユニット、回路などは、それらが電気的に結合されている(例えば、1つ以上の他の回路を介して直接的に接続されている、又は間接的に接続されている)、及び/又は通信可能に結合されている場合に結合され得る。
図1は、集積回路10(この場合、システムオンチップ又はSOCであるが、他の実施形態では、任意の集積回路が使用され得る)、及びDRAM30A~30Bなどの1つ以上のDRAMの一実施形態の側面図である。各DRAM30A~30Bもまた、集積回路であってもよく、SOC10に近接して結合され得る。より具体的には、DRAM30A~30Bは、SOC10と接触していても、又はSOC10とともにパッケージ化されていてもよい。DRAM30A~30Bは、例えば、SOC10とともに、パッケージオンパッケージ(POP)パッケージ化構成であってもよい。別の実装態様では、DRAM30A~30Bは、SOC10とともに、チップオンチップ(COC)パッケージ化構成内にあり得る。
図2は、図1に示したDRAM30A~30Bを含む、SOC10の上に配置されたDRAM30A~30Dを有するSOC10の上面図である。すなわち、図2に示した上面図は、図2の上縁部において、図1に示した側面図を上から見下ろした図である。DRAMS30A~30Dは、図2の図においてSOC10の上にあり得る。各DRAM30A~30Dは、図2のプラス符号「+」として示される温度センサ(例えば、それぞれ、参照番号32A~32D)を含み得る。温度センサ32A~32Dは、図2に示すように、各DRAM30A~30Dのほぼ中心に配置され得る。4つのDRAM30A~30Dが図2には示されているが、他の実施形態では、より多くの又はより少数のDRAM30A~30Dが使用され得ることに留意されたい。加えて、1つ以上のDRAM30A~30Dを互いに積み重ねて、スタックとしてSOC10上に搭載し、SOC10のサイズによって確定される領域内により多くのDRAM30A~30Dを含めることが可能になる。
SOC10はまた、図2内で「x」として示される1つ以上の温度センサ(例えば、少なくとも1つの温度センサ、又は様々な実施形態では複数の温度センサ)を有し得る。例えば、参照番号34A~34Cは、例えば、DRAM30Aによって覆われたSOC10の領域に配置された温度センサを示す。図2に示すように、他の温度センサ34D~34Mは、SOC10の他の領域に配置され得る。一般に、SOC10は、動作中に有意な熱を生成し得るSOC10の領域内に1つ以上の温度センサを実装し得る(例えば、温度センサは、SOC内の潜在的なホットスポットの近くに配置され得る)。例えば、SOC10は、SOC10上でオペレーティングシステムソフトウェア及び様々なアプリケーションソフトウェアを実行する1つ以上のプロセッサを含み得る。プロセッサは、いくつかの動作条件において有意な熱を生成することがあり、したがって、プロセッサの近くに1つ以上の温度センサが存在してもよい。SOC10の実施形態は、いくつかの動作モードで有意な熱を生成し得る1つ以上のグラフィックス処理ユニット(GPU)を含んでもよく、したがって、GPUに近い1つ以上の温度センサが存在し得る。他のビデオ処理周辺装置は同様に、温度センサ(例えば、画像信号プロセッサ(ISP)、エンコーダ/デコーダなど)を有し得る。他のタイプの周辺装置もまた、温度センサを有し得る。他の実施形態では、SOC10の表面全体の温度が合理的な精度で測定され得るように、SOC10の領域にわたって追加の温度センサを分布させてもよい。温度センサの数及び位置は、実施形態ごとに変動し得る。
温度センサは、集積回路上に実装され得、かつ予測可能な様式で温度に反応する、任意の回路を含み得る。一実施形態では、温度センサは、感知された温度を表す電圧又は電流を、集積回路の他の部分と通信され得るデジタル値に変換するアナログデジタルコンバータを含み得る。デジタル値は、温度に対する直接マッピングであってもよく、又は、感知された温度を表す値に対する較正結果によって調整されてもよい。他の実施形態では、他の方法で温度を測定することができる(例えば、温度とともに変動するリングオシレータの周波数を使用することができる)。
DRAM30A~30D及びSOC10の近接性を理由に、DRAM30A~30DとSOC10との間に有意な熱結合が存在し得る。SOC10が、SOC10の1つの領域における有意な活動に起因する「ホットスポット」を有する場合、生成された熱は、SOC10の領域の上方のDRAM30A~30Dに伝達されることがあり、DRAM内にホットスポットが作成される。ホットスポットは、集積回路全体の温度よりも高い温度の局所領域であり得る。熱が経時的に拡散及び消散する傾向がある一方で、急速な熱生成により、周囲の集積回路領域よりも摂氏数十度熱くなり得る、温度が増大したホットスポットを一時的に作成し得る。
熱はDRAM30A~30Dに伝達されるので、DRAM30A~30Dは、DRAM30A~30D内の温度センサ32A~32Dから物理的に離れたホットスポットを発生させ得る。この効果を理由に、DRAM30A~30Dは、要求されるリフレッシュレートを判定するときに、温度センサ32A~32Dからの感知された温度に対してマージンを適用することができる。マージンは、たとえDRAM30A~30D内のホットスポットが、そのDRAM30A~30D内の温度センサ32A~32Dから離れており、したがって、温度センサ32A~32Dによって直接感知されない場合でも、データ完全性を維持するのに十分な頻度でリフレッシュが行われることを保証し得る。SOC10及びDRAM30A~30Dを用いた実験では、DRAM30A~30Dは、「自己加熱」に起因する(例えば、DRAM30A~30D自体の動作に起因する)ホットスポットを生成しなかったが、SOC10による加熱に起因するホットスポットを有し得ることと判定された。したがって、マージンは、設計されたものほど大きくする必要がない。SOC10内の温度センサ34A~34Mを使用して、ホットスポットを検出し、必要に応じてリフレッシュマージンを適用し、またあるときには、より少ないマージンを適用してもよい。
より具体的には、温度がSOC10内で急速に変化しているときに、ホットスポットが発現し得る。したがって、SOC10は、温度が急速に変化しているときに、より保守的な(より高い)リフレッシュレートを使用するリフレッシュ制御メカニズムを実装し得る。温度がより定常状態条件においてゆっくりと変化しているときに、より保守的な(より低い)リフレッシュレートを使用してもよい。温度がゆっくりと変化している間、DRAMにわたる温度変動は、実験的には、低いと判定されている。一般に、リフレッシュレートは、RDAMに対してどのくらい頻繁にリフレッシュを発生させるかを指し得る。より高いリフレッシュレートは、より高い頻度でリフレッシュを発生させることを意味し、より低いリフレッシュレートは、より低い頻度でリフレッシュを発生させることを意味する。リフレッシュレートは、どのくらいの頻度で各セルをリフレッシュしなければならないかに関して指定され得、リフレッシュは、各メモリセルが指定された時間内にリフレッシュを受信したことを保証するように発生され得る。所与のリフレッシュコマンド(リフレッシュ要求とも呼ばれる)は、DRAMの1つのバンク内のメモリセルの1つの列をリフレッシュしてもよく(「バンクごとの」リフレッシュ)、又はDRAMの各バンク内のメモリセルの1つの列をリフレッシュしてもよい(「全てのバンクの」リフレッシュ)。各コマンドによってリフレッシュされるメモリセルの数、及びDRAM30A~30Dの総メモリセルの数に応じて、全てのメモリセルの正確なリフレッシュを保証するために所与の期間内に必要とされるリフレッシュコマンドの数が計算され得、メモリコントローラは、それに応じてリフレッシュコマンドを生成し得る。
温度変化レートが低いときにリフレッシュレートを低減させることによって、SOC10は、DRAM30A~30Dによって要求されるリフレッシュレートと比較して、リフレッシュを実行するために消費される電力を低減することができる。DRAM30A~30Dによって実装されたマージンは、温度変化レートが低いときには不要であることが知られているので、データ完全性は、たとえ低減リフレッシュレートにおいても保護されたままである。一方、温度変化レートが高い場合、SOC10は、DRAM30A~30Dによって要求されるより保守的なリフレッシュレートを使用して、データ完全性を保証することができる。一実施形態では、温度変化レートに対するプログラム可能な閾値を使用して、温度変化レートがDRAM指定のリフレッシュレートを使用するのに十分に高いか、又は低減リフレッシュレートを使用するのに十分低いかを判定することができる。
一実施形態では、SOC10によって実装された温度センサ34A~34Mからの温度測定値は、SOC10内で利用可能であるので、より高い粒度のリフレッシュレートが生成され得る。例えば、上述のように、比較的広い範囲(例えば、摂氏10~20度)内の任意の温度に対して、同じリフレッシュレートがDRAM30A~30Dによって要求され得る。SOC10は、より高い粒度レベルでリフレッシュレートをスケーリングすることができ、リフレッシュレートを、現在温度に対して実際に要求されるリフレッシュレートに近づけることが可能になる。より微細な粒度に起因して、電力消費の更なる低減を達成することができる。
一実施形態では、SOC10の典型的な動作温度は、DRAM30A~30Dによってサポートされる2つのリフレッシュレート間の境界温度近くであり得る。DRAM30A~30Dによってマージンが適用されると、多くの場合、この典型的な動作条件中に、より高いリフレッシュレートが選択され得る。2つのリフレッシュレートのうちのより高いリフレッシュレートは、2つのリフレッシュレートのうちのより低いリフレッシュレートの2倍であってもよく、したがって、より高いリフレッシュレートを使用することの電力消費への影響は有意である。温度変化レートが低い場合、マージンは不要であり、より低いリフレッシュレートにより近いリフレッシュレートが十分であり得る。低減リフレッシュレートの選択により、これらの場合において、低減された消費電力の実現が可能になり得る。
図3は、SOC10、及びDRAM30A~30Dから形成されたメモリ12の一実施形態のブロック図である。図3の実施形態は、SOC10、並びに図1及び図2に関して上述したように物理的に配置され得るDRAM30A~30Dの論理図である。温度センサ32A~32D及び34A~34Mは、図3には示されていないが、含まれている。例えば、CPUクラスタ14は、有意な熱を発生し得る様々な周辺装置16A~16Bと同様に(例えば、GPUは周辺装置であり得る)、1つ以上の温度センサ34A~34Mを有し得る。
名前が暗示するように、SOC10の構成要素は、集積回路「チップ」として、単一の半導体基板上に集積され得る。メモリ12に対してリフレッシュコマンドを生成することを含む、メモリ12を制御するためにメモリコントローラ18を有する集積回路の他の実施形態が使用されてもよい。しかしながら、本明細書では、SOC10を例として使用する。図示された実施形態では、SOC10の構成要素は、プロセッサクラスタ14を含む。プロセッサは、中央処理ユニット(CPU)であってもよく、したがって、一実施形態では、プロセッサクラスタ14は、CPUクラスタ14であってもよい。図示された実施形態では、SOC10の構成要素は、周辺構成要素16A~16B(より簡潔には、「周辺装置」16)、メモリコントローラ18、SOC電力マネージャ(PMGR)20、及び通信ファブリック22を更に含む。構成要素14、16、18、及び20は全て、通信ファブリック22に結合されてもよく、したがって、構成要素間の通信のために互いに結合され得る。メモリコントローラ18は、使用中にメモリ12に結合され得る。
メモリコントローラ18は、各DRAM30A~30Dに対するリフレッシュコマンドを、そのDRAM30A~30Dのリフレッシュレートに従って生成する、リフレッシュ制御回路36を含み得る。すなわち、図示された実施形態では、各DRAM30A~30Dは、独立したリフレッシュレートを有してもよく、メモリコントローラ18は、各DRAM30A~30Dに対して、リフレッシュコマンドを独立して生成することができる。一実施形態では、各DRAM30A~30Dは、メモリコントローラ18とメモリ12との間の異なるチャネル上にあってもよく、したがって、他のDRAM30A~30Dから独立してアクセスされ得る。各DRAM30A~30Dは、例えば、それ自体のオープンページのセットを有してもよく、そのチャネル上でコマンドを使用して、他のDRAM30A~30Dへの他のチャネル上の読み取り/書き込みとは無関係に、読み取られ得、又は書き込まれ得る。
リフレッシュ制御回路36は、リフレッシュレートレジスタ38A~38D及び低減リフレッシュレートレジスタ40A~40Dを含む。この実施形態では、各DRAM30A~30Dに対する異なるリフレッシュレートレジスタ38A~38D、及び各DRAM30A~30Dに対する異なる低減リフレッシュレートレジスタ40A~40Dが存在してもよく、それによってリフレッシュレートを各DRAM30A~30Dに対して独立して制御することが可能になる。リフレッシュレートレジスタ38A~38Dは、DRAM30A~30Dによってそれぞれ要求されるリフレッシュレートでプログラムされ得る。低減リフレッシュレートレジスタ40A~40Dは、DRAM30A~30Dによって要求される対応するリフレッシュレートよりも低い、低減リフレッシュレートでプログラムされ得る。
一実施形態では、リフレッシュ制御回路36は、リフレッシュレートレジスタ38A~38Dからリフレッシュレートを選択して、温度変化レートが閾値を超えることに応じて、各DRAM30A~30Dに対してリフレッシュコマンドが生成されるレートを制御することができる。リフレッシュ制御回路36は、低減リフレッシュレートレジスタ40A~40Dから低減リフレッシュレートを選択して、温度変化レートが閾値を超えないことに応じて、各DRAM30A~30Dに対してリフレッシュコマンドが生成されるレートを制御することができる。他の実施形態では、位置認識メカニズムを使用することができる。すなわち、温度センサ34A~34Mは、物理的に近くにあるDRAM30A~30Dに従ってグループ化されてもよく、各グループに対する温度変化レートを使用して、対応するDRAM30A~30Dに対するリフレッシュレートを選択するために使用され得る。
他の実施形態では、レジスタ40A~40Dと同様の低減リフレッシュレートレジスタの2つ以上のセットが存在し得る。温度変化レートに対して2つ以上の閾値が存在することがあり、それぞれのリフレッシュレートは、どの閾値を超えたか又は超えていないかに基づいて、低減リフレッシュレートレジスタのセットから選択することができる。低減リフレッシュレートは、任意の所望の様式でプログラムされてもよい(例えば、SOC10において実行される命令は、SOC PMGR20を介してレジスタ40A~40Dをプログラムしてもよく、又はリフレッシュ制御回路36を直接プログラムしてもよい)。
SOC PMGR20は、システム内の電力管理ユニット(PMU)から要求される供給電圧の大きさを制御するように構成され得る。SOC10のためにPMUによって生成される複数の供給電圧が存在してもよい。例えば、CPUクラスタ14内のプロセッサコアに対して、ある電圧が生成され得、SOC10内の他の構成要素に対して、別の電圧が生成され得る。一実施形態では、他の電圧は、メモリコントローラ18、周辺装置16、SOC PMGR20、及びSOC10の他の構成要素に役立ち得、電力ドメインに基づいてパワーゲーティングが採用され得る。いくつかの実施形態では、SOC10の残りの部分のために複数の供給電圧が存在し得る。いくつかの実施形態では、CPUクラスタ14及び/又はSOC10内の様々なメモリアレイのためにメモリ供給電圧もまた存在し得る。メモリ供給電圧は、論理回路に供給される電圧とともに使用されてもよく、堅牢なメモリ動作を保証するために要求されるものよりも低い電圧の大きさを有し得る。SOC PMGR20は、ソフトウェアの直接制御下にあってもよく(例えば、構成要素の電源投入及び/又は電源切断をソフトウェアが直接要求し得る)、及び/又は、SOC10を監視し、様々な構成要素が電源投入又は電源切断されるべき時を判定するように構成されてもよい。CPUクラスタ14については、電圧要求は、SOC PMGR20に提供され得、SOC PMGR20は、要求をPMUに通信して、供給電圧の大きさの変化をもたらし得る。
加えて、SOC PMGR20は、様々な温度センサ34A~34Mによって測定された温度を記録し得る1つ以上の温度レジスタ42を含み得る。温度は、SOC PMGR20内にプログラムされ得るレートで、定期的に読み取ることができる。あるいは、CPUクラスタ14上で実行しているソフトウェアは、温度を読み取り、温度レジスタ42、メモリコントローラ18/リフレッシュ制御回路36に直接含まれる同様の温度レジスタ(図3には示されていない)、及び/又はメモリ12内に温度を記録することができる。温度変化レートは、各センサからの連続する温度読み取り値に基づいて計算され得る。
CPUクラスタ14は、SOC10のCPUとして機能する1つ以上のプロセッサコアを含み得る。CPUは、一般に、システム(例えば、オペレーティングシステムソフトウェア)の全体的な動作を制御するソフトウェア、及びシステムにおいて所望される機能を提供する様々なアプリケーションソフトウェアを実行することができる。いくつかの実施形態では、2つ以上のCPUクラスタ14が存在し得る。いくつかの実施形態では、CPUクラスタ14は、各プロセッサにローカルなキャッシュに加えて、1つ以上の共有キャッシュを含み得る。
リフレッシュ制御回路36に加えて、メモリコントローラ18は、一般に、SOC10の他の構成要素からメモリ動作を受信し、かつメモリ動作を完了するためにメモリ12にアクセスするための回路を含み得る。メモリコントローラ18は、ダブルデータレート(DDR、DDR2、DDR3、DDR4など)DRAMを含むシンクロナスDRAM(SDRAM)などの、任意のタイプのDRAMメモリにアクセスするように構成され得る。DDR DRAMの低電力/モバイルバージョン(例えば、LPDDR、mDDRなど)がサポートされ得る。メモリコントローラ18は、動作を順序付けし(及び場合によっては再順序付けし)、かつメモリ12に対する動作を提示するための、メモリ動作の待ち行列を含み得る。メモリコントローラ18は、メモリへの書き込みを待っている書き込みデータ、及びメモリ動作の送信元への返送を待っている読み取りデータを記憶するためのデータバッファを更に含み得る。いくつかの実施形態では、メモリコントローラ18は、最近アクセスされたメモリデータを記憶するためのメモリキャッシュを含み得る。SOC実装形態では、例えば、メモリキャッシュは、データがほどなく再びアクセスされると予想される場合、メモリ12からのデータの再アクセスを回避することによって、SOC内の電力消費を低減させ得る。いくつかの場合、メモリキャッシュはまた、特定の構成要素のみに役立つ、共有キャッシュ又はプロセッサ内のキャッシュなどのプライベートキャッシュとは異なり、システムキャッシュと呼ばれ得る。加えて、いくつかの実施形態では、システムキャッシュは、メモリコントローラ18内に配置される必要がない。
周辺装置16A~16Bは、SOC10内に含まれる追加のハードウェア機能の任意のセットであり得る。例えば、周辺装置16A~16Bは、カメラ若しくは他の画像センサからの画像キャプチャデータを処理するように構成された画像信号プロセッサなどのビデオ周辺装置、1つ以上の表示デバイスにビデオデータを表示するように構成された表示コントローラ、グラフィック処理ユニット(graphics processing units)(GPU)、ビデオエンコーダ/デコーダ、スケーラ、ローテータ、ブレンダなどを含み得る。周辺装置は、マイクロフォン、スピーカ、マイクロフォン及びスピーカに対するインターフェース、音声プロセッサ、デジタル信号プロセッサ、ミキサなどの音声周辺装置を含み得る。周辺装置は、ユニバーサルシリアルバス(Universal Serial Bus)(USB)、PCIエクスプレス(PCI Express)(PCIe)を含むペリフェラルコンポーネント相互接続(peripheral component interconnect)(PCI)、シリアルポート及びパラレルポートなどのインターフェースを含む、SOC10(例えば周辺装置16B)の外部の様々なインターフェースのためのインターフェースコントローラを含み得る。周辺装置は、メディアアクセスコントローラ(media access controllers)(MAC)などのネットワーク用周辺装置を含み得る。ハードウェアの任意のセットが含まれてもよい。
通信ファブリック22は、SOC10の構成要素間で通信するための任意の通信相互接続及び通信プロトコルであり得る。通信ファブリック22は、共有バス構成、クロスバー構成、及びブリッジを有する階層バスを含めて、バスベースであり得る。通信ファブリック22はまた、パケットベースとすることができ、ブリッジを有する階層構造、クロスバー、ポイントツーポイント、又は他の相互接続とすることができる。
SOC10の構成要素の数は、実施形態ごとに変動し得ることに留意されたい。各構成要素の数は、図3に示した数よりも多くても少なくてもよい。
図4は、メモリコントローラ18に結合されたDRAM30A、及びメモリコントローラ18に結合された熱コントローラ50の一実施形態を示すブロック図である。メモリコントローラ18は、他のDRAM30B~30Dに同様に結合され得、以下に記載されるものと同様の動作は、他のDRAM30B~30Dの各々に対しても実行され得る。熱コントローラ50は、SOC PMGR20から温度レジスタ42へのアクセスを含む、又は温度レジスタ42にアクセスできる。一実施形態では、熱コントローラ50は、SOC PMGR20内のハードウェア、及び/又はメモリ12に記憶され、かつCPUクラスタ14又はSOC10内の別のプロセッサ若しくはクラスタ、例えば、SOC PMGR20(図示せず)内のプロセッサ上で実行可能なソフトウェアを含み得る。様々な実施形態では、ハードウェア及び/又はソフトウェアの任意の組み合わせを使用することができる。メモリコントローラ18は、リフレッシュ制御回路36を含み、DRAM30Aに対応するリフレッシュレートレジスタ38A及び低減リフレッシュレートレジスタ40Aが図示されている。DRAM30Aは、メモリリフレッシュ(MR)レジスタ52を含む。
MRレジスタ52は、DRAM30Aによって要求されるリフレッシュレートの指標を記憶するように、DRAM30Aの仕様により定義され得る。すなわち、SOC10(より具体的には、メモリコントローラ18内のリフレッシュ制御回路36)は、リフレッシュレートを判定するために、MRレジスタ52を読み取ることができる。指標は、DRAMに対するベースリフレッシュレートの除数であり得る。例えば、摂氏85度に対するリフレッシュレートは、ベースリフレッシュレートであり得る。65~85度の範囲では、除数は1であり得る。45~65度の範囲では、除数は2であり得、25~45度の範囲では、除数は4であり得る。85~105度の範囲では、除数は1/2であり得る。あるいは、乗数を使用してもよく、上記の逆数が、MRレジスタ52から報告される。更に別の代替例では、MRレジスタは、乗数又は除数ではなく、実際のリフレッシュレートを報告することができる。リフレッシュレートの任意の表現を使用してもよい。
上述のように、MRレジスタ52によって示されるリフレッシュレートは、(図2に示した温度センサ32Aを使用して)DRAM30Aによって測定された温度に基づくことがあり、DRAM30A内に設計されたマージンを(一実施形態では、摂氏10度のオーダで)適用することができる。メモリコントローラ18は、リフレッシュレートを取得するためにMRレジスタ52を定期的に読み取り得、リフレッシュレートの指標をリフレッシュレートレジスタ38Aに記憶し得る。指標は、上記の乗数/除数であってもよく、又はベースリフレッシュレート及び乗数又は除数に基づいて、(例えば、クロック周期又は時間に関する)実際のリフレッシュレートを表す値であってもよい。
前述のように、低減リフレッシュレートレジスタ40Aは、リフレッシュレートレジスタ38Aのリフレッシュレートと比較して、低減リフレッシュレートでプログラムされ得る。低減リフレッシュレートは、SOC10内の現在温度に基づいて、リフレッシュレートからスケーリングされ得る。現在温度は、熱コントローラ50によって提供される、温度センサ34A~34Mのいずれかによって測定された最高温度であり得る。あるいは、熱コントローラ50は、最高測定温度に基づいて、低減リフレッシュレートレジスタ40Aをプログラムすることができる。加えて、熱コントローラ50は、以前の温度測定値及び現在の温度測定値に基づいて温度変化レートを判定することができ、そのレートをリフレッシュ制御回路36に提供することができる。あるいは、熱コントローラ50は、温度変化レートを、リフレッシュレートと低減リフレッシュレートとの間で選択するために使用される閾値と比較し、メモリコントローラ18に対する閾値を超えているか否かの指標を提供して、リフレッシュレートと低減リフレッシュレートとの間で選択し得る。
図5は、DRAM30A~30Dのリフレッシュレートを選択するための、SOC10の一実施形態の動作を示すフローチャートである。理解を容易にするために、特定の順序でブロックを示しているが、他の順序を使用してもよい。ハードウェアに実装されるブロックは、ハードウェアを形成する組み合わせ論理において並列に実行され得る。ブロック、ブロックの組み合わせ、及び/又はフローチャート全体は、複数のクロック周期にわたってパイプライン化され得る。
図5に示した動作は、SOC10において定期的に実行され得る。動作が実行される頻度は、SOC10において温度がどれだけ速く変化し得るかに関連し得る。例えば、一実施形態では、図5での動作は、ミリ秒ごとに1回のオーダで実行され得る。別の実施形態では、動作は、ミリ秒ごとに1回よりも高い頻度(例えば、ミリ秒ごとに複数回の動作、又は100マイクロ秒ごとに1回、10マイクロ秒ごとに1回など)であり得る。更に別の実施形態では、動作は、ミリ秒ごとに1回よりも低い頻度(例えば、2ミリ秒ごとに1回、5ミリ秒ごとに1回、10ミリ秒ごとに1回など)であり得る。任意の所望のレートが使用され得る。
熱コントローラ50又はPMGR20は、温度センサを読み取り、レジスタ42内の現在温度をキャプチャすることができる(ブロック60)。熱コントローラ50は、現在温度のうちの最高温度を判定することができ(ブロック62)、温度の最大変化レートを判定することができる(ブロック64)。温度変化レートは、そのセンサ及び(2つの温度の読み取り間の時間量とともに)現在温度によって測定された以前の温度から、各温度センサに対して判定され得る。あるいは、各センサからの2つ以上の温度の履歴を電流温度とともに使用して、温度変化レートを判定してもよい。最大変化レートは、最高温度以外の温度と関連付けられ得る(例えば、より低い温度は、最高温度よりも急速に変化していることがある)。
メモリコントローラ18は、各DRAM30A~30Dに対するMRレジスタを読み取ることができ、対応する未修正リフレッシュレートをリフレッシュレートレジスタ38A~38Dに設定することができる(ブロック66)。熱コントローラ50は、最高測定温度に基づいて、各DRAM30A~30Dに対する低減リフレッシュレートを生成することができる(ブロック68)。例えば、熱コントローラ50は、SOC10によって測定された最高温度に基づいて、DRAM30A~30Dによって実装されたマージンとともに、未修正リフレッシュレートに関連付けられた範囲の最高温度に関連付けられた、未修正リフレッシュレートをスケーリングすることができる。あるいは、低減リフレッシュレートは、DRAM30A~30Dの仕様に基づいて生成され得る(例えば、その温度がDRAMの温度であった場合、最高温度測定値に対応するリフレッシュがマージンなしで適用される)。
熱コントローラ50は、最大温度変化レートを熱コントローラ内にプログラムされた閾値レートと比較することができる(判定ブロック70)。上記レートが閾値よりも大きい場合(判定ブロック70、「はい」の分岐)、熱コントローラ50は、メモリコントローラ18に通信して、リフレッシュレートを制御するために、レジスタ38A~38Dから未修正リフレッシュレートを選択することができる(ブロック72)。上記レートが閾値未満である場合(判定ブロック70、「いいえ」の分岐)、熱コントローラ50は、メモリコントローラ18に通信して、リフレッシュレートを制御するために、レジスタ40A~40Dから低減リフレッシュレートを選択することができる(ブロック74)。別の実施形態では、メモリコントローラ18は、閾値を用いてプログラムされてもよく、熱コントローラ50によって提供される最大変化レートとの比較を実行することができる。
図6は、システム150の一実施形態のブロック図である。例示される実施形態では、システム150は、1つ以上の周辺装置154及び外部メモリ12に結合されたSOC10の少なくとも1つのインスタンスを含む。SOC 10に供給電圧を供給するとともに、メモリ12及び/又は周辺装置154に1つ以上の供給電圧を供給するPMU156が提供されている。いくつかの実施形態では、SOC10の2つ以上のインスタンスが含まれ得る(かつ、2つ以上のメモリ12もまた含まれ得る)。外部メモリ12は、前述のように、DRAM30A~30Dを含み得る。
PMU156は、一般に、電源電圧を生成し、それらの電源電圧をSOC10、メモリ12、ディスプレイデバイス、画像センサ、ユーザインターフェースデバイスなどの様々なオフチップ周辺構成要素154などのシステムの他の構成要素に提供するための回路を含み得る。PMU156は、したがって、プログラム可能な電圧レギュレータ、電圧要求などを受信するためにSOC10、より具体的にはSOC PMGR20に対してインターフェースするためのロジックを含み得る。
周辺装置154は、システム150の種類に応じて、任意の所望の回路を含んでもよい。例えば、一実施形態では、システム150は、モバイルデバイス(例えば、パーソナルデジタルアシスタント(PDA)、スマートフォンなど)であり得、周辺装置154は、WiFi、Bluetooth、セルラー、全地球測位システムなどの様々なタイプの無線通信用のデバイスを含み得る。周辺装置154はまた、RAM記憶装置、ソリッドステート記憶装置、又はディスク記憶装置を含む追加の記憶装置を含み得る。周辺装置154は、タッチディスプレイスクリーン又はマルチタッチディスプレイスクリーンを含むディスプレイスクリーン、キーボード又は他の入力デバイス、マイクロフォン、スピーカなどのユーザインターフェースデバイスを含み得る。他の実施形態では、システム150は、任意の種類のコンピューティングシステム(例えば、デスクトップパーソナルコンピュータ、ラップトップコンピュータ、ワークステーション、ネットトップなど)とすることができる。
上述の開示内容が十分に理解されれば、多くの変形形態及び変更形態が当業者にとって明らかになるであろう。以下の特許請求の範囲は、全てのそのような変形形態及び修正形態を包含すると解釈されることが意図されている。

Claims (15)

  1. ダイナミックランダムアクセスメモリ(DRAM)と、
    前記DRAMに結合された集積回路であって、
    少なくとも1つの温度センサと、
    メモリコントローラであって、前記少なくとも1つの温度センサによって感知された温度の変化レートに応じて前記メモリコントローラが前記DRAMをリフレッシュする、リフレッシュレートを判定するように構成されている、メモリコントローラと、を備える、集積回路と、
    を備える、システム。
  2. 前記DRAMは、第1のリフレッシュレートを提供するように構成されており、前記メモリコントローラは、前記変化レートが閾値を超えることに応じて、前記第1のリフレッシュレートを選択するように構成されている、請求項1に記載のシステム。
  3. 前記DRAMは、第2の温度センサを更に備え、前記DRAMは、前記第2の温度センサによって感知された温度に応じて、前記第1のリフレッシュレートを生成するように構成されている、請求項2に記載のシステム。
  4. 前記メモリコントローラは、前記変化レートが前記閾値を超えないことに応じて、前記第1のリフレッシュレートよりも低い第2のリフレッシュレートを選択するように構成されている、請求項2又は3のいずれかに記載のシステム。
  5. 前記第2のリフレッシュレートは、前記少なくとも1つの温度センサによって感知された温度に応じて、前記第1のリフレッシュレートからスケーリングされる、請求項4に記載のシステム。
  6. 前記集積回路は、前記集積回路内の前記少なくとも1つの温度センサによって感知された温度に応じて、前記集積回路内の温度の前記変化レートを検出するように構成された熱コントローラを備える、請求項1~5のいずれか一項に記載のシステム。
  7. 前記集積回路内の前記少なくとも1つの温度センサは、複数の温度センサを備え、前記温度は、前記複数の温度センサによって感知された最高温度である、請求項6に記載のシステム。
  8. 前記DRAMは、前記メモリコントローラに結合された複数のDRAMのうちの1つであり、前記メモリコントローラは、前記複数のDRAMに対して、複数のリフレッシュレートを独立して制御するように構成されている、請求項1~7のいずれか一項に記載のシステム。
  9. 前記複数のDRAMのうちの所与のDRAMは、前記所与のDRAMに対する第1のリフレッシュレートを生成するように構成されており、前記メモリコントローラは、前記所与のDRAMに対する前記リフレッシュレートに基づいて、前記所与のDRAMをリフレッシュするように構成されている、請求項8に記載のシステム。
  10. メモリコントローラを含む集積回路内の温度の変化レートを判定することと、
    前記温度の前記変化レートに応じて前記メモリコントローラがダイナミックランダムアクセスメモリ(DRAM)をリフレッシュする、リフレッシュレートを判定することと、
    を含む、方法。
  11. 前記リフレッシュレートを判定することは、前記DRAMによって提供される第1のリフレッシュレート、及び前記集積回路内の温度センサによる1つ以上の温度測定値に基づいて判定される第2のリフレッシュレートから、前記リフレッシュレートを選択することを含む、請求項10に記載の方法。
  12. 前記リフレッシュレートを選択することは、前記変化レートが閾値を超えることに応じて、前記第1のリフレッシュレートを選択することを含む、請求項11に記載の方法。
  13. 前記リフレッシュレートを選択することは、前記変化レートが前記閾値を超えないことに応じて、前記第2のリフレッシュレートを選択することを含む、請求項11又は12のいずれかに記載の方法。
  14. 前記1つ以上の温度測定値に応じて前記第2のリフレッシュレートを判定するために、前記第1のリフレッシュレートをスケーリングすることを更に含む、請求項11~13のいずれか一項に記載の方法。
  15. 前記DRAMは、前記メモリコントローラによって制御される複数のDRAMのうちの1つであり、前記方法は、前記複数のDRAMに対して、前記リフレッシュレートを独立して判定することを更に含む、請求項10~15のいずれか一項に記載の方法。
JP2022502424A 2019-07-18 2020-07-07 動的リフレッシュレート制御 Active JP7240553B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/515,351 2019-07-18
US16/515,351 US10978136B2 (en) 2019-07-18 2019-07-18 Dynamic refresh rate control
PCT/US2020/041039 WO2021011236A1 (en) 2019-07-18 2020-07-07 Dynamic refresh rate control

Publications (2)

Publication Number Publication Date
JP2022540673A true JP2022540673A (ja) 2022-09-16
JP7240553B2 JP7240553B2 (ja) 2023-03-15

Family

ID=71944294

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022502424A Active JP7240553B2 (ja) 2019-07-18 2020-07-07 動的リフレッシュレート制御

Country Status (7)

Country Link
US (4) US10978136B2 (ja)
JP (1) JP7240553B2 (ja)
KR (1) KR20220019051A (ja)
CN (1) CN114127851A (ja)
DE (1) DE112020003419T5 (ja)
TW (1) TWI743889B (ja)
WO (1) WO2021011236A1 (ja)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11049545B2 (en) 2019-04-23 2021-06-29 Micron Technology, Inc. Methods for adjusting row hammer refresh rates and related memory devices and systems
US11031066B2 (en) * 2019-06-24 2021-06-08 Micron Technology, Inc. Methods for adjusting memory device refresh operations based on memory device temperature, and related memory devices and systems
US10978136B2 (en) 2019-07-18 2021-04-13 Apple Inc. Dynamic refresh rate control
US20210200298A1 (en) * 2019-12-30 2021-07-01 Advanced Micro Devices, Inc. Long-idle state system and method
CN114461051B (zh) * 2021-12-29 2023-01-17 荣耀终端有限公司 帧率切换方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05501628A (ja) * 1989-11-18 1993-03-25 イー・オゥ・ヨーロッパ・リミテッド メモリ装置をリフレッシュする方法
JP2015041395A (ja) * 2013-08-20 2015-03-02 キヤノン株式会社 情報処理装置及びその制御方法、並びに、そのプログラムと記憶媒体
JP2016048592A (ja) * 2014-08-27 2016-04-07 ルネサスエレクトロニクス株式会社 半導体装置

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5784328A (en) * 1996-12-23 1998-07-21 Lsi Logic Corporation Memory system including an on-chip temperature sensor for regulating the refresh rate of a DRAM array
US6438057B1 (en) * 2001-07-06 2002-08-20 Infineon Technologies Ag DRAM refresh timing adjustment device, system and method
KR20050118952A (ko) * 2004-06-15 2005-12-20 삼성전자주식회사 히스테리리스 특성을 갖는 온도 감지 회로
US8122187B2 (en) 2004-07-02 2012-02-21 Qualcomm Incorporated Refreshing dynamic volatile memory
US7214910B2 (en) * 2004-07-06 2007-05-08 International Business Machines Corporation On-chip power supply regulator and temperature control system
KR100564640B1 (ko) 2005-02-16 2006-03-28 삼성전자주식회사 온도측정기 동작지시신호 발생기 및 이를 구비하는 반도체메모리 장치
KR100855578B1 (ko) 2007-04-30 2008-09-01 삼성전자주식회사 반도체 메모리 소자의 리프레시 주기 제어회로 및 리프레시주기 제어방법
JP5501628B2 (ja) 2009-01-29 2014-05-28 三菱鉛筆株式会社 筆記具用キャップ
CN104115227B (zh) 2011-12-23 2017-02-15 英特尔公司 使用系统热传感器数据的存储器操作
US9342443B2 (en) * 2013-03-15 2016-05-17 Micron Technology, Inc. Systems and methods for memory system management based on thermal information of a memory system
US9911485B2 (en) * 2013-11-11 2018-03-06 Qualcomm Incorporated Method and apparatus for refreshing a memory cell
US9472261B1 (en) * 2015-04-17 2016-10-18 Qualcomm Incorporated Systems and methods to refresh DRAM based on temperature and based on calibration data
US9734887B1 (en) * 2016-03-21 2017-08-15 International Business Machines Corporation Per-die based memory refresh control based on a master controller
US10394618B2 (en) * 2017-07-14 2019-08-27 International Business Machines Corporation Thermal and power memory actions
US10276228B1 (en) * 2017-12-22 2019-04-30 Nanya Technology Corporation DRAM and method of operating the same
US10978136B2 (en) 2019-07-18 2021-04-13 Apple Inc. Dynamic refresh rate control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05501628A (ja) * 1989-11-18 1993-03-25 イー・オゥ・ヨーロッパ・リミテッド メモリ装置をリフレッシュする方法
JP2015041395A (ja) * 2013-08-20 2015-03-02 キヤノン株式会社 情報処理装置及びその制御方法、並びに、そのプログラムと記憶媒体
JP2016048592A (ja) * 2014-08-27 2016-04-07 ルネサスエレクトロニクス株式会社 半導体装置

Also Published As

Publication number Publication date
TW202105388A (zh) 2021-02-01
US11823728B2 (en) 2023-11-21
US20220254410A1 (en) 2022-08-11
US11270753B2 (en) 2022-03-08
CN114127851A (zh) 2022-03-01
US20210020231A1 (en) 2021-01-21
JP7240553B2 (ja) 2023-03-15
KR20220019051A (ko) 2022-02-15
DE112020003419T5 (de) 2022-03-31
US20210201987A1 (en) 2021-07-01
US20240119991A1 (en) 2024-04-11
US10978136B2 (en) 2021-04-13
TWI743889B (zh) 2021-10-21
WO2021011236A1 (en) 2021-01-21

Similar Documents

Publication Publication Date Title
JP7240553B2 (ja) 動的リフレッシュレート制御
US11474703B2 (en) Memory system with region-specific memory access scheduling
JP6761873B2 (ja) セルフリフレッシュステートマシンmopアレイ
JP6097444B2 (ja) メモリシステムの温度情報に基づくメモリシステム管理のためのシステム及び方法
Bhati et al. DRAM refresh mechanisms, penalties, and trade-offs
EP2573531B1 (en) Threshold-based temperature-dependent power/thermal management with temperature sensor calibration
JP5638110B2 (ja) 熱制御装置及び方法
US8769332B2 (en) Regional clock gating and dithering
KR102407439B1 (ko) 메모리 장치의 구동 강도, odt 트레이닝 방법, 이를 수행하는 컴퓨팅 시스템 및 시스템 온 칩
KR20140085955A (ko) 메모리 모듈 및 메모리 시스템
CN109219806B (zh) 低功率存储器节流
BR112012025292B1 (pt) circuito integrado e método
JP2019525271A (ja) 高速メモリインタフェースのためのコマンドアービトレーション
US20160246712A1 (en) Indirection data structures implemented as reconfigurable hardware
US9298243B2 (en) Selection of an operating point of a memory physical layer interface and a memory controller based on memory bandwidth utilization
US11226752B2 (en) Filtering memory calibration
Wang et al. Building and optimizing MRAM-based commodity memories
Jung et al. The dynamic random access memory challenge in embedded computing systems
Shin et al. Bandwidth-aware DRAM page migration for heterogeneous mobile memory systems
KR20230159602A (ko) 다중 메모리 제어기 시스템에서의 어드레스 해싱

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220114

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220114

TRDD Decision of grant or rejection written
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230130

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230201

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230303

R150 Certificate of patent or registration of utility model

Ref document number: 7240553

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150