JP2010524059A - 異なる種類の集積回路メモリ素子を有する階層メモリモジュールを含むシステム - Google Patents

異なる種類の集積回路メモリ素子を有する階層メモリモジュールを含むシステム Download PDF

Info

Publication number
JP2010524059A
JP2010524059A JP2010501086A JP2010501086A JP2010524059A JP 2010524059 A JP2010524059 A JP 2010524059A JP 2010501086 A JP2010501086 A JP 2010501086A JP 2010501086 A JP2010501086 A JP 2010501086A JP 2010524059 A JP2010524059 A JP 2010524059A
Authority
JP
Japan
Prior art keywords
memory
data
volatile memory
elements
module
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
JP2010501086A
Other languages
English (en)
Other versions
JP2010524059A5 (ja
JP5401444B2 (ja
Inventor
ハンペル,クレイグ
ホロウィッツ,マーク
Original Assignee
ラムバス・インコーポレーテッド
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 ラムバス・インコーポレーテッド filed Critical ラムバス・インコーポレーテッド
Publication of JP2010524059A publication Critical patent/JP2010524059A/ja
Publication of JP2010524059A5 publication Critical patent/JP2010524059A5/ja
Application granted granted Critical
Publication of JP5401444B2 publication Critical patent/JP5401444B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/1201Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising I/O circuitry
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0846Cache with multiple tag or data arrays being simultaneously accessible
    • G06F12/0851Cache with interleaved addressing
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0893Caches characterised by their organisation or structure
    • G06F12/0897Caches characterised by their organisation or structure with two or more cache hierarchy levels
    • 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/1684Details of memory controller using multiple buses
    • 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
    • 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/0614Improving the reliability of storage systems
    • 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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0647Migration mechanisms
    • 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/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/12015Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising clock generation or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C29/32Serial access; Scan testing
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1003Interface circuits for daisy chain or ring bus memory arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/202Non-volatile memory
    • G06F2212/2022Flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/205Hybrid memory, e.g. using both volatile and non-volatile memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/30Providing cache or TLB in specific location of a processing system
    • G06F2212/304In main memory subsystem
    • G06F2212/3042In main memory subsystem being part of a memory device, e.g. cache DRAM
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/608Details relating to cache mapping
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/18Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
    • G11C29/30Accessing single arrays
    • G11C2029/3202Scan chain
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Dram (AREA)

Abstract

メモリコントローラと、第1のメモリ階層を定義する揮発性メモリ素子の第1のセットとを備えるメモリシステムが開示される。揮発性メモリ素子の第1のセットは、少なくとも1つの第1のメモリモジュール上に配置され、少なくとも1つの第1のメモリモジュールは、メモリコントローラにデイジーチェーン構成で結合される。第1の集積回路バッファ素子がモジュール上に含まれる。システムは、第2のメモリ階層を定義する不揮発性メモリ素子の第2のセットを有する。不揮発性メモリ素子の第2のセットは、少なくとも1つの第2のメモリモジュール上に配置され、少なくとも1つの第2のメモリモジュールは、少なくとも1つの第1のメモリモジュールにデイジーチェーン構成で接続される。第2のモジュールは、第2の集積回路バッファ素子を含む。システムは、メモリコントローラと第2のメモリ階層との間で伝送される信号が、第1のメモリ階層を通過するように構成される。

Description

分野
本明細書における開示は、一般的には集積回路素子および/またはこのような素子の高速信号伝送に関する。
関連技術の背景
各種メモリ技術およびそのような各種メモリ技術を実施するメモリシステムの性能、耐久性、密度、コスト、および消費電力には著しい違いがある。特定のメモリ技術が比較的短い待ち時間または読み出しアクセス時間を有し得るのに対して、同じメモリ技術は、用途によっては適さないことがあり得る比較的長い書き込み時間を有し得る。特定のメモリ技術は、特定のメモリロケーションへの比較的少数の書き込み動作に制限され得る。限られた書き込み動作量を超えた後では、情報を確実にメモリロケーションに記憶し、メモリロケーションから検索することができない可能性がある。あるメモリ技術は、他のメモリ技術のおよそ4〜10倍の密度であり得、または他のメモリ技術よりもはるかに小さな表面面積/容積を占有し得る。あるメモリ技術は、他のメモリ技術のおよそ半分のコストである。異なるメモリ技術でのメモリアクセス動作中、異なる電力消費率に繋がる様々な電圧または電流が使用され得る。したがって、あるメモリ技術は、他よりも大きな電力を消費する。
実施形態は、限定ではなく例として示される。添付図面中の図では、同様の参照番号は同様の要素を指す。
図面の簡単な説明
メモリモジュールの配置および素子の種類に基づいて論理階層および物理階層に編成された階層メモリシステムを示す。 階層回路を有する集積回路バッファ素子を示す。 図2Aと同様の集積回路バッファ素子を示す。 異なる階層のモジュール間での相対データマッピングを示す。 異なる階層のモジュール間での相対アドレスマッピングを示す。 階層回路を有するコントローラを示す。 メモリモジュール階層を有するメモリシステムの動作方法を示すフローチャートである。 メモリモジュール階層を有するメモリシステムの動作方法を示すフローチャートである。 メモリモジュール階層を有するメモリシステムの動作方法を示すフローチャートである。 メモリモジュール階層を有するメモリシステムの動作方法を示すフローチャートである。
詳細な説明
メモリシステムは、他の実施形態もあるがこの実施形態では、コントローラと、異なる種類の集積回路メモリ素子を有するメモリモジュール階層とを含む。階層(メモリモジュールの)は、特定の種類の集積回路メモリ素子を有する1つまたは複数のメモリモジュールを含む。メモリモジュール階層は、単一の種類の集積回路メモリ素子を有するメモリモジュールを有するシステムと比較して、全体的なシステム性能を増大させることができる。第1の階層内の第1の種類の集積回路メモリ素子を使用することにより、全体的なシステム読み出し待ち時間を低減させ、書き込みデータの耐久性を増大させることができ、その一方で、より少ないコストおよびより低い消費電力を有する第2の種類の集積回路メモリを使用することにより、全体的なコストおよび消費電力は低減する。例えば、第1の階層は、コントローラおよび第2の階層の読み出し/書き込みキャッシュとして機能することができるように、少なくとも1つの揮発性メモリ素子が第1の階層に配置され、少なくとも1つの不揮発性メモリ素子が第2の階層に配置される。
実施形態では、階層はデイジーチェーン様式で結合される。第1の信号パスが、コントローラを、揮発性集積回路メモリ素子を有する第1のメモリモジュールに結合する。第2の信号パスが、第1のメモリモジュールを、不揮発性メモリ素子を有する第2のメモリモジュールに結合する。制御情報および揮発性メモリ素子に記憶されるべき書き込みデータは、コントローラによって第1の信号パスで転送される。制御情報および不揮発性メモリ素子への書き込みデータは、コントローラから第1の信号パスで転送され、次いで、第1のメモリモジュールによって第2の信号パスで転送される。同様に、揮発性メモリ素子および不揮発性メモリ素子に記憶された読み出しデータは、コントローラによって第1の信号パスからアクセスされ、そして、第1のメモリモジュールによって第2の信号パスからアクセスされる。制御情報、読み出しデータ、および書き込みデータは、第1のメモリモジュールに配置された集積回路バッファ素子によって第1の信号パスと第2の信号パスとの間で転送することができる。
メモリモジュール階層を有するメモリシステムの動作方法は、他の実施形態もあるがこの実施形態では、第2の階層に記憶された書き込みデータブロックを第1の階層にバッファ/キャッシュすることを含む。次いで、書き込みデータブロックは、制御信号に応答して、第1の階層内にキャッシュされた書き込みデータブロックを第2の階層に転送することにより、第2の階層にリライト(またはリフレッシュ/再記憶)することができる。コントローラが第1の階層に記憶されたデータ(読み出しデータまたは書き込みデータ)にアクセスしている間、第2の階層からの読み出しデータをブロックで第1の階層に転送することができる。書き込みデータは、階層内の異なるメモリロケーションにリマッピングして分散させ、書き込み耐久性を最低限に抑えることができる。書き込みデータブロックが第1の階層から転送され、第2の階層に記憶されている間、第2の階層に記憶されるべき書き込みデータを第1の階層に記憶し、コントローラによって読み出すことができる。欠陥メモリロケーションが検出された場合、第2の階層に記憶されるべき書き込みデータを第1の階層内でリマッピングし記憶するか、または第1の階層内の異なるメモリロケーションにリマッピングし記憶することができる。
図1は、メモリコントローラ110と、第1のメモリモジュール118の形態のメモリ素子の第1のセットと、第2のメモリモジュール120の形態のメモリ素子の第2のセットとを利用する完全バッファ型メモリシステム100の一実施形態を示す。ポイントツーポイントシリアルリンク140a、140b、および150a、150bの形態の上流信号パスおよび下流信号パスのそれぞれは、コントローラをメモリモジュールにデイジーチェーン構成で結合する。クロックソース130は、システムクロック信号をコントローラおよびメモリモジュールに配布する。
一実施形態では、メモリコントローラ110は、完全バッファ型デュアルインラインメモリモジュール(FBDIMM)信号伝送プロトコルに従って、シリアル化された制御信号、アドレス信号および書き込みデータ信号を送信し、シリアル化された読み出しデータ信号を受信するという点で、FBDIMMとの併用に利用されるものと同様であり得る。一般に、これは、多重化された制御信号、アドレス信号、および書き込みデータ信号をコントローラから第1のメモリモジュールに下流シリアルリンク140aに沿って駆動するシリアルリンク送信器の形態の送信回路を含む。コントローラ上の受信器回路は、上流シリアルリンク150aとインタフェースして、シリアル化された読み出しデータを第1のモジュール118から受信する。コントローラは階層回路180を利用して、より完全に以下に開示するように、階層アクティビティを管理することができる。
引き続き図1を参照すると、第1のメモリモジュール118は、集積回路(IC)の形態のバッファ素子125と、ダイナミックランダムアクセスメモリ(DRAM)ICの形態の複数の揮発性メモリ素子103a〜103hとを含む。バッファICは、コントローラ110および第2のメモリモジュール120と通信するための上流ポートおよび下流ポートの各ペアを含む。一実施形態では、バッファICは、コントローラ階層回路180を補うか、またはコントローラ階層回路180と置換され得る階層回路190を含む。バッファICは、制御/アドレスバスおよびデータバス(明確にするために、単一のバスとして示される)のそれぞれを介してDRAM素子と通信する。DRAM素子は、XDR(n)型またはDDR(n)型であってよく、一般に、非常に高速な読み書き時間および高密度を特徴とし得る。
図1をさらに参照すると、第2のメモリモジュール120は第1のメモリモジュール118と同様であり、バッファIC126および複数のメモリ素子104a〜104hを有する。しかし、第2のモジュールのメモリ素子は、フラッシュメモリ等の不揮発性の種類のものである。フラッシュ素子は、低コスト、低電力、高密度を特徴とし、DRAMと同様の速度でデータを読み出すことが可能である。しかし、フラッシュ素子への書き込み動作には、通常、完了までに数ミリ秒かかることが多い消去時間が含まれる。さらに、フラッシュ素子は、同じ記憶ブロックへのデータ書き込みの点で限られた耐久性を有する。これに対処するために、バッファICは、より完全に以下に説明するように、不揮発性素子への書き込み動作を最適化する回路を含む。
一実施形態では、第1および第2のモジュール118および120は、上流シリアルリンク140および下流シリアルリンク150を介して、ポイントツーポイントデイジーチェーン様式で各バッファICを介して相互接続される。このようにして、コントローラ110および第2のモジュール120が関わる任意のトランザクションでは、データは必然的に、第1のモジュール118を通って流れる。不揮発性素子セットよりも揮発性メモリ素子セットをコントローラの近くに位置決めすることにより、第1レベル階層および第2レベル階層のそれぞれを101および102において定義することができる。
上述した階層構造は、多くの方法で拡張可能である。例えば、1つまたは複数の揮発性メモリモジュールを第1レベル階層に編成し、第2レベルメモリ階層を確立する1つまたは複数の不揮発性モジュールの上流(コントローラのより近く)に位置決めすることができる。
各モジュールの位置および素子の種類によって定義される階層に従ってのシステムの動作をサポートするために、揮発性メモリモジュールおよび不揮発性メモリモジュールのバッファIC125および126は、より完全に以下に説明するように、トランザクションを調整するに当たってメモリコントローラ110を支援するロジックを含む。
図2Aは、一実施形態におけるHRCH回路190を有するICバッファ素子200aを示す。ICバッファ素子200aは、図1に示されるICバッファ素子126に対応し、1つまたは複数の不揮発性メモリモジュール120によって利用される。代替の実施形態では、HRCH回路190のうちの1つまたは複数の回路は、コントローラ110内に配置されてもよく、またはコントローラ110とICバッファ素子126との間に分散してもよい。ICバッファ素子200aは、メモリモジュール上に配置してもよく、ICメモリ素子もしくはダイと共に共通のパッケージ内に収容されてもよく、またはパーソナルコンピュータもしくはサーバのマザーボード、例えば、メインメモリに配置されてもよい。ICバッファ素子200aは、埋め込みメモリサブシステム、例えば、コンピュータグラフィックスカード、ビデオゲームコンソール、またはプリンタ等で見出される埋め込みメモリサブシステム内で使用されてもよい。
引き続き図2Aを参照すると、制御情報、書き込みデータ、および読み出しデータを信号パス201から受信し、制御情報、書き込みデータ、および読み出しデータを、不揮発性集積回路メモリ素子(第2レベル階層に関連する)または揮発性集積回路メモリ素子(第1レベル階層に関連する)への信号パス202に出力するインタフェース210が示される。一実施形態では、信号パス201は、図1に示される信号パス140a、140bに対応し、その一方で、信号パス202は信号パス150a、150bに対応する。一実施形態では、ICバッファ素子200aに結合された集積回路メモリ素子を対象とした制御情報、書き込みデータ、および読み出しデータの多重化された組み合わせが、インタフェース210を介して受信され、インタフェース210は、例えば、制御情報を抽出することができる。例えば、メモリコマンドおよびアドレス情報を復号化し、信号パス210上の多重化情報から分離し、インタフェース210から要求・アドレス回路240に提供することができる。書き込みデータは、インタフェース210によってインタフェース220a、220bに提供することができ、集積回路メモリ素子からの読み出しデータを1つまたは複数のインタフェース220a、220bにおいて受信し、マルチプレクサ230a、230bを介してインタフェース210に提供することができる。
インタフェース220a、220bは別個のインタフェースとして示されるが、組み合わせられてもよい。インタフェース220a、220bは、不揮発性メモリ素子に送信中であるか、または不揮発性メモリから受信中のデータを記憶するために使用されるトランザクションキュー221a、221bを含む。バッファ200aが不揮発性メモリ素子に適用された場合、トランザクションキューは、トランザクションを記憶し、データを単一または制限された数のメモリ素子に宛てる。このデータ編成では、すべての素子ではなく少数のみのメモリ素子に書き込むことによってトランザクションが行われるため、トランザクションによって実行される書き込み動作の数が低減する。メモリ素子に送信中およびメモリ素子から送信中のデータは、インタフェース210内のトランザクションキュー223aに転送されてから、上流シリアルインタフェースおよび下流シリアルインタフェースに送信される。同様に、信号パス201からシリアルに受信されたトランザクションは、トランザクションキュー223aに記憶され、次いで、インタフェース220a、220b内のトランザクションキュー221a、221bに転送されてから、メモリ素子に送信される。この編成では、上流リンクおよび下流リンクに接続されたシリアルインタフェース210上の単一のトランザクションが、信号パス121および122に接続された不揮発性メモリ素子のうちの1つのみまたは2つのみにマッピングされる。
一実施形態では、クロック信号および他の情報が、信号パス201上で、またはシリアルバス等の他のパスによって受信される。一実施形態では、インタフェース210は、信号を信号パス202に出力し、信号パス201上で受信するために、送信回路または送信器と、受信器回路または受信器(またはまとめて送受信器と呼ばれる)を含む。同様に、インタフェース220aおよび220bは、それぞれ信号パス121および122を介して制御情報、読み出しデータ、および書き込みデータを集積回路メモリ素子に送信し、集積回路メモリ素子から受信する。一実施形態では、インタフェース220a、220bは、信号パス121および122に信号を出力し、信号パス121および122に信号を受信する送信器および受信器を含む。実施形態では、インタフェース210、220a、および220b内の送信器および受信器は、単独または組み合わせで、信号パス121および122内の特定の信号線専用であるか、または共用される。
一実施形態では、インタフェース220a、220b内の送信器および受信器は、同期NAND型(Synch Nand)フラッシュまたはNOR型フラッシュ書き込み/読み出し/消去/制御信号等の標準揮発性メモリ素子信号伝送特性(またはプロトコル)を有する信号を送受信する。
一実施形態では、インタフェース220a、220bは、制御情報を単方向信号パスで転送する送信器を含む一方で、書き込みデータおよび読出しデータを双方向信号パスで転送する、書き込みデータおよび読み出しデータ用の送信器および受信器を含む。一実施形態では、インタフェース220a、220b、および210内の送信器は、単独または組み合わせで、信号パス121、122、および401上に各信号を出力する出力ドライバ回路である。出力ドライバ回路は、プルアップ型、プルダウン型、および/またはプッシュプル型の出力ドライバ回路であってよい。
一実施形態によれば、マルチプレクサ230aおよび230bは、インタフェース210とインタフェース220aおよび220bとの間で帯域幅集約動作を実行すると共に、データを適切な発信元(すなわち、信号パスのターゲットサブセット、内部データキャッシュ−キャッシュ回路292)から適切な宛先にルーティングする。一実施形態では、帯域幅集約は、複数の信号パス実施形態内の各信号パスの(より小さな)帯域幅を結合して、より小さな信号パスグループで利用される(より高い)全体帯域幅に合わせることを含む。帯域幅集約は、通常、複数の信号パスとより小さな信号パスグループとの間でスループットの多重化および多重分離を利用する。一実施形態では、ICバッファ素子200aは、インタフェース210の帯域幅と合ったインタフェース220aおよび220bの結合帯域幅を利用する。
図2Aをさらに参照すると、一実施形態では、HRCH回路190は、制御回路290、マッピング回路291、キャッシュ(または記憶)回路292、耐久性回路293(1つまたは複数の記憶された書き込み閾値293aを含む)、および欠陥回路294(1つまたは複数の記憶された欠陥メモリアドレスを含む)を単独または組み合わせで含む。ICバッファ200a内に示された回路は、図4に示すように結合され得る。HRCH回路190の1つまたは複数の回路構成要素も、各種実施形態では、HRCH回路190内ではなく、コントローラ110内、特にHRCH回路180内に配置され得る。
制御回路290は、HRCH回路190内の回路への制御信号の提供およびそのような回路からの制御信号の受信を担当する。一実施形態では、制御回路290は、インタフェース210から信号パス201を介して制御信号および/または値を受信することができる。制御情報は、コントローラ110、プログラマブル回路(SPD素子等)、および/または別のメモリモジュールからのコマンドの形態で提供され得る。一実施形態では、制御回路290は、プロセッサ、コントローラユニット、および/または制御ロジックである。制御回路290は、図4に示される信号パス405と同様に、信号パスによってHRCH内の他の回路に結合される。読み出しデータ、書き込みデータ、およびアドレス、ならびに制御信号は、信号パスを使用して回路間で転送され得る。一実施形態では、制御回路290は、ICバッファ素子200aも操作し、圧縮/圧縮解除エンジンを含み得る。
マッピング回路291は、書き込み/読み出しデータに関連するアドレスまたはメモリロケーションのリマッピングまたは再割り当てを担当する。マッピング回路291は、制御回路290(および/または耐久性回路293および欠陥回路294)からの制御信号に応答して、アドレスおよびデータを図3Aおよび図3Bに示されるようにリマッピングする。一実施形態では、マッピング回路291は、アドレス変換回路を含み得る。マッピング回路291は、キャッシュ回路292内の関連する読み出し/書き込みデータと共に記憶されたアドレスをリマッピングし得る。マッピング回路291は、データをインタフェース210からインタフェース220内の適切なトランザクションキューに宛て、インタフェース210から受信したアドレスを選択された適切な素子およびメモリアドレスに変換し、変換されたものはインタフェース220a、220bに送信される。一般に、必要とされる書き込み動作の数を低減するために、揮発性メモリシステム内で、インタフェース210からの単一のトランザクションは1つまたは少数のメモリ素子に宛てられ、インタフェース210上の連続したアドレスが、単一のメモリ素子内の連続したロケーションに宛てられる。
キャッシュ回路292は、コントローラまたは別のメモリモジュールからの読み出し/書き込みデータを記憶するために使用される。一実施形態では、読み出し/書き込みデータは、システム100内のメモリロケーションへの関連するアドレスと共に記憶される。読み出し/書き込みデータは、64Kバイト、128Kバイト、256Kバイト、および/または512Kバイトのブロック等の連続したワードまたはバイトのグループで記憶し集めることができる。この場合、これらブロックをグループとして転送し記憶することができる。例えば、256Kバイトの書き込みデータブロック(信号パス140aおよび140bを介してコントローラ110から受信した)をバッファ素子125bのキャッシュ回路292に記憶し、信号パス140cを介して、書き込みデータが記憶されている(または一実施形態では、前回の書き込み後に再記憶された)メモリモジュール120cに転送することができる。別の実施形態では、特定のメモリモジュールに関連付けられた集積回路メモリ素子が、キャッシュ回路292に代えて、データブロックの記憶に使用される。
耐久性回路293は、システム100内の特定のメモリロケーション(または複数のメモリロケーション)において行われた書き込み動作の数に基づいて、書き込み/読み取りデータをリマッピングすべきか否かを決定することを担当する。一実施形態では、耐久性回路293は、書き込み閾値を記憶し、または特定のメモリロケーションへのさらなる書き込みまたは記憶の確実性がなくなる危険性が生じる以前に、特定のメモリロケーションへの書き込み回数を制限する1つまたは複数のレジスタ等の記憶回路を含む。一実施形態では、耐久性回路293は、特定のメモリロケーションへの書き込み回数をカウントするカウンタと、カウント値を記憶されている書き込み閾値と比較する比較回路とも含む。次いで、比較回路は、比較に応答して、特定のメモリロケーションに書き込むべきではないことを示す制御信号を制御回路290に出力し得る。次いで、マッピング回路291は、新しいアドレスを、1つまたは複数のメモリモジュールに記憶されるべき書き込み/読み出しデータに割り当てることができる。耐久性回路293は、特定のメモリロケーションに他のメモリロケーションほどはまだ書き込まれていないことを示す制御信号も生成し得、したがって、マッピング回路291は、不揮発性集積回路メモリ素子に記憶された書き込み/読み出しデータの分散を可能にする。
欠陥回路294は、1つまたは複数のメモリロケーションが欠陥を有するか否か、または情報を正確に記憶し出力していないかどうか決定することを担当する。一実施形態では、欠陥回路294は、制御回路290からの制御信号に応答して、別のメモリモジュール内の1つまたは複数のメモリロケーションに書き込まれる複数のテスト値294aを記憶する。次いで、比較回路により、他のメモリモジュールに記憶されたテスト値が再びICバッファ素子200aに読み出され、記憶された複数のテスト値294aと比較される。比較回路は、比較に応答して、メモリロケーションが欠陥を有することを示す信号を出力する。次いで、書き込み/読み出しデータのさらなるリマッピングが、識別された欠陥メモリロケーションを含まないように、制御信号をマッピング回路291に出力することができる。一実施形態では、欠陥回路294は、制御回路290および/またはマッピング回路291によってアクセスされ得る欠陥メモリロケーションのアドレスを記憶する。一実施形態では、複数のテスト値294aは、コントローラ110によって提供される疑似乱数生成器により、テストパターンとして生成されるか、または別のメモリモジュールの内容を読み取ることによって得られる。
代替の実施形態では、欠陥回路294は、メモリロケーションからの電流/電圧を感知し、電流/電圧を表す記憶されている値と比較して、メモリロケーションが欠陥を有するか否かを決定する感知回路を含む。
各種実施形態では、HRCH回路190を含むICバッファ素子200aは、異なる動作モードで動作する。第1の動作モードでは、ICバッファ素子200aは、別のメモリモジュールおよび/またはコントローラによってアクセスされるべき読み出し/書き込みデータを記憶する。第2の動作モードでは、ICバッファ素子200aは、別のメモリモジュール内のアドレスを読み出し/書き込みデータに割り当て、データおよびアドレスを別のメモリモジュールに転送し、次いで、別のメモリモジュールは読み出し/書き込みデータを記憶する。
クロック回路270は、外部クロックを基準にして内部クロック信号の位相または遅延を調整するための1つまたは複数のクロックアラインメント回路を含む。クロックアラインメント回路は、クロックソース130等の既存のクロック発生器からの外部クロックを利用してもよく、または内部クロックを提供し、所定の時間関係を有する内部同期クロック信号を生成する内部クロック発生器を利用してもよい。一実施形態では、クロック回路270は、位相ロックループ回路または遅延ロックループ回路を含む。一実施形態では、クロックアラインメント回路は、転送または受信された制御情報、読み取りデータ、および/または書き込みデータに対して時間関係を有する内部クロック信号を提供する。
実施形態では、インタフェース220a、220b(ならびにインタフェース210)内の送信器は、符号化クロック情報を含む差分信号を送信し、受信器は、符号化クロック情報を含む差分信号を受信する。一実施形態では、クロック回路270は、受信器によって受信されたデータに符号化されたクロック情報を抽出する。さらに、クロック情報は、送信器によって送信されるデータにも符号化される。例えば、クロック情報は、所与のデータビット数中に発生する信号遷移数が最小になることを保証することにより、データ信号に符号化してもよい。
シリアルインタフェース274は、シリアル情報をコントローラ110、別のICバッファ素子、または実施形態での他の構成回路から受信し/に送信するインタフェースである。シリアル情報は、ICバッファ素子200aまたはメモリモジュールの初期化値/信号を含むことができる。一実施形態では、シリアルインタフェース274は、コントローラ110によって使用されて、1つまたは複数の書き込み閾値293aおよび/またはテスト値294a等の値をHRCH回路190に記憶し、かつ/またはHRCH回路190内の値を読み出す。
図2Bは、図2Aに示されるバッファIC200aと同様であるが、揮発性メモリモジュール118(図1)と併用されるバッファIC200bを示す。2つのバッファIC内の回路の大半は同様であり、簡潔にするために、再び説明しない。しかし、耐久性回路293aおよび欠陥回路294a(図2A)の省略等の回路に対する特定の変更が利用され得る。さらに、トランザクションキューおよびマッピング回路は、不揮発性モジュールバッファIC200aによって利用されるデータマッピングと異なるようにデータマッピングを処理する。
マッピング回路291は、一般に、データをインタフェース220に宛てると共に、インタフェース220からデータをすべての素子に並列に宛てるように構成され、同様のアドレスが、素子のうちのすべてまたは大半に同時に送信され、多くのデイス(deice)が単一のトランザクションによって選択される。
インタフェース220a、220bは別個のインタフェースとして示されるが、組み合わせてもよい。インタフェース220a、220bは、揮発性メモリ素子に送信中または揮発性メモリ素子から受信中のデータの記憶に使用されるトランザクションキュー222a、222bを含む。バッファ200bがDRAMのような揮発性メモリ素子に適用される場合、トランザクションキューは、多くの素子に宛てられ、多くの素子に分散してトランザクションを記憶する。この場合、素子の結合帯域幅は並列にアクセスされて、トランザクションの帯域幅が最大化される。メモリ素子に送信中のデータおよびメモリ素子から送信中のデータは、インタフェース210内のトランザクションキュー223bに転送されてから、上流シリアルインタフェースおよび下流シリアルインタフェースに送信される。同様に、信号パス201からシリアルに受信されたトランザクションは、トランザクションキュー223bに記憶され、次いで、222a、222bにおけるトランザクションキューに転送されてから、メモリ素子に送信される。この編成では、インタフェース210内の上流リンクまたは下流リンク上の単一のトランザクションは、メモリから読み出されるとき、または書き込まれるときに、複数のメモリ素子にアクセスする。
上述したように、フラッシュメモリ素子およびDRAMメモリ素子は、多くの異なる特性を有する。さらなる違いには、データ書き込み動作が素子内でどのように実行されるかが含まれる。
図3Aは、DRAMベースのFBDIMMモジュール318とフラッシュベースのFBDIMMモジュール320との間の相対データマッピングの一例を示す。DRAMベースのFBDIMMメモリモジュール内では、モジュール上のDRAM素子303a〜303hがデータバス幅を定義する。そして、この幅は、各クロックエッジにおいてすべてのDRAMに同時に書き込むことが可能なビット数を示す。同時書き込みのそれぞれは、図3Aの揮発性素子303a〜303h内の影付きエリアによって象徴的に示されるように、各DRAM内の同じアドレスにおいて実行される。したがって、各クロックサイクル中に、データの部分が各DRAMに書き込まれる。バッファIC325は、シリアル化解除回路(図示せず)を提供して、上流シリアルリンク340aまたは下流シリアルリンク350bから受信されたシリアルストリームを並列データストリームに変換し、並列データパス328a〜328hに沿って個々のDRAM素子に送信する。
並列同時書き込み方式は、DRAMベースのメモリモジュールではうまく機能する一方で、種々の理由により、フラッシュベースのモジュール用のこのような方法は非現実的である。フラッシュ素子は、多くの場合、ブロックと呼ばれるメモリ単位で消去および再プログラムを行う。さらに、データをフラッシュ素子に記憶または書き込むには、ブロックを空にするか、または消去しなければならない。その結果、大半の場合、消去動作が書き込み動作の前に行われる。さらに、上述したように、フラッシュ素子は、通常、制限された書き込み耐久性を有する。
図3Aをさらに参照すると、フラッシュベースのFBDIMMモジュール320は、最小数の素子を利用して、1つまたは複数の指定ブロック360(影付きブロックとして示される)内にデータを記憶するように、下流シリアルリンク340bから受信したシリアルデータをリマッピングするバッファIC326を含む。これにより、書き込み動作がブロック当たりの利用可能ストレージ利用率を最大化し、すべての素子の耐久性に影響する書き込み動作の数を最小化することが保証される。このマッピングは、2つのモジュール間で上流パスに沿って逆方向にも作用することができる。このような状況では、所与のブロックからのデータは、示されるマッピングと同様に、複数のDRAMにリマッピングされる。
図3Bは、第1の階層アドレス空間363と第2の階層アドレス空間364との間でのアドレスマッピング362を示す。一実施形態では、第1のアドレス空間363は、階層101(揮発性集積回路メモリ素子を有する)内のアドレス空間(またはアドレス指定可能なメモリロケーションの量)に対応し、階層アドレス空間364は、階層102(不揮発性ICを有する)内のアドレス空間に対応する。階層アドレス空間363は、少なくとも、アドレス指定可能なメモリロケーション366a〜366nを含み、階層アドレス空間364は、少なくとも、アドレス指定可能なメモリロケーション368a〜368tを含む。一実施形態では、階層アドレス空間364は、階層アドレス空間363よりもかなり大きい。本明細書において説明したように、回路および/または実行可能命令は、データを階層アドレス空間363または階層アドレス空間364にマッピングまたは割り当てる。一実施形態では、関連するデータは、一時には、階層アドレス空間363または364のうちの一方内のアドレスが割り当てられ、次いで、前に割り当てられていた階層アドレス空間内の異なるメモリロケーションまたは異なる階層アドレス空間内の異なるメモリロケーションにおける異なるアドレスがリマッピングまたは割り当てられた読み出しデータおよび/または書き込みデータであり得る。一実施形態では、図3Bに示されたメモリロケーションは、連続したメモリロケーションのブロックまたはグループに対応する。
例えば、メモリロケーション364aに記憶された、または記憶されるべきデータには、メモリロケーション363bへのアドレスがマッピングまたは割り当てられ、メモリロケーション363bに記憶される。同様に、メモリロケーション363nに記憶された、または記憶されるべきデータには、メモリロケーション364tへのアドレスがマッピングされ、メモリロケーション364tに記憶される。
メモリロケーション364eが割り当てられたデータに、メモリロケーション364sを再割り当てし、階層アドレス空間364内のメモリロケーション364sに記憶してもよい。階層アドレス空間364内のデータの再割り当ておよび記憶は、所定数の書き込み動作が特定のメモリロケーションにおいて発生した場合、かつ/または特定のメモリロケーションが欠陥を有するか、または信頼性が低いと判断された場合に行うことができる。
図4は、HRCH回路180を有する、図1に示されるコントローラ110を示す。HRCH回路180は、図2Aおよび図2Bに示されるHRCH回路190と同様に動作する。コントローラ110は、信号パス140a上で制御情報および読み出し/書き込みデータを転送する、インタフェース310と同様のインタフェース401も含む。コントローラ110は、制御データおよび読み出し/書き込みデータの同期および転送に使用される、クロック回路370と同様のクロック回路403も含む。シリアルインタフェース402は、ICバッファ素子125a、125b、126a、および126b内のシリアルインタフェース374と共に使用されて、コントローラ110とICバッファ素子125a、125b、126a、および126bとの間にシリアル情報を提供する。
一実施形態では、コントローラ110またはICバッファ素子300の制御回路390は、システム100内の階層の数および種類を示す情報をSPD素子等の記憶回路から読み出す。次いで、制御回路390は、SPD素子から読み出された情報に応答して、適切な制御信号を生成することができる。
動作に際して、上述したシステムは、モジュールの位置(例えば、上流か下流か)および素子の種類(例えば、揮発性か不揮発性か)に基づいて階層を確立することができる。上流パスおよび下流パスを含むFBDIMMのようなインフラストラクチャに結合された場合、このような構造は、準拠違反の問題を回避しながら、揮発性メモリおよび不揮発性メモリの恩恵を利用する。
図5A〜図5Dは、図1に示されるシステム100の動作方法500、510、520、および530を示す。上述したデイジーチェーン接続されたポイントツーポイントリンク構造を利用することにより、後述する方法の多くは、同時に実行される複数の動作を含む。さらに、実施形態では、図5A〜図5Dに示される論理ブロックは、単独または組み合わせでのハードウェア(例えば、回路)、ソフトウェア(実行可能な命令)、またはユーザの動作を表す。例えば、他の回路を有する、図1に示されるHRCH回路は、単独または組み合わせで、動作を実行することができる。示されていない他の論理ブロックを各種実施形態において含んでもよい。同様に、示されている論理ブロックは、各種実施形態において除外されてもよい。方法500、510、520、および530について逐次論理ブロックで説明するが、方法の論理ブロックによって表される動作は、非常に素早く完了されるか、または略瞬時に完了され、同時に実行し得る。
図5Aに示される方法500は、書き込みデータのバッファリングを含み、501において、書き込みデータをメモリコントローラ110から1つまたは複数のメモリモジュールの第1の階層101に転送することによって開始される。502において、書き込みデータは第1の階層内で蓄積もされ、所定数の連続ビット値または書き込みデータブロックに集めることができる。次いで、503において、第1の階層内に蓄積された書き込みデータを第1の階層のモジュールから第2の階層102の1つまたは複数のメモリモジュールに転送することができる。次いで、504において、第1の階層に記憶された書き込みデータを退避させることができる。方法500では、第1の階層は、第2の階層の書き込みキャッシュとして機能する。第2の階層モジュール内の不揮発性メモリ素子に関連する書き込み待ち時間は約数ミリ秒であり得るため、これは重要である。データが第1の階層から第2の階層に転送されている間に、書き込みデータを第1の階層内にキャッシュすることにより、コントローラは、第2の階層モジュールを待つ必要なく、他の動作を同時に実行することができる。
図5Bは、第1の階層101が(コントローラ100に対して)第2の階層102の読み出しデータの読み出しキャッシュとして機能する、読み出しデータをキャッシュする方法510を示す。方法510は、511および512において、読み出しデータを所定数の連続ビット値または読み出しデータブロックに集め、次いで、読み出しデータを第2の階層から第1の階層に転送することによって開始される。第1の階層は、513において、読み出しデータブロックが第2の階層から第1の階層に転送されている間、コントローラと同時に書き込み動作および読み出し動作を同時に実行することができる。本明細書において説明する階層システムによって提供される別の有益な方法は、書き込みデータの併合を含む。場合によっては、いくつかの所望のデータの部分が第2の階層102内のモジュールにすでに記憶されている間、別の部分を第1の階層101内のモジュールに記憶することができる。第2の階層(不揮発性素子を有する)内のブロックへのいかなる書き込みも、まず、ブロック全体の内容を消去することを含む。したがって、ブロックの元の内容の消失を回避するために、図5Cに示される「読み出し−変更−書き込み」の形態の一連のステップを利用することができる。
図5Cをさらに参照すると、書き込みデータを併合する方法520は、まず、521において、所望のデータ「データA」をモジュールの第1の階層101内の揮発性メモリ素子から読み出すことを含む。データは、揮発性メモリモジュールバッファIC125または不揮発性メモリモジュールバッファIC126のうちの一方に一時的に記憶することができる。次いで、ステップ522に示されるように、不揮発性素子からの所望のデータブロック「ブロックB」が、第2の階層102内のメモリモジュールから読み出され、データAを記憶している同じバッファIC内に一時的に記憶される。次いで、ステップ523において、データAおよびブロックBは、バッファ回路によって一緒に併合される。次いで、524において、併合データ「データA」および「ブロックB」は、単一のデータブロック「ブロックC」として再び第2の階層に書き込まれる。
図5Dは、531において、書き込みデータAを第1の階層101に転送することによって開始される方法530を示し、書き込みデータAは、書き込みデータブロックに記憶またはキャッシュされてから、第2の階層102に書き込まれる。532において、第1の階層内にキャッシュされた書き込みデータAのブロックがアクセスされる。次いで、533において、キャッシュされた書き込みデータAのブロックは、第1の階層から第2の階層に転送され、第2の階層に記憶され、その間、第1の階層内のデータBが、読み出し動作等を通して同時にアクセスされる。図5Dは、同時動作を含む方法の一実施形態を示すが、コントローラならびにバッファ素子110、125、および126を相互接続するデイジーチェーン接続された上流ポイントツーポイントリンク140a〜140nおよび下流ポイントツーポイントリンク150a〜150nにより、同時動作の各種実施形態が可能である。例えば、コントローラ110と第1の階層のメモリ素子との間の読み出し動作および/または書き込み動作は、第1レベルのメモリ階層と第2レベルのメモリ階層との間で実行される書き込み動作および/または読み取り動作と同時に実行することができる。
図1に示された実施形態に戻ると、メモリモジュール120a〜120dは、信号パス140a〜140dに結合するための、ピンおよび/またはボール等の複数の導通接点を有するインタフェース123a〜123dを有する基板を含む。一実施形態では、複数の接点、はんだボール、またはピンがインタフェースに含まれ、インタフェースとメモリモジュール基板との間に電気接続を提供する。一実施形態では、インタフェースは、コネクタまたはプリント回路基板等の基板から着脱可能であり得る。一実施形態では、コントローラ110、集積回路メモリ素子103a〜103pおよび104a〜104p、ならびにICバッファ素子125a、125b、126a、および126bは、集積モノリシック回路に別個に収容され、かつ/または複数のパッケージ内で結合される(例えば、単一のパッケージ内のメモリ素子およびバッファ素子)。パッケージは、1つまたは複数の基板上に配置することができる。
一実施形態では、1つまたは複数の信号パス140a〜140dは、1つまたは複数の信号線を示すポイントツーポイントリンクであり、各信号線は、2つのみの送受信器接続ポイントを有し、各送受信器接続ポイントは、送信器回路、受信器回路、または送受信器回路に結合される。例えば、ポイントツーポイントリンクは、一端に、またはその近傍に結合された送信器と、他端に、またはその近傍に結合された受信器とを含むことができる。
実施形態では、1つまたは複数の信号パス140a〜140dは、異なる種類のバスまたはポイントツーポイントリンク構造を含むことができる。実施形態では、信号パスは、異なる種類の信号伝送およびクロッキング種別構造を有することもできる。異なるリンク構造を有する実施形態は、同時双方向リンク、時間多重化双方向リンク、および複数の単方向リンクを含む。電圧モード信号伝送または電流モード信号伝送は、これらリンク構造またはバス構造の任意のものに利用することができる。一実施形態では、信号パス140a〜140dは、SMBus等のシリアルデータバスを含む。シリアルデータは、シリアルインタフェース474を介してコントローラ110を1つまたは複数のICバッファ素子125a、125b、126a、および126bに結合することができる。
一実施形態では、1つまたは複数のメモリモジュール120a〜120dは、標準DIMMフォームファクタを有するデュアルラインメモリモジュール(「DIMM」)である。一実施形態では、メモリモジュールは、「システムインパッケージ」(「SIP」)のように、単一の単体パッケージに含むことができる。一種のSIP実施形態では、メモリモジュールは、互いの上に積み重ねられ、導電性相互接続を介して結合された一続きの集積回路ダイ(すなわち、メモリ素子およびバッファ素子)を含むことができる。はんだボールまたは配線リードは、メモリモジュールをプリント回路ボード基板に固定して取り付けることができるように、コネクタインタフェースとして利用することができる。コネクタインタフェースは、例えば、メモリモジュールがシステムの残りの部分から着脱可能なように、オス型部およびメス型部を含む物理的に分離可能な種類のものであってもよい。別のSIP実施形態は、二次元構成で共通の基板平面上に配置され、単一のパッケージ筐体内に置かれたいくつかのメモリ素子およびバッファ素子を含むことができる。
図1に示される実施形態では、集積回路メモリ素子103a〜103pおよび104a〜104pは、異なる種類の集積回路メモリ素子を含む。例えば、集積回路メモリ素子103a〜103pは、揮発性集積回路メモリ素子であってもよく、その一方で、集積回路メモリ素子104a〜104pは不揮発性集積回路メモリ素子であってもよい。一実施形態では、揮発性集積回路メモリ素子は、電力が素子から除去されると、記憶された情報が失われる複数のメモリセルを含む。これとは対照的に、一実施形態では、不揮発性集積回路メモリ素子は、電力が素子から除去されても情報が保持される複数のメモリセルを含む。
揮発性メモリ素子の種類としては、ダイナミックランダムアクセスメモリ(「DRAM」)、分子電荷ベース(molecular charge-based)(ZettaCore)DRAM、浮遊ボディ(floating-body)DRAM、およびスタティックランダムアクセスメモリ(「SRAM」)が挙げられるが、これらに限定されない。DRAMの特定の種類としては、ダブルデータレートSDRAM(「DDR」)または後世代のSDRAM(例えば、「DDR2」または「DDR3」)、ならびにXDR(商標)DRAMまたはDIRECT RAMBUS(登録商標)DRAM(「DRDRAM」)が挙げられる。
不揮発性メモリ素子の種類としては、電気的消去可能プログラム読み取り専用メモリ(「EEPROM」)、フラッシュ(NAND型フラッシュおよびNOR型フラッシュを含む)、ONO型フラッシュ、磁気抵抗RAMまたは磁気RAM(「MRAM」)、強誘電性RAM(「FRAM」)、ホログラフィック媒体、オボニック/位相変化、ナノ結晶、ナノチューブRAM(Nanotube RAM)(NRAM−Nantero)、MEMS走査プローブシステム、MEMSカンチレバースイッチ、ポリマー、分子、ナノ浮遊ゲート、および単電子が挙げられるが、これらに限定されない。
不揮発性メモリ素子のいくつかの種類の一特性は、一度にバイトまたはワードをランダムアクセス様式で読み出し、またはプログラム/書き込むことができるが、一度にブロックを消去しなければならないことである。新しく消去されたブロックから始まり、そのブロック内の任意のバイトをプログラムすることができる。しかし、バイトがプログラムされると、通常、ブロック全体が消去されるまで、再び変更することができない。例えば、NOR型フラッシュメモリ素子は、ランダムアクセスでの読み出し動作およびプログラム動作を提供することができるが、通常、ランダムアクセスでの書き換え動作または消去動作を提供することができない。
集積回路メモリ素子は、複数の感知増幅器と共に行・デコーダ回路(row and decoder circuit)によって(ワードおよびビットラインを介して)二次元メモリセルの1つまたは複数のストレージアレイ(またはバンク)を含むことができる。様々な量の電圧または電流を、ストレージアレイ内の1つまたは複数のメモリセルに付与して、論理値(例えば、論理1または論理0)に対応する電圧値を記憶したメモリセルのプログラム(書き込み)、読み出し、および/または消去を行うことができる。
図1に示される実施形態では、コントローラ110はマスタ装置であり、他のインタフェースまたは機能、例えば、チップセットのノースブリッジチップを含む集積回路素子であることができる。マスタ装置は、マイクロプロセッサまたはグラフィックスプロセッサユニット(「GPU」)またはビジュアルプロセッサユニット(「VPU」)上に集積することができる。マスタ装置は、フィールドプログラマブルゲートアレイ(「FPGA」)として実施することができる。システム100は、サーバ(例えば、ブレードサーバ)、パーソナルコンピュータ、グラフィックスカード、セットトップボックス、ケーブルモデム、携帯電話、ゲームコンソール、デジタルテレビジョンセット(例えば、高精細テレビジョン)(「HDTV」)、ファックス機、ケーブルモデム、デジタル多用途ディスク(「DVD」)プレーヤ、またはネットワークルータ等の様々なシステムまたはサブシステムに含むことができる。
図1に示される実施形態では、システム100は、キーワードの入力に応答して、インターネット上に記憶されたウェブサイト(またはページ)へのハイパーリンク、イメージ、および/または動画を含む検索結果を提供する検索エンジンとして実行または機能する際に使用されるサーバに使用することができる。検索エンジン実施形態では、検索頻度の高い情報(例えば、最近の検索結果)は階層101に記憶することができ、その一方で、検索頻度が低い情報(例えば、インデックス)は階層102に記憶することができる。
本明細書において説明した信号は、導電体によってコントローラ/メモリモジュール/素子/回路間および内で送信または受信し、制限なしで、電気信号の電圧レベルまたは電流レベルを変調することを含む任意の数の信号伝送技法を使用して生成することができる。信号は、任意の種類の制御情報およびタイミング情報(例えば、コマンド、アドレス値、クロック信号、および構成情報)ならびにデータを表すことができる。一実施形態では、制御情報、アドレス情報、またはデータ情報は、特定の信号線上で特定のビットウィンドウにおいてアサートされる1つまたは複数の信号を表す要求パケット内に含まれる。一実施形態では、要求パケットは、コントローラから1つまたは複数のメモリモジュールに提供されると共に、メモリモジュール間で提供される。
実施形態では、信号パスは、相互接続、導電要素、接点、ピン、半導体基板内の領域、配線、金属トレース/信号線、または光電導体等の信号を単独でまたは組み合わせて転送する媒体である。一実施形態では、図に示された単一の信号パスを複数の信号パスで置き換えてもよく、図に示された複数の信号パスを単一の信号パスで置き換えてもよい。実施形態では、信号パスは、バスおよび/またはポイントツーポイント接続を含むことができる。一実施形態では、信号パスは、制御信号線およびデータ信号線を含む。代替の実施形態では、信号パスは、データ信号線のみまたは制御信号線のみを含む。さらに他の実施形態では、信号パスは、単方向(一方向に移動する信号)または双方向(2方向に移動する信号)または単方向信号線および双方向信号線の両方の組み合わせである。
本明細書において開示された各種回路は、コンピュータ支援設計ツールを使用して記述され、挙動、レジスタ転送、論理構成要素、トランジスタ、レイアウトジオメトリ、および/または他の特性に関して各種コンピュータ可読媒体に具現されるデータおよび/または命令として表現(または表す)ことができることに留意されたい。このような回路表現を実装することができるファイルおよび他のオブジェクトのフォーマットとしては、C、Verilog、およびHLDL等の挙動言語(behavioral language)をサポートするフォーマット、RTLのようなレジスタレベル記述言語をサポートするフォーマット、GDSII、GDSIII、GDSIV、CIF、MEBES等のジオメトリ記述言語をサポートするフォーマット、および任意の他の適したフォーマットおよび言語が挙げられるが、これらに限定されない。このようなフォーマットされたデータおよび/または命令を具現することができるコンピュータ可読媒体としては、各種形態(例えば、光学記憶媒体、磁気記憶媒体、または半導体記憶媒体)の不揮発性記憶媒体、ならびに無線、光、有線の信号伝送媒体またはこれらの任意の組み合わせを通してのこのようなフォーマットデータおよび/または命令の転送に使用することができる搬送波が挙げられるが、これらに限定されない。搬送波によるこのようなフォーマットデータおよび/または命令の転送の例としては、1つまたは複数のデータ転送プロトコル(例えば、HTTP、FTP、SMTP等)を介してのインターネットおよび/または他のコンピュータネットワークを経由しての転送(アップロード、ダウンロード、電子メールなど)が挙げられるが、これに限定されない。1つまたは複数のコンピュータ可読媒体を介してコンピュータシステム内で受信された場合、このようなデータおよび/または上述した回路の命令ベースの表現は、ネットリスト生成プログラム、プレースアンドルート(place and route)プログラム等を限定なしで含む1つまたは複数の他のコンピュータプログラムの実行と併せて、コンピュータシステム内の処理エンティティ(例えば、1つまたは複数のプロセッサ)によって処理して、このような回路の物理的な現れの表現またはイメージを生成することができる。その後、このような表現またはイメージは、例えば、素子組み立てプロセス内で回路の各種構成要素の形成に使用される1つまたは複数のマスクの生成を可能にすることにより、素子の組み立てに使用することができる。
本明細書において説明した回路の機能は、部分的にまたは完全に、例えば、システム100内に記憶され実行可能なコンピュータ/プロセッサ実行可能命令(またはソフトウェア)で置き換えることも可能である。
好ましい実施形態の上記説明は、例示および説明のために提供された。網羅的であることや、実施形態を開示された厳密な形態に限定することは意図されない。変更および変形が当業者には明らかになるであろう。実施形態は、本発明の原理およびその実際の適用を最良に説明し、それにより、当業者が、意図される特定の用途に適した各種変更と共に各種実施形態に関して本発明を理解できるように、選択され説明された。本発明の範囲は以下の特許請求の範囲およびその等価物によって規定されることが意図される。

Claims (17)

  1. メモリコントローラと、
    第1のメモリ階層を定義する揮発性メモリ素子の第1のセットであって、少なくとも1つの第1のメモリモジュール上に配置され、前記少なくとも1つの第1のメモリモジュールは、前記メモリコントローラにデイジーチェーン構成で結合され、第1の集積回路バッファ素子を含む、揮発性メモリ素子の第1のセットと、
    第2のメモリ階層を定義する不揮発性メモリ素子の第2のセットであって、少なくとも1つの第2のメモリモジュール上に配置され、前記少なくとも1つの第2のメモリモジュールは、前記少なくとも1つの第1のメモリモジュールにデイジーチェーン構成で結合され、第2の集積回路バッファ素子を含む、不揮発性メモリ素子の第2のセットと
    を備える、メモリシステム。
  2. 前記メモリコントローラと前記第2のメモリ階層との間で伝送される信号は、前記第1のメモリ階層を通過する、請求項1に記載のメモリシステム。
  3. 前記少なくとも1つの第1のメモリモジュールは、第1の集積回路バッファ素子をそれぞれ含む複数の第1のメモリモジュールを備え、前記第1の集積回路バッファ素子のそれぞれは、ポイントツーポイントリンクの各セットを介してデイジーチェーン様式で結合される、請求項1に記載のメモリシステム。
  4. 前記ポイントツーポイントリンクの各セットは、信号を前記メモリコントローラに向けて送信する少なくとも1つの上流信号パスと、信号を前記メモリコントローラから離れて送信する少なくとも1つの下流信号パスとを備える、請求項3に記載のメモリシステム。
  5. 各ポイントツーポイントリンクは単方向シリアルリンクを含む、請求項4に記載のメモリシステム。
  6. 前記揮発性メモリ素子はダイナミックランダムアクセスメモリ(DRAM)素子を含む、請求項1に記載のメモリシステム。
  7. 前記不揮発性メモリ素子はフラッシュメモリ素子を含む、請求項1に記載のメモリシステム。
  8. 前記少なくとも1つの第1のメモリモジュールは、完全バッファ型デュアルインラインメモリモジュールを含む、請求項1に記載のメモリシステム。
  9. 前記少なくとも1つの第2のメモリモジュールは、第2の集積回路バッファ素子をそれぞれ含む複数の第2のメモリモジュールを含み、前記第2の集積回路バッファ素子のそれぞれは、ポイントツーポイントリンクの各セットを介してデイジーチェーン様式で互いに結合される、請求項1に記載のメモリシステム。
  10. 前記ポイントツーポイントリンクの各セットは、信号を前記メモリコントローラに向けて送信する少なくとも1つの上流信号パスと、信号を前記メモリコントローラから離れて送信する少なくとも1つの下流信号パスとを備える、請求項9に記載のメモリシステム。
  11. 各ポイントツーポイントリンクは単方向シリアルリンクを含む、請求項10に記載のメモリシステム。
  12. 少なくとも1つの第1のメモリモジュール上に配置された揮発性メモリ素子の第1のセットにデイジーチェーン様式で結合されたメモリコントローラを有するメモリシステムの動作方法であって、前記メモリシステムは、前記少なくとも1つの第1のメモリモジュールにデイジーチェーン接続された少なくとも1つの第2のメモリモジュール上に配置された不揮発性メモリ素子の第2のセットを含み、前記方法は、
    書き込みデータを前記メモリコントローラから前記揮発性メモリ素子の第1のセットの部分に下流信号パスに沿って送信すること、
    前記書き込みデータを前記揮発性メモリ素子の第1のセットの部分に蓄積すること、および
    前記書き込みデータを前記揮発性メモリ素子の第1のセットから前記不揮発性メモリ素子の第2のセットの部分に第2の下流信号パスに沿って転送すること
    を含む、方法。
  13. 前記送信動作、前記蓄積動作、および前記転送動作のうちの少なくとも2つは、同時に行われる、請求項12に記載の方法。
  14. 前記揮発性メモリ素子はダイナミックランダムアクセスメモリ素子を含み、前記不揮発性メモリ素子はフラッシュメモリ素子を含み、
    前記書き込みデータを蓄積することは、前記書き込みデータをDRAM素子の同様のアドレスの並列セットに書き込むことを含み、
    前記書き込みデータを前記揮発性メモリ素子の第1のセットから前記不揮発性メモリ素子の第2のセットに転送することは、前記書き込みデータを前記ダイナミックランダムアクセスメモリ素子の第1のセット内の同様のアドレスの並列セットから、前記フラッシュメモリ素子のうちの1つの中のブロックにリマッピングすることを含む、請求項12に記載の方法。
  15. 少なくとも1つの第1のメモリモジュール上に配置された揮発性メモリ素子の第1のセットにデイジーチェーン様式で結合されたメモリコントローラを有するメモリシステムの動作方法であって、前記メモリシステムは、前記少なくとも1つの第1のメモリモジュールにデイジーチェーン接続された少なくとも1つの第2のメモリモジュール上に配置された不揮発性メモリ素子の第2のセットを含み、前記方法は、
    読み出しデータを前記不揮発性メモリ素子の第2のセットの部分から上流データパスに沿って前記揮発性メモリ素子の第1のセットに転送すること、
    前記読み出しデータを前記揮発性メモリ素子の第1のセットの部分に記憶すること、
    前記揮発性メモリ素子の第1のセットの前記部分に記憶されたデータにアクセスすること
    を含む、方法。
  16. 前記転送動作、前記記憶動作、および前記アクセス動作のうちの少なくとも2つは、同時に行われる、請求項15に記載の方法。
  17. 少なくとも1つの第1のメモリモジュール上に配置された揮発性メモリ素子の第1のセットにデイジーチェーン様式で結合されたメモリコントローラを有するメモリシステムの動作方法であって、前記メモリシステムは、前記少なくとも1つの第1のメモリモジュールにデイジーチェーン接続された少なくとも1つの第2のメモリモジュール上に配置された不揮発性メモリ素子の第2のセットを含み、前記方法は、
    第1の読み出しデータを、前記不揮発性メモリ素子の第2のセットの第1の部分から第1の上流データパスに沿って前記揮発性メモリ素子の第1のセットに転送すること、
    前記第1の読み出しデータを前記不揮発性メモリ素子の第1のセットの第2の部分に書き込むこと、
    前記不揮発性メモリ素子の第1のセットの第3の部分に記憶された第2のデータを識別すること、および
    前記第1のデータを前記第2のデータと併合することであって、
    前記第1の読み出しデータおよび前記第2のデータを前記揮発性メモリ素子の第1のセットの第1および第2の部分を下流データパスに沿って前記不揮発性メモリ素子の第2のセットに転送し、前記第1および第2のデータを前記不揮発性メモリ素子の第2のセットのブロック部分に書き込むことによって併合することを含む、方法。
JP2010501086A 2007-03-30 2008-03-19 異なる種類の集積回路メモリ素子を有する階層メモリモジュールを含むシステム Active JP5401444B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US90935907P 2007-03-30 2007-03-30
US60/909,359 2007-03-30
PCT/US2008/057471 WO2008121559A1 (en) 2007-03-30 2008-03-19 System including hierarchical memory modules having different types of integrated circuit memory devices

Publications (3)

Publication Number Publication Date
JP2010524059A true JP2010524059A (ja) 2010-07-15
JP2010524059A5 JP2010524059A5 (ja) 2011-05-06
JP5401444B2 JP5401444B2 (ja) 2014-01-29

Family

ID=39512709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010501086A Active JP5401444B2 (ja) 2007-03-30 2008-03-19 異なる種類の集積回路メモリ素子を有する階層メモリモジュールを含むシステム

Country Status (5)

Country Link
US (5) US9195602B2 (ja)
EP (2) EP2132635B1 (ja)
JP (1) JP5401444B2 (ja)
CN (1) CN101689145A (ja)
WO (1) WO2008121559A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569144B2 (en) 2013-03-27 2017-02-14 Hitachi, Ltd. DRAM with SDRAM interface, and hybrid flash memory module
US9658783B2 (en) 2013-03-27 2017-05-23 Hitachi, Ltd. DRAM having SDRAM interface and flash memory consolidated memory module
US9858181B2 (en) 2013-06-20 2018-01-02 Hitachi, Ltd. Memory module having different types of memory mounted together thereon, and information processing device having memory module mounted therein
US10324854B2 (en) 2015-03-23 2019-06-18 Fujitsu Limited Information processing apparatus and control method for dynamic cache management

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008057557A2 (en) 2006-11-06 2008-05-15 Rambus Inc. Memory system supporting nonvolatile physical memory
WO2008131058A2 (en) 2007-04-17 2008-10-30 Rambus Inc. Hybrid volatile and non-volatile memory device
US8055809B2 (en) * 2008-12-24 2011-11-08 International Business Machines Corporation System and method for distributing signal with efficiency over microprocessor
US9123409B2 (en) 2009-06-11 2015-09-01 Micron Technology, Inc. Memory device for a hierarchical memory architecture
US8245024B2 (en) * 2009-08-21 2012-08-14 Micron Technology, Inc. Booting in systems having devices coupled in a chained configuration
US9483399B2 (en) * 2009-12-31 2016-11-01 Micron Technology, Inc. Sub-OS virtual memory management layer
US8799553B2 (en) 2010-04-13 2014-08-05 Apple Inc. Memory controller mapping on-the-fly
US8463959B2 (en) * 2010-05-31 2013-06-11 Mosaid Technologies Incorporated High-speed interface for daisy-chained devices
JP5498933B2 (ja) * 2010-12-27 2014-05-21 株式会社リガク X線検出器
GB2493340A (en) * 2011-07-28 2013-02-06 St Microelectronics Res & Dev Address mapping of boot transactions between dies in a system in package
CN104303167B (zh) * 2012-05-08 2018-01-23 马维尔国际贸易有限公司 计算机系统和存储器管理的方法
CN104216837A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 一种内存系统、内存访问请求的处理方法和计算机系统
US20150106547A1 (en) * 2013-10-14 2015-04-16 Micron Technology, Inc. Distributed memory systems and methods
WO2015127327A1 (en) * 2014-02-23 2015-08-27 Rambus Inc. Distributed procedure execution and file systems on a memory interface
US20150363309A1 (en) * 2014-06-17 2015-12-17 Kingtiger Technology (Canada) Inc. System and method of increasing reliability of non-volatile memory storage
CN105760562B (zh) * 2014-12-19 2019-05-10 吴国盛 基于分层读取的集成电路设计架构
US10169257B2 (en) 2015-03-06 2019-01-01 Rambus Inc. Module based data transfer
WO2016145328A2 (en) * 2015-03-11 2016-09-15 Rambus Inc. High performance non-volatile memory module
KR102430561B1 (ko) * 2015-09-11 2022-08-09 삼성전자주식회사 듀얼 포트 디램을 포함하는 메모리 모듈
EP3356943B1 (en) 2015-10-01 2021-11-03 Rambus Inc. Memory system with cached memory module operations
US11054992B2 (en) * 2015-12-28 2021-07-06 SK Hynix Inc. Memory module and memory system including the memory module
US9830086B2 (en) * 2016-03-03 2017-11-28 Samsung Electronics Co., Ltd. Hybrid memory controller for arbitrating access to volatile and non-volatile memories in a hybrid memory group
EP4145447A1 (en) * 2016-06-27 2023-03-08 Apple Inc. Memory system having combined high density, low bandwidth and low density, high bandwidth memories
US10847196B2 (en) * 2016-10-31 2020-11-24 Rambus Inc. Hybrid memory module
KR102681170B1 (ko) * 2017-01-17 2024-07-04 에스케이하이닉스 주식회사 메모리 장치, 이를 포함하는 메모리 시스템, 및 그의 리페어 동작 방법
US10402521B1 (en) * 2017-01-19 2019-09-03 Xilinx, Inc. Programmable integrated circuits for emulation
US10147712B1 (en) * 2017-07-21 2018-12-04 Micron Technology, Inc. Memory device with a multiplexed command/address bus
US10959872B2 (en) 2017-08-02 2021-03-30 Samsung Electronics Co., Ltd. Motion assistance apparatus
US10490245B2 (en) 2017-10-02 2019-11-26 Micron Technology, Inc. Memory system that supports dual-mode modulation
US11403241B2 (en) 2017-10-02 2022-08-02 Micron Technology, Inc. Communicating data with stacked memory dies
US10446198B2 (en) 2017-10-02 2019-10-15 Micron Technology, Inc. Multiple concurrent modulation schemes in a memory system
US10725913B2 (en) 2017-10-02 2020-07-28 Micron Technology, Inc. Variable modulation scheme for memory device access or operation
US10355893B2 (en) 2017-10-02 2019-07-16 Micron Technology, Inc. Multiplexing distinct signals on a single pin of a memory device
CN111433749B (zh) 2017-10-12 2023-12-08 拉姆伯斯公司 具有dram高速缓存的非易失性物理存储器
KR102414047B1 (ko) * 2017-10-30 2022-06-29 에스케이하이닉스 주식회사 통합 메모리 디바이스 및 그의 동작 방법
US11544168B2 (en) 2017-10-30 2023-01-03 SK Hynix Inc. Memory system
CN107797945A (zh) * 2017-10-31 2018-03-13 郑州云海信息技术有限公司 一种存储系统及其数据存储方法、装置、系统及设备
US11099779B2 (en) 2018-09-24 2021-08-24 Micron Technology, Inc. Addressing in memory with a read identification (RID) number
US11403035B2 (en) * 2018-12-19 2022-08-02 Micron Technology, Inc. Memory module including a controller and interfaces for communicating with a host and another memory module
US11416422B2 (en) 2019-09-17 2022-08-16 Micron Technology, Inc. Memory chip having an integrated data mover
US11163490B2 (en) 2019-09-17 2021-11-02 Micron Technology, Inc. Programmable engine for data movement
US11397694B2 (en) 2019-09-17 2022-07-26 Micron Technology, Inc. Memory chip connecting a system on a chip and an accelerator chip
US20210081318A1 (en) * 2019-09-17 2021-03-18 Micron Technology, Inc. Flexible provisioning of multi-tier memory
US11604744B2 (en) 2020-10-16 2023-03-14 Alibaba Group Holding Limited Dual-modal memory interface controller
US20240152279A1 (en) * 2022-11-08 2024-05-09 Micron Technology, Inc. Memory sub-system for memory cell in-field touch-up

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04324194A (ja) * 1991-04-25 1992-11-13 Nec Corp Rom回路
JP2002366429A (ja) * 2001-06-11 2002-12-20 Hitachi Ltd 半導体記憶装置
JP2004502240A (ja) * 2000-06-27 2004-01-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ フラッシュを備えた集積回路
WO2005038660A2 (en) * 2003-10-17 2005-04-28 Micron Technology, Inc. Method and apparatus for sending data from multiple sources over a communications bus
US20060095671A1 (en) * 2004-10-29 2006-05-04 International Business Machines Corporation System, method and storage medium for providing data caching and data compression in a memory subsystem
JP2006313538A (ja) * 2005-05-03 2006-11-16 Samsung Electronics Co Ltd メモリモジュール及びメモリシステム
JP2007080258A (ja) * 2005-09-12 2007-03-29 Samsung Electronics Co Ltd ポイントツーポイントリンクを有するメモリシステム及び方法
WO2008074140A1 (en) * 2006-12-20 2008-06-26 Mosaid Technologies Incorporated Hybrid solid-state memory system having volatile and non-volatile memory

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5359569A (en) 1991-10-29 1994-10-25 Hitachi Ltd. Semiconductor memory
US6170047B1 (en) * 1994-11-16 2001-01-02 Interactive Silicon, Inc. System and method for managing system memory and/or non-volatile memory using a memory controller with integrated compression and decompression capabilities
AU1798999A (en) * 1997-12-05 1999-06-28 Intel Corporation Memory system including a memory module having a memory module controller
US6553450B1 (en) 2000-09-18 2003-04-22 Intel Corporation Buffer to multiply memory interface
US6625687B1 (en) 2000-09-18 2003-09-23 Intel Corporation Memory module employing a junction circuit for point-to-point connection isolation, voltage translation, data synchronization, and multiplexing/demultiplexing
US6877079B2 (en) 2001-03-06 2005-04-05 Samsung Electronics Co., Ltd. Memory system having point-to-point bus configuration
JP4863749B2 (ja) * 2006-03-29 2012-01-25 株式会社日立製作所 フラッシュメモリを用いた記憶装置、その消去回数平準化方法、及び消去回数平準化プログラム
US7966469B2 (en) * 2006-08-14 2011-06-21 Qimonda Ag Memory system and method for operating a memory system
US7564722B2 (en) * 2007-01-22 2009-07-21 Micron Technology, Inc. Memory system and method having volatile and non-volatile memory devices at same hierarchical level
US8185685B2 (en) * 2007-12-14 2012-05-22 Hitachi Global Storage Technologies Netherlands B.V. NAND flash module replacement for DRAM module
US9547589B2 (en) * 2008-06-18 2017-01-17 Super Talent Technology, Corp. Endurance translation layer (ETL) and diversion of temp files for reduced flash wear of a super-endurance solid-state drive
KR102534648B1 (ko) * 2018-03-08 2023-05-22 에스케이하이닉스 주식회사 메모리 시스템 및 그것의 동작 방법
US11442635B2 (en) * 2019-01-10 2022-09-13 Western Digital Technologies, Inc. Data storage systems and methods for optimized scheduling of background management operations

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04324194A (ja) * 1991-04-25 1992-11-13 Nec Corp Rom回路
JP2004502240A (ja) * 2000-06-27 2004-01-22 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ フラッシュを備えた集積回路
JP2002366429A (ja) * 2001-06-11 2002-12-20 Hitachi Ltd 半導体記憶装置
WO2005038660A2 (en) * 2003-10-17 2005-04-28 Micron Technology, Inc. Method and apparatus for sending data from multiple sources over a communications bus
US20060095671A1 (en) * 2004-10-29 2006-05-04 International Business Machines Corporation System, method and storage medium for providing data caching and data compression in a memory subsystem
JP2006313538A (ja) * 2005-05-03 2006-11-16 Samsung Electronics Co Ltd メモリモジュール及びメモリシステム
JP2007080258A (ja) * 2005-09-12 2007-03-29 Samsung Electronics Co Ltd ポイントツーポイントリンクを有するメモリシステム及び方法
WO2008074140A1 (en) * 2006-12-20 2008-06-26 Mosaid Technologies Incorporated Hybrid solid-state memory system having volatile and non-volatile memory

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9569144B2 (en) 2013-03-27 2017-02-14 Hitachi, Ltd. DRAM with SDRAM interface, and hybrid flash memory module
US9658783B2 (en) 2013-03-27 2017-05-23 Hitachi, Ltd. DRAM having SDRAM interface and flash memory consolidated memory module
US9858181B2 (en) 2013-06-20 2018-01-02 Hitachi, Ltd. Memory module having different types of memory mounted together thereon, and information processing device having memory module mounted therein
US10324854B2 (en) 2015-03-23 2019-06-18 Fujitsu Limited Information processing apparatus and control method for dynamic cache management

Also Published As

Publication number Publication date
WO2008121559A1 (en) 2008-10-09
US20160098354A1 (en) 2016-04-07
US20210035652A1 (en) 2021-02-04
US11823757B2 (en) 2023-11-21
EP2132635A1 (en) 2009-12-16
EP3279798A1 (en) 2018-02-07
US20100115191A1 (en) 2010-05-06
US9767918B2 (en) 2017-09-19
US9460021B2 (en) 2016-10-04
US9195602B2 (en) 2015-11-24
US20170025187A1 (en) 2017-01-26
US10755794B2 (en) 2020-08-25
EP2132635B1 (en) 2017-08-16
JP5401444B2 (ja) 2014-01-29
EP3279798B1 (en) 2020-07-29
CN101689145A (zh) 2010-03-31
US20170365354A1 (en) 2017-12-21

Similar Documents

Publication Publication Date Title
US11823757B2 (en) System including hierarchical memory modules having different types of integrated circuit memory devices
JP6339280B2 (ja) ハイブリッドメモリのためのシステム、方法及び装置
US7313644B2 (en) Memory device interface
US7451273B2 (en) System, method and storage medium for providing data caching and data compression in a memory subsystem
US10545689B2 (en) Data storage device and operating method thereof
US10978120B2 (en) Memory interface circuit, memory storage device and signal generation method
EP4170658A1 (en) Semiconductor memory devices and methods of operating the same
US20240241646A1 (en) Memory system and method of operating memory system
US20240125851A1 (en) Multi-modal memory apparatuses and systems
CN114842887A (zh) 存储器系统
CN118430628A (zh) 包括修复电路的存储器设备及其操作方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110318

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20110318

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130206

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130502

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20130528

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130927

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20131004

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131028

R150 Certificate of patent or registration of utility model

Ref document number: 5401444

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250