JP7408650B2 - ダイナミックランダムアクセスメモリランクのパワーダウンモードの投機的な終了 - Google Patents

ダイナミックランダムアクセスメモリランクのパワーダウンモードの投機的な終了 Download PDF

Info

Publication number
JP7408650B2
JP7408650B2 JP2021521135A JP2021521135A JP7408650B2 JP 7408650 B2 JP7408650 B2 JP 7408650B2 JP 2021521135 A JP2021521135 A JP 2021521135A JP 2021521135 A JP2021521135 A JP 2021521135A JP 7408650 B2 JP7408650 B2 JP 7408650B2
Authority
JP
Japan
Prior art keywords
rank
memory controller
dram
low power
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.)
Active
Application number
JP2021521135A
Other languages
English (en)
Other versions
JP2022511629A (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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices 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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JP2022511629A publication Critical patent/JP2022511629A/ja
Application granted granted Critical
Publication of JP7408650B2 publication Critical patent/JP7408650B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • 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
    • 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
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3225Monitoring of peripheral devices of memory devices
    • 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/3228Monitoring task completion, e.g. by use of idle timers, stop commands or wait commands
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • 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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3037Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a memory, e.g. virtual memory, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3409Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment
    • G06F11/3419Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time
    • G06F11/3423Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment for performance assessment by assessing time where the assessed time is active or idle time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • 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 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/14Power supply arrangements, e.g. power down, chip selection or deselection, layout of wirings or power grids, or multiple supply levels
    • G11C5/148Details of power up or power down circuits, standby circuits or recovery circuits
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/222Clock generating, synchronizing or distributing circuits within memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0284Multiple user address space allocation, e.g. using different base addresses
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
    • 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

Description

コンピュータシステムは、メインメモリ用にダイナミックランダムアクセスメモリ(DRAM)集積回路(IC)のアレイを頻繁に使用する。例えば、従来のデュアルインラインメモリモジュール(DIMM)は、プリント回路基板に取り付けられたDRAM ICのセットとして実装される。DIMMは1つ以上のランクで構成されており、各ランクは、同じ制御ライン、すなわちチップセレクトに接続されたDRAM ICのセットであり、したがって、メモリコントローラから同時にアクセスされる。エネルギー効率を高めるために、DRAM ICを、アクティブ、スタンバイ、ナップ(nap)、パワーダウン、セルフリフレッシュ等の様々な電源状態に置くことができる。メモリコントローラは、複数のDRAMランクの電力状態を、チップセレクトを介してランク毎に制御する。例えば、パワーダウンはDRAMの低電力状態であり、消費電力はアクティブ電力状態のほんの少し(例えば、1%)であるが、クロック同期がアクティブ状態に戻るための遅延も必要とする。他の低電力モードでは、開始と終了の遅延が異なる。メモリコントローラがDRAMランクへのアクセス要求におけるギャップに遭遇すると、メモリコントローラは、パワーダウンモードに移行する条件が満たされていることを確認し、次いで、パワーダウン開始コマンドを、チップセレクトを介してDRAMランクに送信する。メモリコントローラがプロセッサコアからDRAMランクにアクセスするための新たな要求を受信すると、メモリコントローラは、パワーダウン終了コマンドをDRAMランクに送信する。但し、メモリコントローラは、DRAMにアクセスする前に、DRAMランクがパワーダウンモードを終了してアクティブモードに遷移するのを待つ必要があるため、パワーダウンモードを使用することに対するレイテンシペナルティが生じる。
一態様によれば、方法は、メモリコントローラにおいて、低電力モードにあるダイナミックランダムアクセスメモリ(DRAM)集積回路の第1のランクにアクセスするためのアクセス要求が、メモリコントローラにおいて受信されると予想される時間を予測することを含む。また、方法は、予測された時間の前に第1のランクの低電力モードを終了することを含む。一実施形態では、予測は、メモリコントローラにおける第1のランクにアクセスするためのアクセス要求のタイミングの履歴に基づいている。また、予測は、第1のランクが低電力モードに移行する第1の時間と、メモリコントローラが第1のランクにアクセスするためのアクセス要求を受信する第2の時間と、の間の平均クロックサイクル数に基づいてもよい。一実施形態では、低電力モードを終了することは、アクセス要求がメモリコントローラにおいて受信される予測時間よりも所定のクロックサイクル数だけ前に、低電力モードを終了することを含む。この場合、所定のクロックサイクル数は、第1のランクの低電力モード終了レイテンシに基づくことができる。一実施形態では、DRAM集積回路は、複数のランクを含み、方法は、メモリコントローラにおいて、低電力モードにあるDRAMの各ランクにアクセスするためのアクセス要求がメモリコントローラにおいて受信される時間を予測することと、各ランクの低電力モードを、各ランクに対応する予測時間の前に終了することと、をさらに含む。一実施形態では、この方法は、メモリコントローラにおいて、第1のランクの低電力モードの前回の終了に関連するレイテンシペナルティに基づいて、予測時間を調整することをさらに含む。
別の態様によれば、方法は、第1のランクにアクセスするためのアクセス要求を受信する前に、メモリコントローラが第1のランクにアクセスするためのアクセス要求を受信すると予測される時間に応じて、メモリコントローラにおいて、DRAM集積回路の第1のランクの低電力モードを終了することを含む。また、方法は、メモリコントローラが第1のランクにアクセスするためのアクセス要求を受信する時間を予測することを含んでもよく、予測することは、メモリコントローラにおいて、第1のランクが低電力モードに移行してから、第1のランクにアクセスするためのアクセス要求がメモリコントローラにおいて受信されるまでにどれだけの時間が経過したかという履歴に基づいている。一実施形態では、予測することは、第1のランクが低電力モードに移行する第1の時間と、メモリコントローラが第1のランクにアクセスするためのアクセス要求を受信する第2の時間と、の間の平均クロックサイクル数に基づいている。一実施形態では、低電力モードを終了することは、アクセス要求がメモリコントローラにおいて受信される予測時間よりも所定のクロックサイクル数だけ前に、低電力モードを終了することを含む。この場合、所定のクロックサイクル数は、第1のランクの低電力モード終了レイテンシに基づいている。一実施形態では、DRAM集積回路は、複数のランクを含み、方法は、メモリコントローラにおいて、低電力モードにあるDRAM集積回路の各ランクにアクセスするためのアクセス要求がメモリコントローラにおいて受信される時間を予測することと、各ランクの低電力モードを、各ランクに対応する予測時間の前に終了することと、をさらに含む。一実施形態では、この方法は、メモリコントローラにおいて、第1のランクの低電力モードの前回の終了に関連するレイテンシペナルティに基づいて、予測時間を調整することをさらに含む。
さらに別の態様によれば、システムは、複数のランクを含むDRAM集積回路に結合するように構成されたメモリコントローラを含む。メモリコントローラは、低電力モードにあるDRAM集積回路の第1のランクにアクセスするためのアクセス要求がメモリコントローラにおいて受信される時間を予測し、予測時間の前に第1のランクの低電力モードを終了する。一実施形態では、メモリコントローラは、第1のランクが低電力モードに移行してから、第1のランクにアクセスするためのアクセス要求がメモリコントローラにおいて受信されるまでにどれだけの時間が経過したかという履歴に基づいて、時間を予測する。この場合、メモリコントローラは、アクセス要求がメモリコントローラにおいて受信される予測時間よりも所定のクロックサイクル数だけ前に、第1のランクの低電力モードを終了することができる。所定のクロックサイクル数は、第1のランクの低電力モード終了レイテンシに基づいてもよい。一実施形態では、メモリコントローラは、低電力モードにあるDRAM集積回路の各ランクにアクセスするためのアクセス要求がメモリコントローラにおいて受信される時間を予測し、各ランクの低電力モードを、各ランクに対応する予測時間の前に終了する。一実施形態では、メモリコントローラは、第1のランクの低電力モードの前回の終了に関連するレイテンシペナルティに基づいて、予測時間を調整する。
本開示は、添付の図面を参照することによって、より良く理解することができ、その多くの特徴及び利点が当業者に明らかになる。異なる図面で同じ符号を使用している場合、類似又は同一の要素を示す。
いくつかの実施形態による、DRAMのランクのパワーダウンからの投機的な終了を採用するメモリコントローラを含む処理システムのブロック図である。 いくつかの実施形態による、図1のメモリコントローラの電力管理ユニット及び予測ユニットを示すブロック図である。 いくつかの実施形態による、パワーダウンモードから投機的に終了するDRAMのランクのパワーダウンモード/アクティブモード遷移を示す図である。 いくつかの実施形態による、DRAMのランクのパワーダウンモードを投機的に終了する方法を示すフロー図である。
図1~図4は、DRAMランクのメモリコントローラがDRAMランクにアクセスする要求を受信すると予測される時間に基づいて、DRAMランクのパワーダウンモード等の低電力モードをプリエンプティブに終了するシステム及び技法を示す。メモリコントローラは、DRAMランクが低電力モードに移行してから、DRAMのランクにアクセスする要求がメモリコントローラによって受信されるまでの時間を追跡する。メモリコントローラは、アクセス要求のタイミングの履歴に基づいて、DRAMランク毎に、低電力モードに移行してから各DRAMランクにアクセスする要求が受信されると予想される時間を反映した予測時間を予測する。メモリコントローラは、予測時間に基づいて、DRAMランクにアクセスする要求を受信する前に、低電力モード終了コマンドを投機的にDRAMランクに送信する。いくつかの実施形態では、メモリコントローラは、DRAMランクが低電力モードを終了してアクティブ状態に戻るために必要とするクロックサイクル数に基づく予測時間の前に、低電力モード終了コマンドを送信する。
メモリコントローラは、各DRAMランクの低電力モードがプリエンプティブに終了されてから、各DRAMランクにアクセスする要求がメモリコントローラによって受信されるまでの時間を監視し、アクセス要求の履歴に基づいて、各DRAMランクについての予測時間を調整する。同様に、予測時間よりも前に、DRAMランクへのデマンドアクセス要求をメモリコントローラが受信し、その結果、メモリコントローラがDRAMランクの低電力モードを終了してアクティブ状態に戻るのを待つ必要(つまり、低電力モード終了レイテンシ、又は、パワーダウン終了レイテンシ)がある場合、メモリコントローラは、影響を受けるDRAMランクの低電力モードの前回の終了時に発生したパワーダウン終了レイテンシペナルティに基づいて、予測時間を調整する。
図1は、いくつかの実施形態による、DRAMのランクの投機的なパワーダウンモード終了を採用するメモリコントローラ110を含む処理システム100のブロック図である。処理システム100は、例えば、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、携帯電話、ゲーム機等を含む。処理システム100は、プロセッサコア105で実行される命令によってアクセスされるデータを記憶するためのメモリモジュールから構成されたメモリサブシステムを含む。メモリサブシステムは、メモリ階層の最上位において、実行命令によってアクセス可能な全てのデータを記憶するためのメインメモリと、メモリ階層の下位レベルにおいて、メインメモリに記憶されたデータのサブセットを記憶するための1つ以上のキャッシュと、を有するメモリ階層に編成されている。プロセッサコア105が必要とするデータがメモリ階層のキャッシュで見つからない場合、キャッシュコントローラは、メモリアクセス要求をメモリコントローラに発行して、メインメモリからデータを取得する。図示した例では、処理システム100は、メモリコントローラ110に結合された1つ以上のプロセッサコア105と、ランクA120及びランクB130の2つのランクのDRAM ICを含むDIMM115と、を含む。いくつかの実施形態では、メモリコントローラ110は、3つ以上のランクのDRAM ICを制御する。
1つ以上のプロセッサコア105は、中央処理装置(CPU)若しくはグラフィックス処理装置(GPU)、又は、これらの組み合わせとして実装され、プロセッサコア105によって実行されるオペレーティングシステム又はアプリケーションからの命令を実行する際に使用される、様々なステージ又はコンポーネント(例えば、プリフェッチャ(図示省略)、整数実行ユニット若しくは論理演算ユニット(ALU)(図示省略)、浮動小数点演算ユニット(FPU)(図示省略)、リタイアメントユニット(図示省略)等)を含む。1つ以上のプロセッサコア105は、DIMM115へのメモリアクセスよりも短いレイテンシで実行パイプラインによりアクセスされ得る、命令を含むデータを一時的に記憶するためのキャッシュ階層を形成する1つ以上のキャッシュ(図示省略)をさらに含む。
メモリコントローラ110は、DIMM115とのインタフェースを含む、1つ以上のプロセッサコア105のための様々なインタフェース機能を提供する。さらに、メモリコントローラ110は、DIMM115の電力管理機能を提供する。この目的のために、メモリコントローラ110は、予測ユニット140に結合された電力管理ユニット145を含む。電力管理ユニット145は、DIMM115のチップセレクト112を介してランクA120の電力状態を制御し、チップセレクト114を介してランクB130の電力状態を制御する。
少なくとも1つの実施形態では、DIMM115のランクA120及びランクB130は、少なくとも2つの一般的なモード(アクティブモード及びパワーダウンモード)を有する。アクティブモードでは、ランクA120のDRAM IC121~128及びランクB130のDRAM IC131~138が、読み書きトランザクション実行等のメモリアクセス要求の処理し、パワーダウンモードでは、ランクA120のDRAM IC121~128及びランクB130のDRAM IC131~138が、メモリアクセス要求を処理せず、消費電力は、アクティブモード中の消費電力よりも大幅に低い。アクティブモードにある間、ランクA120のDRAM IC121~128及びランクB130のDRAM IC131~138は、電力管理ユニット145によって制御され、クロック周波数及び電圧の対応するペアリングとともに、いくつかの異なるパフォーマンス状態又は動作点のうち何れかを使用する。DRAMランクがアイドル状態にある場合、電力管理ユニット145は、DRAMランクへのアクセス要求における予期されるギャップ等のパワーダウンモードの条件が満たされていると判別した場合に、DRAMランクをパワーダウンモードにする。エネルギーコスト及びパフォーマンスコスト(例えば、クロック再同期の遅延に関連するレイテンシ等)の観点から、パワーダウンモードの開始及び終了に関連するオーバーヘッドが存在する。例えば、メモリコントローラ110が、パワーダウンモードにあるDRAMランクにアクセスする要求を受信した場合(すなわち、パワーダウンモードの「オンデマンド」終了)、メモリコントローラ110は、読み出し又は書き込みコマンドをDRMランクに送信する前に、パワーダウン終了(PDX)コマンドを送信し、DRAMランクが再同期してアクティブモードへの遷移を完了するためのいくつかのクロックサイクル(パワーダウン終了(tXP)サイクル)を待つことによって、DRAMランクをアクティブモードに復元する必要がある。したがって、パワーダウンモードのオンデマンド終了は、特に「無負荷(unloaded)」又は「軽負荷(lightly loaded)」の状況において、DRAMにアクセスする要求に対して更なるレイテンシを加える。無負荷の状況は、メモリコントローラ110が、DRAM IC121~128又は131~138にアクセスする要求を時間の経過後に受信した場合(例えば、プロセッサがスリープモードから目覚めた後等のように、アイドル状態を終了している場合)に発生する。軽負荷の状況は、メモリコントローラ110がDRAM IC 121~128又は131~138に対する比較的少数の要求を受信し、その結果、メモリDIMM115のレイテンシが全体のレイテンシにおいて大きな要因となる場合に発生する。
DRAMランクがパワーダウンモードである間にDRAMランクにアクセスする要求を受信するペナルティを軽減するために、予測ユニット140は、各DRAMランクの現在のパワーダウンモードの期間(すなわち、DRAMランクが開始又は開始しようとしているパワーダウンモードの反復)を予測し、これにより、パワーダウンモードの終了がいつ発生するかを予測する。予測ユニット140は、現在のパワーダウンモードの期間を推定又は他の方法で予測する際に、様々な予測方法の何れかを使用する。例えば、いくつかの実施形態では、予測ユニット140は、DRAMランク毎に、以前に発生したいくつかのパワーダウンモードの各々の期間(すなわち、DRAMランクがパワーダウンモードに移行する第1の時間から、メモリコントローラ110がDRAMランクにアクセスする要求をプロセッサコア105から受信する第2の時間まで)に関する情報を記憶し、分析する。DRAMランク毎の期間情報はビン(bin)に配置され、予測ユニット140は、このビン化情報(binned information)に基づいて、DRAMランク毎の現在のパワーダウンモードの期間を予測する。他の実施形態では、予測ユニット140は、パワーダウンモードに移行する前のDRAMランクへのアクセスの履歴等の様々な基準に基づいて、定義された平均パワーダウンモードの期間が事前に入力されているルックアップテーブル又は他のデータ構造を使用して、各DRAMランクの全てのパワーダウンモードについて定義された平均期間を仮定する等のような異なる予測プロセスを使用する。
電力管理ユニット145は、予測ユニット140によって提供された予測パワーダウンモード期間を使用して、DRAMランクにアクセスする要求を受信する前に各DRAMランクのパワーダウンモードを投機的に終了する時期を決定し、パワーダウンモードのオンデマンド終了に関連するレイテンシを低減する。少なくとも1つの実施形態では、電力管理ユニット145は、予測されたパワーダウンモード期間の前にパワーダウン終了プロセスをトリガし、その結果、DRAMランクは、予測されたパワーダウンモード期間の終了時に、入力されたメモリアクセス要求を処理するために再同期化してアクティブ状態に遷移するのに必要ないくつかのtXPサイクルを既に完了している。
説明すると、動作中、プロセッサコア105は、アクセス要求102をメモリコントローラ110に送信して、DIMM115に記憶されたデータ及び命令へのアクセスを要求する。メモリコントローラ110の予測ユニット140は、ランクA120のDRAM IC121~128及びランクB 130のDRAM IC131~138へのアクセスを追跡する。ランクA120及びランクB130の各々へのアクセス要求パターンに基づいて、電力管理ユニット145は、パワーダウンモードのための条件(例えば、DRAMランクへのアクセス要求において予期されるギャップ等)が、アイドル状態のランクについて満たされるかどうかを判別する。DRAMランクがアイドル状態である場合、電力管理ユニット145は、パワーダウンモードの条件が満たされていると判別した場合、DRAMランクをパワーダウンモードにする。
DRAMランクがパワーダウンモードである間、予測ユニット140は、メモリコントローラ110が、パワーダウンモードであるランクのDRAM ICにアクセスする要求をプロセッサコア105から受信する前に、パワーダウンモードの期間に関する情報を記憶し、分析する。予測ユニット140は、ランクがパワーダウンモードに移行してから、ランクにアクセスするためのアクセス要求がメモリコントローラ110において受信されるまでにどれだけの時間が経過したかという履歴に基づいて、ランクにアクセスする要求がメモリコントローラ110において受信される前に、そのランクの次のパワーダウンモードがどのくらいの期間続くかを予測する。いくつかの実施形態では、予測ユニット140は、ランクがパワーダウンモードに移行する時間と、メモリコントローラが、ランクにアクセスするためのアクセス要求を受信する時間と、の間の平均クロックサイクル数に基づいて、ランクのパワーダウンモード期間を予測する。
ランクのパワーダウンモードの予測期間に基づいて、電力管理ユニット145は、ランクにアクセスする要求をメモリコントローラ110が受信すると予測される時間の前に、プリエンプティブPDXコマンド(preemptive PDX command)をランクに送信する。メモリコントローラ110は、ランクが再同期してアクティブ状態に遷移するのに必要なtXPサイクル数の間、待機し、その後、メモリコントローラ110は、ランクへの次のアクセス要求に基づいてランクにアクセスする。予測ユニット140は、プリエンプティブPDXコマンドに基づいてパワーダウンモードを終了してから、ランクにアクセスする要求をメモリコントローラ110が受信するまでの期間を監視する。予測ユニット140は、アクティブモードへの遷移(又は、逆、パワーダウンモードからの早過ぎるプリエンプティブ終了)に関連するレイテンシに基づいて、ランクの予測されるパワーダウンモード期間を調整する。
予測ユニット140は、複数のDRAMランクのDRAMランク毎に、予測されるパワーダウンモード期間を生成して調整する。例えば、いくつかの実施形態では、処理システム100は、複数のDIMM115を含み、各DIMM115は、1つ以上のDRAMランク120,130を含む。DIMM115内の各DRAMランク120,130は、その特定のDRAMランク120,130へのアクセスパターンに基づいて、特定の予測パワーダウンモード期間を有する。したがって、予測ユニット140は、複数のDRAMランク120,130の各々に対応する予測パワーダウンモード期間を生成し、調整する。
図2は、いくつかの実施形態による、図1のメモリコントローラ110の電力管理ユニット145及び予測ユニット140を示すブロック図である。図示した例では、予測ユニット140は、様々なDRAMランク120,130に向けられたアクセス要求の指標を受信するように結合されたアクティビティモニタ212を含む。アクティビティモニタ212によって監視されるアクティビティのタイプは、DRAM IC121~128,131~138に配置されたメモリアドレスへの読み出し及び書き込み要求を含む。予測ユニット140は、複数のタイマ213をさらに含む。アクティビティが監視されるDRAMランク毎に1つのタイマ213を含むことができる。いくつかの実施形態では、タイマ213の各々は、アクティビティが、アクティビティモニタ212によって対応するDRAMランクから検出されると、リセットされる。リセットされた後、所定のタイマ213は、DRAMランクへの最新のアクセス要求からの時間の追跡を開始する。各タイマ213は、対応するDRAMランクにおいてアクティビティが最後に検出されてからの時間を報告する。DRAMランクをパワーダウンモードにした後、電力管理ユニット145は、所定のDRAMランクがパワーダウンモードにあるとの信号をアクティビティモニタ212に送る。アクティビティモニタ212は、対応するタイマ213から受信した時間値に基づいて、DRAMランクがパワーダウンモードを終了し、アクセス要求の処理を再開するまで、DRAMランクがパワーダウンモードにある時間を記録する。
DRAMランクがパワーダウンモードに移行した後にアクセス要求の処理を再開すると、アクティビティモニタ212は、そのDRAMのパワーダウンモードの期間を、イベントストレージ214に記録する。図示した実施形態では、イベントストレージ214は、パワーダウンモード時間がDRAMランク毎に監視されているので、パワーダウンモードの最新のN個のインスタンスの各々の期間を記憶する。一実施形態では、イベントストレージ214は、DRAMランク毎に1つずつ、複数の先入れ先出し(FIFO)メモリを含む。イベントストレージ214内の各FIFOは、対応するDRAMランクのパワーダウンモードの最新のN個のインスタンスの期間を記憶する。パワーダウンモードの新たなインスタンスの期間は、所定のDRAMランクに対応するFIFOに記録されるので、いくつかの実施形態では、最も古いパワーダウンモードインスタンスの期間が上書きされる。
いくつかの実施形態では、ビニングストレージ(binning storage)215(イベントストレージ214との単一の共同ストレージとして示されている)は、パワーダウンモード期間の分布を生成するために、DRAMランク毎に、パワーダウンモード期間のカウントを、対応するビン(bin)に記憶する。ビニングストレージ215は、記録された期間をイベントストレージ214から読み出し、各ビンのカウント値を生成するためのロジックを含む。パワーダウンモードの追加のインスタンスの発生により、古い期間データが新たな期間によって上書きされると、ビニングストレージ215内のロジックは、ビン内のカウント値を更新する。予測ロジック218は、ビニングストレージ215に結合されている。予測ロジック218は、所定のDRAMランクのパワーダウンモード期間の分布に基づいて、現在のパワーダウンモードの期間に関する予測を生成する。いくつかの実施形態では、予測ロジック218は、所定のDRAMランクの現在のパワーダウンモードの期間に関する予測を、そのDRAMランクのパワーダウンモード期間の平均に基づいて生成する。
予測ロジック218は、パワーダウンモードの期間の予測に加えて、パワーダウンモードの期間の予測に基づいて、パワーダウンモードを終了することができる指定された時間の指標を生成することもできる。例えば、一実施形態では、DRAMランクがパワーダウンモードに置かれる場合、電力管理ユニット145は、予測されたパワーダウンモード期間に基づく指定された時間に、そのDRAMランクのパワーダウンモードを終了させる。パワーダウンモードの終了は、他の方法でパワーダウンモードの終了を引き起こす他の外部イベント(例えば、メモリコントローラ110によるそのDRAMランクへのアクセス要求の受信)無しにもたらされる。さらに、いくつかの実施形態では、パワーダウンモードの終了は、パワーダウンモードの予測された期間が完全に経過する前にもたらされる。パワーダウンモードの期間の予測が適度に正確である場合、パワーダウンモードのプリエンプティブな終了により、様々なパフォーマンス上の利点が得られる。例えば、メモリコントローラ110がDRAMランクへの次のアクセス要求を受信する前に再同期化及びアクティブモードへの遷移が起こり、これにより、DRAMランクは、パワーダウンモードを受動的に終了する場合よりも速くアクセス要求の処理を開始することができる。
予測ロジック218によって行われた予測は、電力管理ユニット145の決定ユニット205に転送される。図示した実施形態では、決定ユニット205は、他の情報とともに、パワーダウンモード時間の予測を使用して、DRAMランクのパワーダウンモードをいつプリエンプティブに終了するかを決定する。電力管理ユニット145は、パワーダウン開始(PDE)及びパワーダウン終了(PDX)コマンドをDRAMランクに送信するためのモードセレクタ207をさらに含む。モードセレクタ207は、決定ユニット205から提供された情報に基づいてコマンドを生成する。
図3は、いくつかの実施形態による、パワーダウンモードの投機的な終了を用いた図1のDRAMランクのパワーダウンモード/アクティブモード遷移を示す図である。特に、図3に示すタイムライン300は、メモリコントローラ110がパワーダウンモードの条件が満たされていると判別したことに応じて、DRAMランクがパワーダウンモードに遷移し、次に、DRAMランクが入力アクセス要求を処理するためにパワーダウンモードからアクティブモードに遷移する際に発生する一連のイベント又はステージを表す。
時間t0において、メモリコントローラ110は、DRAMランクのパワーダウンモードに移行する条件が満たされていると判別すると、DRAMランクをパワーダウンモードに移行する準備をする。ステージ301において、DRAMランクは、DRAMランクへの未処理のアクセス要求の処理を終了する。時間t1において、メモリコントローラ110は、ステージ302において、DRAMランクのヒステリシスを回避するために、いくつかのアイドルサイクルを待機する。時間t2において、メモリコントローラ110の電力管理ユニット245のモードセレクタ207は、PDEコマンドをDRAMランクに送信し、DRAMランクがステージ305においてパワーダウンモードに移行するようにトリガする。
図3の具体例では、予測ユニット140は、DRAMランクに対する次のアクセス要求がメモリコントローラ110によって受信される予測時間に基づいて、時間t5におけるパワーダウンモードの終了を予測する。予測された終了時間に基づいて、決定ユニット205は、予測された終了の所定サイクル数だけ前の時間t3において、DRAMランクがパワーダウンモードをプリエンプティブに終了することを決定する。モードセレクタ207は、パワーダウンモードを終了するという決定ユニット205による決定に基づいて、DRAMランクへのPDXコマンドを生成する。PDXコマンドに基づいて、DRAMランクは、再同期化及びアクティブモードへの遷移のプロセスを開始する。メモリコントローラ110は、DRAMランクがアクティブモードへの遷移を完了する時間t4まで、所定数のtXPサイクルの間、ステージ306において待機する。PDXコマンドを、予測される終了よりも所定数のtXPサイクルだけ前に送信することにより、メモリコントローラ110は、アクティブモードへの遷移完了前にメモリコントローラ110がDRAMランクへのアクセス要求を受信して、PDXペナルティが発生する可能性を回避又は低減する。したがって、時間t4から、DRAMランクはアクティブ状態にあり、ステージ309においてアクセス要求を処理する準備が整っている。
図4は、いくつかの実施形態による、図1のDRAMランクのパワーダウンモードを投機的に終了する方法400を示すフロー図である。ブロック402において、メモリコントローラ110の予測ユニット140は、DRAMランクがパワーダウンモードに移行した後のDRAMランクへのアクセス要求の履歴を追跡する。ブロック404において、電力管理ユニット145のモードセレクタ207は、DRAMランクのパワーダウンモードの条件が満たされていると決定ユニット205が判別したことに応じて、PDEコマンドをDRAMランクに送信する。ブロック406において、予測ユニット140は、メモリコントローラ110がDRAMランクへのアクセス要求を受信することによってアクティブモードに戻る前に、DRAMランクがパワーダウンモードに置かれる期間を予測する。上述したように、予測ユニット140は、この期間を予測するために、DRAMランクの前回のパワーダウンモード期間又は以前のN回のパワーモード期間の平均に基づく等のように、様々な予測終了技術の何れかを使用する。
ブロック408において、電力管理ユニット145は、予測ユニット140からの予測されたパワーダウンモード期間情報を用いて、パワーダウンモードの予測された終了の指定された時間だけ前に満了するように設定されたカウントダウンタイマを開始する。上述したように、予測される終了の前のこの指定された時間は、一定の時間、所定のクロックサイクル数等であってもよい。カウントダウン時間が満了すると、ブロック410において、電力管理ユニット145は、予測されたパワーダウンモード期間に基づいてPDXコマンドをDRAMランクに送信することによって、DRAMランクのパワーダウンモードをプリエンプティブに終了する。ブロック412において、メモリコントローラ110は、DRAMランクにアクセスするためのアクセス要求102を受信する。ブロック412において、DRAMランクは、アクセス要求102を処理する。
コンピュータ可読記憶媒体は、命令及び/又はデータをコンピュータシステムに提供するために、使用中にコンピュータシステムによってアクセス可能な任意の非一時的な記憶媒体又は非一時的な記憶媒体の組み合わせを含む。このような記憶媒体には、限定されないが、光学媒体(例えば、コンパクトディスク(CD)、デジタル多用途ディスク(DVD)、ブルーレイ(登録商標)ディスク)、磁気媒体(例えば、フロッピー(登録商標)ディスク、磁気テープ、磁気ハードドライブ)、揮発性メモリ(例えば、ランダムアクセスメモリ(RAM)若しくはキャッシュ)、不揮発性メモリ(例えば、読取専用メモリ(ROM)若しくはフラッシュメモリ)、又は、微小電気機械システム(MEMS)ベースの記憶媒体が含まれ得る。コンピュータ可読記憶媒体は、コンピュータシステムに内蔵されてもよいし(例えば、システムRAM又はROM)、コンピュータシステムに固定的に取り付けられてもよいし(例えば、磁気ハードドライブ)、コンピュータシステムに着脱可能に取り付けられてもよいし(例えば、光学ディスク又はユニバーサルシリアルバス(USB)ベースのフラッシュメモリ)、有線又は無線のネットワークを介してコンピュータシステムに接続されてもよい(例えば、ネットワークアクセス可能なストレージ(NAS))。
いくつかの実施形態では、上記の技術のいくつかの態様は、ソフトウェアを実行するプロセッシングシステムの1つ以上のプロセッサによって実装されてもよい。ソフトウェアは、非一時的なコンピュータ可読記憶媒体に記憶され、又は、非一時的なコンピュータ可読記憶媒体上で有形に具現化された実行可能命令の1つ以上のセットを含む。ソフトウェアは、1つ以上のプロセッサによって実行されると、上記の技術の1つ以上の態様を実行するように1つ以上のプロセッサを操作する命令及び特定のデータを含むことができる。非一時的なコンピュータ可読記憶媒体は、例えば、磁気若しくは光ディスク記憶デバイス、例えばフラッシュメモリ、キャッシュ、ランダムアクセスメモリ(RAM)等のソリッドステート記憶デバイス、又は、他の1つ以上の不揮発性メモリデバイス等を含むことができる。非一時的なコンピュータ可読記憶媒体に記憶された実行可能命令は、ソースコード、アセンブリ言語コード、オブジェクトコード、又は、1つ以上のプロセッサによって解釈若しくは実行可能な他の命令フォーマットであってもよい。
上述したものに加えて、概要説明において説明した全てのアクティビティ又は要素が必要とされているわけではなく、特定のアクティビティ又はデバイスの一部が必要とされない場合があり、1つ以上のさらなるアクティビティが実行される場合があり、1つ以上のさらなる要素が含まれる場合があることに留意されたい。さらに、アクティビティが列挙された順序は、必ずしもそれらが実行される順序ではない。また、概念は、特定の実施形態を参照して説明された。しかしながら、当業者であれば、特許請求の範囲に記載されているような本発明の範囲から逸脱することなく、様々な変更及び変形を行うことができるのを理解するであろう。したがって、明細書及び図面は、限定的な意味ではなく例示的な意味で考慮されるべきであり、これらの変更形態の全ては、本発明の範囲内に含まれることが意図される。
利益、他の利点及び問題に対する解決手段を、特定の実施形態に関して上述した。しかし、利益、利点、問題に対する解決手段、及び、何かしらの利益、利点若しくは解決手段が発生又は顕在化する可能性のある特徴は、何れか若しくは全ての請求項に重要な、必須の、又は、不可欠な特徴と解釈されない。さらに、開示された発明は、本明細書の教示の利益を有する当業者には明らかな方法であって、異なっているが同様の方法で修正され実施され得ることから、上述した特定の実施形態は例示にすぎない。添付の特許請求の範囲に記載されている以外に本明細書に示されている構成又は設計の詳細については限定がない。したがって、上述した特定の実施形態は、変更又は修正されてもよく、かかる変更形態の全ては、開示された発明の範囲内にあると考えられることが明らかである。したがって、ここで要求される保護は、添付の特許請求の範囲に記載されている。

Claims (14)

  1. メモリコントローラ(110)、低電力モードにあるダイナミックランダムアクセスメモリ(DRAM)集積回路(121~128)の第1のランク(115)にアクセスするためのアクセス要求(102)が前記メモリコントローラにおいて受信されると予想される時間を予測する(406)ことと、
    前記メモリコントローラが、予測された時間の前に、前記第1のランクの前記低電力モードを終了する(410)ことと、を含む、
    方法。
  2. 前記予測することは、前記メモリコントローラの前記第1のランクにアクセスするためのアクセス要求のタイミングの履歴に基づいている、
    請求項1の方法。
  3. 前記予測することは、前記第1のランクが前記低電力モードに移行する第1の時間と、前記第1のランクにアクセスするためのアクセス要求を前記メモリコントローラが受信する第2の時間と、の間の平均クロックサイクル数に基づいている、
    請求項2の方法。
  4. 前記低電力モードを終了することは、前記アクセス要求が前記メモリコントローラにおいて受信されると予測された時間よりも所定のクロックサイクル数だけ前に前記低電力モードを終了することを含む、
    請求項1の方法。
  5. 前記所定のクロックサイクル数は、前記第1のランクの低電力モード終了レイテンシに基づいている、
    請求項4の方法。
  6. 前記DRAM集積回路は複数のランク(115,120)を含み、
    前記メモリコントローラ、前記低電力モードにある前記DRAM集積回路の各ランクにアクセスするためのアクセス要求が前記メモリコントローラにおいて受信される時間を予測することと、
    各ランクの前記低電力モードを、各ランクに対応する予測された時間の前に終了することと、をさらに含む、
    請求項1~5の何れかの方法。
  7. 前記メモリコントローラ、前記第1のランクの低電力モードの前回の終了に関連するレイテンシペナルティに基づいて、前記予測された時間を調整することをさらに含む、
    請求項1の方法。
  8. デバイス(100)であって、
    複数のランク(115,120)を含むダイナミックランダムアクセスメモリ(DRAM)集積回路(121~126)に結合するように構成されたメモリコントローラ(110)を備え、
    前記メモリコントローラは、
    低電力モードにある前記DRAM集積回路の第1のランクにアクセスするためのアクセス要求が前記メモリコントローラにおいて受信される時間を予測し(406)、
    予測された時間の前に前記第1のランクの前記低電力モードを終了する(410)、
    デバイス。
  9. 前記メモリコントローラは、前記第1のランクが前記低電力モードに移行してから、前記第1のランクにアクセスするためのアクセス要求が前記メモリコントローラにおいて受信されるまでにどれだけの時間が経過したかという履歴に基づいて、前記時間を予測する、
    請求項8のデバイス。
  10. 前記メモリコントローラは、前記第1のランクが前記低電力モードに移行する第1の時間と、前記第1のランクにアクセスするためのアクセス要求を前記メモリコントローラが受信する第2の時間と、の間の平均クロックサイクル数に基づいて、前記時間を予測する、
    請求項9のデバイス
  11. 前記メモリコントローラは、前記アクセス要求が前記メモリコントローラにおいて受信されると予測された時間よりも所定のクロックサイクル数だけ前に前記第1のランクの前記低電力モードを終了する、
    請求項10のデバイス。
  12. 前記所定のクロックサイクル数は、前記第1のランクの低電力モード終了レイテンシに基づいている、
    請求項11のデバイス。
  13. 前記メモリコントローラは、
    前記低電力モードにある前記DRAM集積回路の各ランクにアクセスするためのアクセス要求が前記メモリコントローラにおいて受信される時間を予測し、
    各ランクの前記低電力モードを、各ランクに対応する予測された時間の前に終了する、
    請求項11のデバイス。
  14. 前記メモリコントローラは、前記第1のランクの低電力モードの前回の終了に関連するレイテンシペナルティに基づいて、前記予測された時間を調整する、
    請求項8~13の何れかのデバイス。
JP2021521135A 2018-10-16 2019-06-25 ダイナミックランダムアクセスメモリランクのパワーダウンモードの投機的な終了 Active JP7408650B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/162,215 US11194382B2 (en) 2018-10-16 2018-10-16 Speculative exit from power down mode of a dynamic random access memory rank
US16/162,215 2018-10-16
PCT/US2019/038952 WO2020081131A1 (en) 2018-10-16 2019-06-25 Speculative exit from power down mode of a dynamic random access memory rank

Publications (2)

Publication Number Publication Date
JP2022511629A JP2022511629A (ja) 2022-02-01
JP7408650B2 true JP7408650B2 (ja) 2024-01-05

Family

ID=70161899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021521135A Active JP7408650B2 (ja) 2018-10-16 2019-06-25 ダイナミックランダムアクセスメモリランクのパワーダウンモードの投機的な終了

Country Status (6)

Country Link
US (1) US11194382B2 (ja)
EP (1) EP3867730A4 (ja)
JP (1) JP7408650B2 (ja)
KR (1) KR20210060639A (ja)
CN (1) CN113227938A (ja)
WO (1) WO2020081131A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10991413B2 (en) * 2019-07-03 2021-04-27 Micron Technology, Inc. Memory with programmable die refresh stagger
CN113126740A (zh) * 2019-12-30 2021-07-16 美光科技公司 管理降低功率的存储器操作

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008040606A (ja) 2006-08-02 2008-02-21 Hitachi Ltd 低消費電力メモリ管理方法及びその方法を用いた計算機
JP2008225624A (ja) 2007-03-09 2008-09-25 Fujitsu Ltd メモリコントローラ、半導体メモリの制御方法およびシステム
JP2016506576A (ja) 2012-12-21 2016-03-03 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated 集積回路のアイドルフェーズ予測
US20160154452A1 (en) 2014-12-02 2016-06-02 Arm Limited System and method for controlling the power mode of operation of a memory device

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160195918A9 (en) * 2002-06-05 2016-07-07 Broadcom Corporation Method and Apparatus for Predictive and Adaptive Power Management of Memory Subsystem Based on memory access Information
US6930949B2 (en) 2002-08-26 2005-08-16 Micron Technology, Inc. Power savings in active standby mode
DE102004018676B4 (de) * 2004-04-17 2013-11-07 Robert Bosch Gmbh Verfahren zum Betreiben einer Brennkraftmaschine und Vorrichtung zur Durchführung des Verfahrens
US7739461B2 (en) 2007-07-10 2010-06-15 International Business Machines Corporation DRAM power management in a memory controller
US7796458B2 (en) * 2007-10-18 2010-09-14 Rao G R Mohan Selectively-powered memories
US20090172441A1 (en) 2007-12-31 2009-07-02 Krishna Kant Hardware proactive implementation for active mode power control of platform resources
US20090172440A1 (en) 2007-12-31 2009-07-02 Krishna Kant Coupled low power state entry and exit for links and memory
US8098540B2 (en) 2008-06-27 2012-01-17 Qualcomm Incorporated Dynamic power saving memory architecture
US8639874B2 (en) 2008-12-22 2014-01-28 International Business Machines Corporation Power management of a spare DRAM on a buffered DIMM by issuing a power on/off command to the DRAM device
US8503264B1 (en) * 2011-11-18 2013-08-06 Xilinx, Inc. Reducing power consumption in a segmented memory
US9135195B2 (en) * 2012-07-24 2015-09-15 Freescasle Semiconductor, Inc. Prediction of electronic component behavior in bus-based systems
US9110671B2 (en) * 2012-12-21 2015-08-18 Advanced Micro Devices, Inc. Idle phase exit prediction
US9001608B1 (en) * 2013-12-06 2015-04-07 Intel Corporation Coordinating power mode switching and refresh operations in a memory device
US9904623B2 (en) 2015-05-01 2018-02-27 Advanced Micro Devices, Inc. Early cache prefetching in preparation for exit from idle mode
US10120806B2 (en) * 2016-06-27 2018-11-06 Intel Corporation Multi-level system memory with near memory scrubbing based on predicted far memory idle time
US10403333B2 (en) * 2016-07-15 2019-09-03 Advanced Micro Devices, Inc. Memory controller with flexible address decoding
US10503670B2 (en) * 2017-12-21 2019-12-10 Advanced Micro Devices, Inc. Dynamic per-bank and all-bank refresh

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008040606A (ja) 2006-08-02 2008-02-21 Hitachi Ltd 低消費電力メモリ管理方法及びその方法を用いた計算機
JP2008225624A (ja) 2007-03-09 2008-09-25 Fujitsu Ltd メモリコントローラ、半導体メモリの制御方法およびシステム
JP2016506576A (ja) 2012-12-21 2016-03-03 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッドAdvanced Micro Devices Incorporated 集積回路のアイドルフェーズ予測
US20160154452A1 (en) 2014-12-02 2016-06-02 Arm Limited System and method for controlling the power mode of operation of a memory device

Also Published As

Publication number Publication date
KR20210060639A (ko) 2021-05-26
WO2020081131A1 (en) 2020-04-23
US20200117265A1 (en) 2020-04-16
JP2022511629A (ja) 2022-02-01
EP3867730A4 (en) 2022-10-19
US11194382B2 (en) 2021-12-07
EP3867730A1 (en) 2021-08-25
CN113227938A (zh) 2021-08-06

Similar Documents

Publication Publication Date Title
US20240029488A1 (en) Power management based on frame slicing
US9250815B2 (en) DRAM controller for variable refresh operation timing
US10048741B1 (en) Bandwidth-aware multi-frequency performance estimation mechanism
US8402232B2 (en) Memory utilization tracking
JP6154071B2 (ja) アクティブなプロセッサに基づく動的電圧及び周波数管理
US8959369B2 (en) Hardware automatic performance state transitions in system on processor sleep and wake events
US8127153B2 (en) Memory power profiling
US9104421B2 (en) Training, power-gating, and dynamic frequency changing of a memory controller
US8195887B2 (en) Processor power management and method
US8726055B2 (en) Multi-core power management
JP2016506576A (ja) 集積回路のアイドルフェーズ予測
JP5705379B2 (ja) リフレッシュ動作を実行するための方法、コンピュータ可読媒体、および装置
US10777252B2 (en) System and method for performing per-bank memory refresh
JP7408650B2 (ja) ダイナミックランダムアクセスメモリランクのパワーダウンモードの投機的な終了
US10572183B2 (en) Power efficient retraining of memory accesses
US20230205306A1 (en) Default Boost Mode State for Devices

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210618

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220608

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20230428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230516

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20230816

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230911

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231220

R150 Certificate of patent or registration of utility model

Ref document number: 7408650

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150