JP2017220237A - メモリモジュール、これを含むシステム及びその動作方法 - Google Patents
メモリモジュール、これを含むシステム及びその動作方法 Download PDFInfo
- Publication number
- JP2017220237A JP2017220237A JP2017112253A JP2017112253A JP2017220237A JP 2017220237 A JP2017220237 A JP 2017220237A JP 2017112253 A JP2017112253 A JP 2017112253A JP 2017112253 A JP2017112253 A JP 2017112253A JP 2017220237 A JP2017220237 A JP 2017220237A
- Authority
- JP
- Japan
- Prior art keywords
- data
- memory module
- memory controller
- cache
- memory
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1673—Details of memory controller using buffers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0879—Burst mode
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
- G06F13/1689—Synchronisation and timing concerns
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
- G06F3/0607—Improving or facilitating administration, e.g. storage management by facilitating the process of upgrading existing storage systems, e.g. for improving compatibility between host and storage device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0685—Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/02—Disposition of storage elements, e.g. in the form of a matrix array
- G11C5/04—Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1072—Input/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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0866—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
- G06F12/0868—Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/21—Employing a record carrier using a specific recording technology
- G06F2212/214—Solid state disk
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/005—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor comprising combined but independently operative RAM-ROM, RAM-PROM, RAM-EPROM cells
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2245—Memory devices with an internal cache buffer
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
Abstract
【解決手段】不揮発性メモリNVM210及びそのDRAMキャッシュとして構成されたDRAM211aを含むMM201aと、ホストメモリコントローラHMCとの間にDDRインタフェイスifを提供し、HMC及びMMの間にメッセージMSGifを提供する。NVM及びMMのDRAMの双方は、データバッファ230及びレジスタリングクロックドライバRCD231と連結される。RCDは、「制御及びアドレス」CAバッファを含む。データバッファはHMCによって要請されたデータ又はMMの状態をDDRifのデータバスDQ及びMSGifを通じて提供する。RCDは、DDRifのCAバスを通じて受信された命令及びアドレスに基づいてデータバッファに対する命令シークェンスを生成する。
【選択図】図3
Description
前記不揮発性メモリ及び前記メモリモジュールのDRAMの双方は、データバッファ及びレジスタリングクロックドライバ(RCD)と連結され、前記レジスタリングクロックドライバ(RCD)は「制御及びアドレス」(CA)バッファを含む。前記データバッファはホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態を、前記DDRインタフェイスのデータバス(DQ)及び前記メッセージインタフェイスを通じて提供する。前記レジスタリングクロックドライバ(RCD)は、前記DDRインタフェイスのCAバスを通じて受信された命令及びアドレスに基づいて前記データバッファに対する命令シークェンスを生成する。
前記メモリモジュールの前記不揮発性メモリに格納されたデータは前記メモリモジュールの前記不揮発性メモリコントローラによって非同期的にアクセス可能である。前記DRAMキャッシュに格納されたデータは前記ホストメモリコントローラによって同期的に直接、アクセス可能である。
前記メモリモジュールは、不揮発性メモリと、データインタフェイス及び「制御及びアドレス」(CA)インタフェイスを前記不揮発性メモリに提供する不揮発性メモリコントローラと、前記不揮発性メモリのDRAMキャッシュとして構成されたDRAMと、データバッファと、「制御及びアドレス」(CA)バッファを含むレジスタリングクロックドライバ(RCD)と、を含む。
前記不揮発性メモリ及び前記DRAMは前記データバッファ及び前記レジスタリングクロックドライバ(RCD)と連結される。前記データバッファは前記ホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態を前記DDRインタフェイスのデータバス(DQ)及び前記メッセージインタフェイスを通じて提供する。前記RCDは前記DDRインタフェイスのCAバスを通じて受信された命令及びアドレスに基づいて前記データバッファに命令シークェンスを生成するように構成される。
前記メモリモジュールの前記不揮発性メモリに格納されたデータは前記不揮発性メモリコントローラによって非同期的にアクセス可能である。前記DRAMキャッシュに格納されたデータは前記ホストメモリコントローラによって同期的に直接、アクセス可能である。
図3は本発明の一実施形態に係るバックサイドDRAMキャッシュを含むNVDIMMを例示的に示す。NVDIMM(201a)は不揮発性メモリ210、バックサイドDRAMキャッシュ211a、及びNVM/キャッシュコントローラ220を含む。NVDIMM(201a)のデータバッファ230はホストメモリコントローラ(図示せず)によって要請されたデータ又はNVDIMM(201a)の状態を、データバス(DQ)を通じて提供する。NVDIMM(201a)のレジスタリングクロックドライバ(RCD、registering clock_driver_)231は、データバッファ230に対する命令シークェンスを発生する「制御及びアドレス」(CA)バッファを提供する。
ホストメモリコントローラは直接モードではバックサイドDRAMキャッシュ211aをアクセスできるが、キャッシュモードではバックライトDRAMキャッシュ211aを直接的にアクセスできない。バックサイドDRAMキャッシュ211aに対してアクセスするにはハンドシェーキング(handshaking)を必要とするので、DRAMに対する従来のアクセス時間より長いアクセス時間(例えば、15ns以上)をもたらす。
NVDIMM201bのデータバッファ230はデータバス(DQ)を通じてホストメモリコントローラ(図示せず)に/から通信するデータをバッファリングする。
NVDIMM201bのレジスタリングクロックドライバ(RCD)231は、「制御及びアドレス」(CA)のバッファであって、データバッファ230に対する命令シ−クェンスを発生する。
フラッシュ命令はホストメモリコントローラがNVDIMMにNVMコントローラ221の書込みバッファ及び/又はDRAMキャッシュをフラッシュする命令を可能にする。フラッシュ命令は揮発性領域(例えば、書込みバッファ)に格納されたデータが不揮発性領域に書き込まれることを保障することによってデータが永久的に持続されるようにする。
異なって明示しない限り、本明細書でDRAMキャッシュは図4に示したフロントサイドDRAMキャッシュである。DRAMキャッシュ及びフロントサイドDRAMキャッシュは本発明の範囲を逸脱しない限度内で互換的に使用されることができる。
図5は本発明の一実施形態に係る高速キャッシュ読出し命令の一例に対する定義を示すテーブルである。高速キャッシュ読出し命令は第1クロックサイクルで発生される「拡張された命令」(E)及び後続する第2クロックサイクルで発生される「DRAM読出し命令」(RD)を含む。
本発明の一実施形態によれば、キャッシュマネージメントロジックはタグをチェックしてキャッシュヒット又はキャッシュミスを判別する。ホストメモリコントローラが読出し要請を伝送する時、ホストメモリコントローラはアドレス及び対応するタグを持続的に把握しておく。読出しデータがリターンされる時、ホストメモリコントローラはリターンされたタグを使用して未処理の(outstanding)読出し要請とタグとをマッチさせる。例えば、もしタグがキャッシュヒットを示せば、ホストメモリコントローラはデータバス(DQ)にロードされたデータが有効であることと判別し、そうでなければ、ホストメモリコントローラはキャッシュミスであることと判別して、データバス(DQ)にロードされたデータが無効であることと判別する。キャッシュミスである場合、ホストメモリコントローラはデータバス(DQ)上のデータを無視する。
他の実施形態で、ホストメモリコントローラ及びNVDIMMの双方は読出し命令のタイプに基づいて読出しID(RID)を明示的に発生する。その他の実施形態で、ホストメモリコントローラ又はNVDIMMの中の何れも読出しID(RID)を明示的に発生しない。代わりに、ホストメモリコントローラ及びNVDIMMの双方は読出しID(RID)メカニック(mechanic、機構)に同意し、これに従う。初期化の間に同期化の後、ホストメモリコントローラ及びNVDIMMは同一のパッケージに対して個別的に同一の読出しID(RID)を発生する。読出しID(RID)はフィードバックチャンネル(例えば、メッセージ(MSG)ピン)内の他のピンを通じて伝達される。
ホストメモリコントローラが読出し待機(Read_Ready)信号を受信した後、ホストメモリコントローラはトランザクションバースト(TB)命令315を発行し、不揮発性メモリに格納されたデータをデータバス上に読み出す。トランザクションバースト(TB)命令315に応答して、NVDIMMはメッセージ(MSG)ピン内読出しID(RID)のみならず、不揮発性メモリに格納された要請されたデータをDQピンにロードする。メッセージ(MSG)ピンにロードされた読出しID(RID)320はDQピン上のデータが「E+RD」命令301bによって要請されたデータに対応するか否かを識別する。
図8は本発明の一実施形態に係る内部動作命令の一例に対するタイミング図である。
一実施形態によれば、内部動作(IOP)要請410で要請された内部動作(IOP)時間は内部動作(IOP)命令402で割当された内部動作(IOP)時間と異なる。NVDIMMが内部動作を遂行することを許容する割当された時間の間、ホストメモリコントローラはNVDIMMにアクセスしない。内部動作はCA及びDQバスを占有しないので、共有されたメモリチャンネルバスは共有されたメモリチャンネル上の他のDIMMによって使用される。
図9は本発明の一実施形態に係るフラッシュ命令の一例に対する定義を示すテーブルである。
図10は本発明の一実施形態に係るフラッシュ命令の一例に対するタイミング図である。
読出し待機(Read_Ready)信号を受信した後、ホストメモリコントローラはトランザクションバースト(TB)命令502を伝送してフラッシュ命令501の状態をチェックする。状態はフラッシュID(FID)及びフラッシュID(FID)の状態(例えば、成功、保留(pending)、又は失敗)を含む。例えば、NVDIMMが不揮発性メモリの指定された領域にフラッシュを成功裡に完了したら、NVDIMMはフラッシュ命令501を成功裡に完了したことを示す確認を示す状態512を伝送する。トランザクションバースト(TB)命令502に応答してロードされたメッセージ(MSG)パケット520は、DQピン上にロードされたデータがデータの代わりにNVDIMMの状態512を含むとことを示す識別子(1)を含む。
図11は本発明の一実施形態に係るトランザクションバースト(TB)命令の一例に対する定義を示すテーブルである。
図12は本発明の一実施形態に係るトランザクションバースト(TB)命令の一例に対するタイミング図である。
前記不揮発性メモリ及び前記メモリモジュールのDRAMの双方は、データバッファ及びレジスタリングクロックドライバ(RCD)と連結され、前記レジスタリングクロックドライバ(RCD)は「制御及びアドレス」(CA)バッファを含む。
前記データバッファはホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態を前記DDRインタフェイスのデータバス(DQ)及び前記メッセージインタフェイスを通じて提供する。
前記レジスタリングクロックドライバ(RCD)は前記DDRインタフェイスのCAバスを通じて受信された命令及びアドレスに基づいて前記データバッファに対する命令シークェンスを生成する。
前記メモリモジュールの前記不揮発性メモリに格納されたデータは前記メモリモジュールの前記不揮発性メモリコントローラによって非同期的にアクセス可能である。前記DRAMキャッシュに格納されたデータは前記ホストメモリコントローラによって同期的に直接、アクセス可能である。
前記不揮発性メモリ及び前記DRAMは、前記データバッファ及び前記レジスタリングクロックドライバ(RCD)と連結される。前記データバッファは、前記ホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態を前記DDRインタフェイスのデータバス(DQ)及び前記メッセージインタフェイスを通じて提供し、前記RCDは、前記DDRインタフェイスのCAバスを通じて受信された命令及びアドレスに基づいて前記データバッファに命令シークェンスを生成するように構成される。前記メモリモジュールの前記不揮発性メモリに格納されたデータは前記不揮発性メモリコントローラによって非同期的にアクセス可能である。前記DRAMキャッシュに格納されたデータは前記ホストメモリコントローラによって同期的に直接、アクセス可能である。
111a DRAM
110 不揮発性メモリ
201a NVDIMM
210 NVM
211a バックサイドDRAMキャッシュ
211b フロントサイドDRAMキャッシュ
220 NVM/キャッシュコントローラ
221 NVMコントローラ
230 データバッファ
231 レジスタリングクロックドライバ(RCD、registering_clock_driver)
301b 「E+RD」命令
315 TB命令
320 RID(読出しID)(識別子(0)を含む MSGパケット)
401 TB命令
402 IOP命令
410 IOP要請
412 NVDIMMの状態
420 RID(読出しID)(識別子(1)を含む MSGパケット)
501 フラッシュ命令
502 TB命令
512 NVDIMMの状態
601 TB命令
612 データ
613 状態
701 RS命令
712 状態
CA 「制御及びアドレス」
DIMM dual_in−line_memory_module_
DDR ダブルデータレート
DQ データバス
EA 拡張(された)アドレス
FL フラッシュ
FID フラッシュID
IOP 内部動作
MSG メッセージ(パケット)
NVDIMM 不揮発性DIMM
RID 読出しID
RS 読出し状態
TB トランザクションバースト
Claims (20)
- 不揮発性メモリ及び前記不揮発性メモリのDRAMキャッシュとして構成されたDRAMを含むメモリモジュールとホストメモリコントローラとの間にDDRインタフェイスを提供する段階と、
前記ホストメモリコントローラ及び前記メモリモジュールの間にメッセージインタフェイスを提供する段階と、を含み、
前記不揮発性メモリ及び前記メモリモジュールの前記DRAMの双方は、データバッファ及びレジスタリングクロックドライバ(RCD)と連結され、前記レジスタリングクロックドライバ(RCD)は、「制御及びアドレス」(CA)バッファを含み、前記データバッファは、ホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態を、前記DDRインタフェイスのデータバス(DQ)及び前記メッセージインタフェイスを通じて提供し、前記レジスタリングクロックドライバ(RCD)は、前記DDRインタフェイスのCAバスを通じて受信された命令及びアドレスに基づいて前記データバッファに対する命令シークェンスを生成し、
前記メモリモジュールの前記不揮発性メモリに格納されたデータは、前記メモリモジュールの不揮発性メモリコントローラによって非同期的にアクセス可能であり、
前記DRAMキャッシュに格納されたデータは、前記ホストメモリコントローラによって同期的に直接、アクセス可能であることを特徴とする動作方法。 - 前記ホストメモリコントローラから前記メモリモジュールに格納されたデータを読み出すための高速キャッシュ−読出し要請を受信する段階と、
前記高速キャッシュ−読出し要請によって要請された前記データが前記DRAMキャッシュ又は前記不揮発性メモリの何れに格納されているのかを判別する段階と、
前記データが前記DRAMキャッシュに格納されている時、前記データを前記データバスに同期的に提供する段階と、
前記データが前記不揮発性メモリに格納されている時、前記データを前記データバスに非同期的に提供する段階と、をさらに含むことを特徴とする請求項1に記載の動作方法。 - 前記高速キャッシュ−読出し要請は、拡張された命令及びDRAM読出し命令を含むことを特徴とする請求項2に記載の動作方法。
- 前記拡張された命令は、前記メモリモジュールに格納されたデータと関連される読出しIDを含むことを特徴とする請求項3に記載の動作方法。
- 前記メッセージインタフェイス上のメッセージ信号に含まれたタグをチェックする段階と、
前記タグと拡張されたアドレス(EA)を比較して前記高速キャッシュ−読出し要請がキャッシュヒットであるか、又はキャッシュミスであるかを判別する段階と、をさらに含むことを特徴とする請求項2に記載の動作方法。 - 前記ホストメモリコントローラに対して、第2読出し命令を発送して前記不揮発性メモリから前記データを読出すように指示するために、前記メッセージインタフェイス上に読出し準備済信号を伝送する段階と、
前記第2読出し要請に応答して前記データバスに前記データを提供する段階をさらに含むことを特徴とする請求項2に記載の動作方法。 - 前記ホストメモリコントローラに対して、前記メモリモジュールの状態を読出すように指示するために、読出し準備済信号を前記メッセージインタフェイスを介して提供する段階と、
前記ホストメモリコントローラから読出し要請を受信する段階と、
DDRインタフェイス上に前記メモリモジュールの状態を提供し、タグを含むメッセージを提供する段階と、をさらに含み、
前記メッセージ信号に含まれた前記タグは、前記DDRインタフェイスの前記データバス上の前記データが前記メモリモジュールの状態であることを示す、ことを特徴とする請求項1に記載の動作方法。 - 前記メモリモジュールの状態は、内部動作時間を含み、
前記ホストメモリコントローラから内部動作命令を受信する段階をさらに含み、
前記内部動作命令は、承認された内部動作時間を含むことを特徴とする請求項7に記載の動作方法。 - 前記内部動作時間及び前記承認された内部動作時間は、互いに異なることを特徴とする請求項8に記載の動作方法。
- 前記承認された内部動作時間の間には、前記ホストメモリコントローラは、前記メモリモジュールに格納されたデータにアクセスしないことを特徴とする請求項8に記載の動作方法。
- 前記ホストメモリコントローラからフラッシュIDを含むフラッシュ命令を受信する段階と、
前記フラッシュIDに基づいて前記DRAMに格納されたデータを前記不揮発性メモリにフラッシュする段階と、をさらに含み、
前記メモリモジュールの状態は、前記フラッシュIDに基づいて前記フラッシュ命令が成功裡に遂行されているか否かを示すことを特徴とする請求項7に記載の動作方法。 - 前記メモリモジュールに格納された1つ以上のデータ及び前記メモリモジュールの状態を、前記DDRインタフェイス、及びタグを含む前記メッセージインタフェイスに提供する段階をさらに含み、
前記メッセージインタフェイス上の前記メッセージ信号に含まれる前記タグは、前記DDRインタフェイスの前記データバスにロードされたデータが、前記ホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態の内の何れであるかを示すことを特徴とする請求項7に記載の動作方法。 - 前記読出し要請は、バーストカウントを含み、
前記バーストカウントによって定義された通り、前記メモリモジュールに格納された1つ以上のデータ及び前記メモリモジュールの状態を前記DDRインタフェイスに順次的に提供する段階をさらに含むことを特徴とする請求項12に記載の動作方法。 - 前記ホストメモリコントローラから読出し状態命令を受信する段階と、
前記DDRインタフェイスを通じて前記メモリモジュールの前記状態を同期的に提供する段階と、をさらに含むことを特徴とする請求項12に記載の動作方法。 - 不揮発性メモリと、
データインタフェイス、及び「制御及びアドレス」(CA)インタフェイスを前記不揮発性メモリに提供する不揮発性メモリコントローラと、
前記不揮発性メモリのDRAMキャッシュとして構成されたDRAMと、
データバッファと、
「制御及びアドレス」(CA)バッファを含むレジスタリングクロックドライバ(RCD)と、
ホストメモリコントローラに対するDDRインタフェイス及びメッセージインタフェイスと、を含み、
前記不揮発性メモリ及び前記DRAMは、前記データバッファ及び前記レジスタリングクロックドライバ(RCD)と連結され、
前記データバッファは、前記ホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態を前記DDRインタフェイスのデータバス(DQ)及び前記メッセージインタフェイスを通じて提供し、前記RCDは、前記DDRインタフェイスのCAバスを通じて受信された命令及びアドレスに基づいて前記データバッファに対して命令シークェンスを生成するように構成され、
前記メモリモジュールの前記不揮発性メモリに格納されたデータは、前記不揮発性メモリコントローラによって非同期的にアクセス可能であり、
前記DRAMキャッシュに格納されたデータは、前記ホストメモリコントローラによって同期的に直接、アクセス可能であることを特徴とするメモリモジュール。 - 前記ホストメモリコントローラは、高速キャッシュ−読出し要請を伝送して前記メモリモジュールに格納されたデータを読出し、前記メモリモジュールは、前記データがDRAMキャッシュに格納されている時、前記データを前記データバスに同期的に提供し、前記データが前記不揮発性メモリに格納されている時、前記データを前記データバスに非同期的に提供することを特徴とする請求項15に記載のメモリモジュール。
- 前記メモリモジュールは、前記メッセージインタフェイスにタグを含むメッセージ信号を伝送し、前記ホストメモリコントローラは、前記タグと拡張されたアドレス(EA)との比較によって前記高速キャッシュ−読出し要請がキャッシュヒットであるか、又はキャッシュミスであるかを判別することを特徴とする請求項16に記載のメモリモジュール。
- ホストメモリコントローラと、
メモリモジュールと、
前記ホストメモリコントローラと前記メモリモジュールとの間に位置し、データバス及び「制御及びアドレス」(CA)バスを含むDDRインタフェイスと、
前記ホストメモリコントローラと前記メモリモジュールとの間に位置したメッセージインタフェイスと、を含み、
前記メモリモジュールは、
不揮発性メモリと、
データインタフェイス及び「制御及びアドレス」(CA)インタフェイスを前記不揮発性メモリに提供する不揮発性メモリコントローラと、
前記不揮発性メモリのDRAMキャッシュとして構成されたDRAMと、
データバッファと、
「制御及びアドレス」(CA)バッファを含むレジスタリングクロックドライバ(RCD)と、を含み、
前記不揮発性メモリ及び前記DRAMは、前記データバッファ及び前記レジスタリングクロックドライバ(RCD)と連結され、
前記データバッファは、前記ホストメモリコントローラによって要請されたデータ又は前記メモリモジュールの状態を前記DDRインタフェイスのデータバス(DQ)及び前記メッセージインタフェイスを通じて提供し、前記RCDは、前記DDRインタフェイスのCAバスを通じて受信された命令及びアドレスに基づいて前記データバッファに対して命令シークェンスを生成するように構成され、
前記メモリモジュールの前記不揮発性メモリに格納されたデータは、前記不揮発性メモリコントローラによって非同期的にアクセス可能であり、
前記DRAMキャッシュに格納されたデータは、前記ホストメモリコントローラによって同期的に直接、アクセス可能であることを特徴とするメモリシステム。 - 前記ホストメモリコントローラは、前記メモリモジュールに格納されたデータを読出すために高速キャッシュ−読出し要請を伝送し、
前記メモリモジュールは、前記データが前記DRAMキャッシュに格納されている時、前記データを前記データバスに同期的に提供し、前記データが前記不揮発性メモリに格納されている時、前記データを前記データバスに非同期的に提供することを特徴とする請求項18に記載のメモリシステム。 - 前記メモリモジュールは、タグを含むメッセージ信号を前記メッセージインタフェイスに伝送し、前記ホストメモリコントローラは、前記タグと拡張されたアドレス(EA)との比較によって前記高速キャッシュ−読出し要請がキャッシュヒットであるか、又はキャッシュミスであるかを判別することを特徴とする請求項19に記載のメモリシステム。
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662347569P | 2016-06-08 | 2016-06-08 | |
US62/347,569 | 2016-06-08 | ||
US201662368806P | 2016-07-29 | 2016-07-29 | |
US62/368,806 | 2016-07-29 | ||
US201662371588P | 2016-08-05 | 2016-08-05 | |
US62/371,588 | 2016-08-05 | ||
US15/285,423 US10810144B2 (en) | 2016-06-08 | 2016-10-04 | System and method for operating a DRR-compatible asynchronous memory module |
US15/285,423 | 2016-10-04 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2017220237A true JP2017220237A (ja) | 2017-12-14 |
JP6986369B2 JP6986369B2 (ja) | 2021-12-22 |
Family
ID=60573975
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017112253A Active JP6986369B2 (ja) | 2016-06-08 | 2017-06-07 | メモリモジュール、これを含むシステム及びその動作方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10810144B2 (ja) |
JP (1) | JP6986369B2 (ja) |
KR (1) | KR20170139438A (ja) |
CN (1) | CN107481746B (ja) |
TW (1) | TWI762479B (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019133657A (ja) * | 2018-01-29 | 2019-08-08 | 三星電子株式会社Samsung Electronics Co.,Ltd. | ページサイズ認識スケジューリング方法及び非一時的なコンピュータ読取可能記録媒体 |
US11314438B2 (en) | 2018-12-21 | 2022-04-26 | Fujitsu Limited | Arithmetic processing device, information processing device, and control method for arithmetic processing device |
JP7470112B2 (ja) | 2018-11-02 | 2024-04-17 | アーム・リミテッド | 持続性メモリクリーニング |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180059945A1 (en) * | 2016-08-26 | 2018-03-01 | Sandisk Technologies Llc | Media Controller with Response Buffer for Improved Data Bus Transmissions and Method for Use Therewith |
US10679722B2 (en) * | 2016-08-26 | 2020-06-09 | Sandisk Technologies Llc | Storage system with several integrated components and method for use therewith |
US20180059943A1 (en) * | 2016-08-26 | 2018-03-01 | Sandisk Technologies Llc | Media Controller and Method for Management of CPU-Attached Non-Volatile Memory |
US10198354B2 (en) | 2017-03-21 | 2019-02-05 | Intel Corporation | Apparatus, system, and method to flush modified data from a volatile memory to a persistent second memory |
KR102101622B1 (ko) * | 2017-12-06 | 2020-04-17 | 주식회사 멤레이 | 메모리 제어 장치 및 이를 포함하는 컴퓨팅 디바이스 |
US10929291B2 (en) * | 2017-12-06 | 2021-02-23 | MemRay Corporation | Memory controlling device and computing device including the same |
US10296230B1 (en) * | 2017-12-22 | 2019-05-21 | Advanced Micro Devices, Inc. | Scheduling memory requests with non-uniform latencies |
US10534731B2 (en) * | 2018-03-19 | 2020-01-14 | Micron Technology, Inc. | Interface for memory having a cache and multiple independent arrays |
KR102538253B1 (ko) * | 2018-04-16 | 2023-06-01 | 삼성전자주식회사 | 반도체 메모리 모듈 및 반도체 메모리 모듈을 포함하는 메모리 시스템 |
KR102505913B1 (ko) * | 2018-04-04 | 2023-03-07 | 삼성전자주식회사 | 메모리 모듈 및 메모리 모듈을 포함하는 메모리 시스템 |
KR101952827B1 (ko) * | 2018-06-29 | 2019-02-27 | 주식회사 맴레이 | 메모리 제어 장치 및 이를 포함하는 메모리 시스템 |
CN109144778A (zh) * | 2018-07-27 | 2019-01-04 | 郑州云海信息技术有限公司 | 一种存储服务器系统及其备份方法、系统及可读存储介质 |
KR20200015233A (ko) * | 2018-08-03 | 2020-02-12 | 삼성전자주식회사 | 불휘발성 메모리 장치들을 포함하는 반도체 메모리 모듈 |
US11099779B2 (en) * | 2018-09-24 | 2021-08-24 | Micron Technology, Inc. | Addressing in memory with a read identification (RID) number |
US10732892B2 (en) * | 2018-09-24 | 2020-08-04 | Micron Technology, Inc. | Data transfer in port switch memory |
CN111143898B (zh) * | 2018-11-05 | 2022-06-14 | 瑞昱半导体股份有限公司 | 可插拔存储器装置数据保护方法 |
CN109582507B (zh) | 2018-12-29 | 2023-12-26 | 西安紫光国芯半导体股份有限公司 | 用于nvdimm的数据备份和恢复方法、nvdimm控制器以及nvdimm |
US11537521B2 (en) * | 2019-06-05 | 2022-12-27 | Samsung Electronics Co., Ltd. | Non-volatile dual inline memory module (NVDIMM) for supporting dram cache mode and operation method of NVDIMM |
CN110286711B (zh) * | 2019-06-28 | 2021-04-13 | 联想(北京)有限公司 | 信息处理方法、信息处理装置、存储装置和电子设备 |
KR20210008216A (ko) | 2019-07-11 | 2021-01-21 | 삼성전자주식회사 | 메모리 장치 및 이를 포함하는 메모리 시스템 |
US11163486B2 (en) * | 2019-11-25 | 2021-11-02 | Micron Technology, Inc. | Memory sub-system-bounded memory function |
US11099786B2 (en) * | 2019-12-30 | 2021-08-24 | Advanced Micro Devices, Inc. | Signaling for heterogeneous memory systems |
CN111681693A (zh) * | 2020-05-26 | 2020-09-18 | 北京微密科技发展有限公司 | 融合ddr5 lrdimm芯片组的nvdimm-p控制器及控制方法 |
US11586518B2 (en) * | 2020-08-27 | 2023-02-21 | Micron Technology, Inc. | Thermal event prediction in hybrid memory modules |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08306195A (ja) * | 1995-04-26 | 1996-11-22 | Samsung Electron Co Ltd | Dramバスに接続可能な不揮発性半導体メモリ装置 |
JP2003091463A (ja) * | 2001-06-13 | 2003-03-28 | Hitachi Ltd | メモリ装置 |
JP2009540431A (ja) * | 2006-06-07 | 2009-11-19 | マイクロソフト コーポレーション | 1つのインターフェースを有するハイブリッド・メモリ・デバイス |
US20100110748A1 (en) * | 2007-04-17 | 2010-05-06 | Best Scott C | Hybrid volatile and non-volatile memory device |
US20140192583A1 (en) * | 2005-06-24 | 2014-07-10 | Suresh Natarajan Rajan | Configurable memory circuit system and method |
WO2014155593A1 (ja) * | 2013-03-27 | 2014-10-02 | 株式会社日立製作所 | Sdramインターフェイスを有するdram、フラッシュメモリ混載メモリモジュール |
US20150309742A1 (en) * | 2014-04-24 | 2015-10-29 | Xitore, Inc. | Apparatus, system, and method for non-volatile data storage and retrieval |
US20160085585A1 (en) * | 2013-05-31 | 2016-03-24 | Huawei Technologies Co., Ltd. | Memory System, Method for Processing Memory Access Request and Computer System |
US9460791B1 (en) * | 2015-12-08 | 2016-10-04 | Inphi Corporation | Data clock synchronization in hybrid memory modules |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5907867A (en) * | 1994-09-09 | 1999-05-25 | Hitachi, Ltd. | Translation lookaside buffer supporting multiple page sizes |
JP2001010865A (ja) | 1999-06-23 | 2001-01-16 | Ngk Insulators Ltd | 窒化珪素焼結体及びその製造方法 |
JP3872922B2 (ja) | 1999-06-28 | 2007-01-24 | 株式会社東芝 | 半導体記憶装置及びメモリ混載ロジックlsi |
US6643756B1 (en) * | 1999-11-11 | 2003-11-04 | Ati International Srl | System and method for accessing video data using a translation client |
JP2005234932A (ja) * | 2004-02-20 | 2005-09-02 | Oki Electric Ind Co Ltd | マトリックス状バス接続システムとその低電力方法 |
US8041881B2 (en) * | 2006-07-31 | 2011-10-18 | Google Inc. | Memory device with emulated characteristics |
US7461231B2 (en) * | 2006-01-12 | 2008-12-02 | International Business Machines Corporation | Autonomically adjusting one or more computer program configuration settings when resources in a logical partition change |
CN100514488C (zh) * | 2007-04-16 | 2009-07-15 | 中国人民解放军国防科学技术大学 | 采样点可配置的片外dram数据采样方法 |
US7827360B2 (en) * | 2007-08-02 | 2010-11-02 | Freescale Semiconductor, Inc. | Cache locking device and methods thereof |
US8560761B2 (en) | 2008-03-31 | 2013-10-15 | Spansion Llc | Memory resource management for a flash aware kernel |
US8738840B2 (en) | 2008-03-31 | 2014-05-27 | Spansion Llc | Operating system based DRAM/FLASH management scheme |
US7941591B2 (en) | 2008-07-28 | 2011-05-10 | CacheIQ, Inc. | Flash DIMM in a standalone cache appliance system and methodology |
US8281074B2 (en) | 2008-10-07 | 2012-10-02 | Micron Technology, Inc. | Interface device for memory in a stack, storage devices and a processor |
US8713379B2 (en) | 2011-02-08 | 2014-04-29 | Diablo Technologies Inc. | System and method of interfacing co-processors and input/output devices via a main memory system |
US8850155B2 (en) * | 2011-12-19 | 2014-09-30 | Advanced Micro Devices, Inc. | DDR 2D Vref training |
US9280497B2 (en) * | 2012-12-21 | 2016-03-08 | Dell Products Lp | Systems and methods for support of non-volatile memory on a DDR memory channel |
US9251003B1 (en) | 2013-08-14 | 2016-02-02 | Amazon Technologies, Inc. | Database cache survivability across database failures |
US20150186278A1 (en) | 2013-12-26 | 2015-07-02 | Sarathy Jayakumar | Runtime persistence |
US9721660B2 (en) | 2014-10-24 | 2017-08-01 | Microsoft Technology Licensing, Llc | Configurable volatile memory without a dedicated power source for detecting a data save trigger condition |
US10126950B2 (en) | 2014-12-22 | 2018-11-13 | Intel Corporation | Allocating and configuring persistent memory |
KR102342789B1 (ko) * | 2015-09-24 | 2021-12-24 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이의 동작 방법 |
US10152237B2 (en) * | 2016-05-05 | 2018-12-11 | Micron Technology, Inc. | Non-deterministic memory protocol |
-
2016
- 2016-10-04 US US15/285,423 patent/US10810144B2/en active Active
-
2017
- 2017-01-16 KR KR1020170007166A patent/KR20170139438A/ko unknown
- 2017-04-01 CN CN201710212112.7A patent/CN107481746B/zh active Active
- 2017-04-14 TW TW106112447A patent/TWI762479B/zh active
- 2017-06-07 JP JP2017112253A patent/JP6986369B2/ja active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH08306195A (ja) * | 1995-04-26 | 1996-11-22 | Samsung Electron Co Ltd | Dramバスに接続可能な不揮発性半導体メモリ装置 |
JP2003091463A (ja) * | 2001-06-13 | 2003-03-28 | Hitachi Ltd | メモリ装置 |
US20140192583A1 (en) * | 2005-06-24 | 2014-07-10 | Suresh Natarajan Rajan | Configurable memory circuit system and method |
JP2009540431A (ja) * | 2006-06-07 | 2009-11-19 | マイクロソフト コーポレーション | 1つのインターフェースを有するハイブリッド・メモリ・デバイス |
US20100110748A1 (en) * | 2007-04-17 | 2010-05-06 | Best Scott C | Hybrid volatile and non-volatile memory device |
WO2014155593A1 (ja) * | 2013-03-27 | 2014-10-02 | 株式会社日立製作所 | Sdramインターフェイスを有するdram、フラッシュメモリ混載メモリモジュール |
US20160085585A1 (en) * | 2013-05-31 | 2016-03-24 | Huawei Technologies Co., Ltd. | Memory System, Method for Processing Memory Access Request and Computer System |
US20150309742A1 (en) * | 2014-04-24 | 2015-10-29 | Xitore, Inc. | Apparatus, system, and method for non-volatile data storage and retrieval |
US9460791B1 (en) * | 2015-12-08 | 2016-10-04 | Inphi Corporation | Data clock synchronization in hybrid memory modules |
Non-Patent Citations (1)
Title |
---|
DOUG FINKE: ""Introducing NVDIMM-X: Designed to be the World's Fastest NAND-Based SSD Architecture and a Platform", [ONLINE], JPN7021000615, September 2016 (2016-09-01), ISSN: 0004455940 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2019133657A (ja) * | 2018-01-29 | 2019-08-08 | 三星電子株式会社Samsung Electronics Co.,Ltd. | ページサイズ認識スケジューリング方法及び非一時的なコンピュータ読取可能記録媒体 |
JP7420472B2 (ja) | 2018-01-29 | 2024-01-23 | 三星電子株式会社 | ページサイズ認識スケジューリング方法及び非一時的なコンピュータ読取可能記録媒体 |
JP7470112B2 (ja) | 2018-11-02 | 2024-04-17 | アーム・リミテッド | 持続性メモリクリーニング |
US11314438B2 (en) | 2018-12-21 | 2022-04-26 | Fujitsu Limited | Arithmetic processing device, information processing device, and control method for arithmetic processing device |
Also Published As
Publication number | Publication date |
---|---|
US10810144B2 (en) | 2020-10-20 |
CN107481746B (zh) | 2023-07-18 |
CN107481746A (zh) | 2017-12-15 |
JP6986369B2 (ja) | 2021-12-22 |
KR20170139438A (ko) | 2017-12-19 |
US20170357604A1 (en) | 2017-12-14 |
TWI762479B (zh) | 2022-05-01 |
TW201743219A (zh) | 2017-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6986369B2 (ja) | メモリモジュール、これを含むシステム及びその動作方法 | |
US10002085B2 (en) | Peripheral component interconnect (PCI) device and system including the PCI | |
US9940980B2 (en) | Hybrid LPDDR4-DRAM with cached NVM and flash-nand in multi-chip packages for mobile devices | |
US9645746B2 (en) | Systems and methods for support of non-volatile memory on a DDR memory channel | |
US7636833B2 (en) | Method for selecting memory busses according to physical memory organization information associated with virtual address translation tables | |
US8064250B2 (en) | Providing a ready-busy signal from a non-volatile memory device to a memory controller | |
US9411537B2 (en) | Embedded multimedia card (EMMC), EMMC system including the EMMC, and method of operating the EMMC | |
CN109478158A (zh) | Ddr存储器错误恢复 | |
JP2008034095A (ja) | プロセッサ間のホストインターフェイシング機能を有するマルチパスアクセス可能な半導体メモリ装置 | |
KR20090102822A (ko) | 동일 계층 레벨에 휘발성 및 비휘발성 메모리 장치들을 구비하는 메모리 시스템 및 방법 | |
CN107257964B (zh) | Dram电路、计算机系统和访问dram电路的方法 | |
US7840744B2 (en) | Rank select operation between an XIO interface and a double data rate interface | |
US20080007569A1 (en) | Control protocol and signaling in a new memory architecture | |
US11853608B2 (en) | Information writing method and apparatus | |
US9141472B2 (en) | Sharing a check bit memory device between groups of memory devices | |
WO2016043158A1 (ja) | メモリ制御回路および記憶装置 | |
KR102617843B1 (ko) | 메모리 시스템 및 이의 동작 방법 | |
US20210158885A1 (en) | Memory system | |
US11742004B2 (en) | Memory supporting multiple types of operations | |
JP3600830B2 (ja) | プロセッサ | |
US7805567B2 (en) | Chipset and northbridge with raid access |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200420 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20210218 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210302 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210601 |
|
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: 20211109 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20211129 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6986369 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |