JP2017521753A - 読み出しキャッシュメモリ - Google Patents

読み出しキャッシュメモリ Download PDF

Info

Publication number
JP2017521753A
JP2017521753A JP2016568027A JP2016568027A JP2017521753A JP 2017521753 A JP2017521753 A JP 2017521753A JP 2016568027 A JP2016568027 A JP 2016568027A JP 2016568027 A JP2016568027 A JP 2016568027A JP 2017521753 A JP2017521753 A JP 2017521753A
Authority
JP
Japan
Prior art keywords
data
nand
array
dram
threshold
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
JP2016568027A
Other languages
English (en)
Other versions
JP6391712B2 (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 JP2017521753A publication Critical patent/JP2017521753A/ja
Application granted granted Critical
Publication of JP6391712B2 publication Critical patent/JP6391712B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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
    • 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/0806Multiuser, multiprocessor or multiprocessing cache 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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • 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/0875Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with dedicated cache, e.g. instruction or stack
    • 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/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
    • 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/10Address translation
    • G06F12/1081Address translation for peripheral access to main memory, e.g. direct memory access [DMA]
    • 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/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • 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/0608Saving storage space on 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/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • 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/0685Hybrid storage combining heterogeneous device types, e.g. hierarchical storage, hybrid arrays
    • 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
    • G11C29/44Indication or identification of errors, e.g. for repair
    • 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
    • G11C29/765Masking faults in memories by using spares or by reconfiguring using address translation or modifications in solid state disks
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1072Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers for memories with random access ports synchronised on clock signal pulse trains, e.g. synchronous memories, self timed memories
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/25Using a specific main memory architecture
    • G06F2212/253Centralized memory
    • G06F2212/2532Centralized memory comprising a plurality of modules
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements
    • G06F2212/621Coherency control relating to peripheral accessing, e.g. from DMA or I/O device
    • 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
    • G11C2029/0409Online test
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2245Memory devices with an internal cache buffer
    • 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)
  • Memory System Of A Hierarchy Structure (AREA)
  • Read Only Memory (AREA)
  • Detection And Correction Of Errors (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本開示は、読み出しキャッシュメモリのための方法及び装置を含む。1つの装置は、第1のDRAMアレイ、第1及び第2のNANDアレイ、ならびにDRAMアレイと第1のNANDアレイとの間のデータの移動及び第1のNANDアレイと第2のNANDアレイとの間のデータの移動を管理するよう構成された制御装置を備える、読み出しキャッシュメモリ装置を含む。【選択図】図2

Description

本開示は全体として半導体メモリ装置及び方法に関し、より詳細には、読み出しキャッシュメモリに関する。
メモリ装置は通常、コンピュータまたは他の電子装置内の内部、半導体、集積回路として提供される。揮発性及び不揮発性メモリを含む多くの異なるタイプのメモリが存在する。揮発性メモリではそのデータ(例えば、情報)を維持するために電力を必要とする場合があり、とりわけ、ランダムアクセスメモリ(RAM)、ダイナミックランダムアクセスメモリ(DRAM)、及び同期型ダイナミックランダムアクセスメモリ(SDRAM)を含む。不揮発性メモリは、電力が供給されていない場合であっても、記憶データを保持することによって永続的データを提供することができ、とりわけ、NAND型フラッシュメモリ、NOR型フラッシュメモリ、相変化メモリ(PCRAM)及び抵抗変化型メモリ(RRAM)などの可変抵抗メモリ、ならびにスピントルクトランスファランダムアクセスメモリ(STTRAM)などの磁気ランダムアクセスメモリ(MRAM)を含み得る。
メモリ装置を組み合わせて、ソリッドステートドライブ(SSD)を形成することができる。ソリッドステートドライブは、様々な他のタイプの不揮発性及び揮発性メモリのうち、NAND型フラッシュメモリ及び/またはNOR型フラッシュメモリなどの不揮発性メモリを含むことができ、かつ/またはDRAMなどの揮発性メモリを含み得る。場合によっては、SSDにキャッシュを利用することができる。
本開示のいくつかの実施形態による、読み出しキャッシュメモリを含むシステムのブロック図である。 本開示のいくつかの実施形態による、読み出しキャッシュメモリ内のデータフローの例示的な図を示す。 本開示のいくつかの実施形態による、読み出しキャッシュメモリのための例示的な装置を示す。
本開示は、読み出しキャッシュメモリのための方法及び装置を含む。1つの装置は、第1のDRAMアレイ、第1及び第2のNANDアレイ、ならびにDRAMアレイと第1のNANDアレイとの間のデータの移動及び第1のNANDアレイと第2のNANDアレイとの間のデータの移動を管理するよう構成された制御装置を備える、読み出しキャッシュメモリ装置を含む。
本開示の実施形態は、DRAMデータをNAND内にキャッシュし、ホストと読み出しキャッシュのための記憶メモリ装置(例えば、NAND、SSDなど)との間にあるメモリ装置の階層または層を提供するスキームを含み得る。これにより、いくつかの実施形態においては、より多くのメモリが利用可能であるという印象を与えることができる。あるいは、または加えて、本開示の実施形態は、通常のDRAM装置よりも小さな設置面積を維持しながら、通常のDRAM装置よりも高い密度を含むために、メモリのこの階層を提供することができる。例えば本開示の実施形態ではまた、読み出しキャッシュが利用するエネルギーを他の手法と比較して低くすることができる。
本開示の実施形態はまた、ダブルデータレート(DDR)DRAMまたはハイブリッドメモリキューブ(HMC)よりも低い費用構造を同じ容量で提供することができる。さらに、本開示の実施形態は、PCI Express(PCIe)またはシリアル接続スモールコンピュータシステムインターフェース(SAS)上などで、入力/出力(I/O)空間を介してアクセスされる通常のSSDまたはNAND装置よりも短いリードレイテンシを提供することができる。本開示の実施形態は同様に、直接メインメモリ空間またはI/O空間の両方において、通常のNANDフラッシュ型よりも短いライトレイテンシを提供することができる。本開示の実施形態においては、管理されていない「生の」NAND型フラッシュソリューションとの比較時にクラウドストレージのキャッシュの必要性を満たすための内部でのNAND型フラッシュの利用による耐久性(例えば、サイクル)の向上も同様に実現することができる。
本明細書における図は、最初の(1つまたは複数の)桁が図面番号に対応し、残りの桁が図面内の要素または構成要素を特定する付番様式にしたがう。異なる図面間の同様の要素または構成要素が同様の桁の利用によって特定されてもよい。理解されるように、本明細書における様々な実施形態で示される要素は、本開示のいくつかの追加的な実施形態を提供するために、追加し、交換し、かつ/または削除することができる。さらに理解されるように、図において提示される要素の比率及び相対的な縮尺は、本開示の特定の実施形態を示すことを意図しており、限定の意味で理解されるべきではない。さらに本明細書にて利用されるように、「いくつかの(a number of)」ものは、1つまたは複数のそのようなものを指すことができる。
図1は、本開示のいくつかの実施形態による、読み出しキャッシュメモリ(RCM)を含むシステム100のブロック図である。本開示の実施形態において、読み出しアプリケーション(例えば、クラウドストレージアプリケーション)のためにデータをキャッシュすることができる。これは、例えば、コードを実行することなく行うことができる。ある例は、配信される(例えば、ストリーミングされる)メディアコンテンツ(例えば、動画、ビデオゲーム等)の記憶を含み得る。この記憶のサーチ及び検索は通常のキャッシュ装置においては時間を浪費するものであるが、本開示の実施形態では、それをプロセッサのより近くに置き、メモリ(例えば、NAND)からの検索に必要な時間を削減することで(例えばメモリ装置の階層を利用して)この時間を削減することができる。本開示のいくつかの例において、システム100は、RCM装置を用いたクラウドストレージアプリケーションを含み得る。
システム100は、メモリ装置102(例えば、RCM装置)の形式の装置を含む。装置102は、制御装置108(例えば、ASIC)、アレイ104(例えば、DRAMアレイ)、ならびにアレイ106−1及び106−2(例えば、NANDアレイ)を含み得る。本明細書にて利用されるように、RCM装置102、アレイ104、106−1及び106−2、制御装置108、ならびに/またはアレイ106−1及び106−2内の回路はまた、別個に「装置」として見なされてもよい。
いくつかの実施形態において、アレイ106−1及び106−2は、高速NANDアレイを含み得る。アレイ106−1及び106−2は、いくつかの例において、制御回路を含み得る。制御装置108は、いくつかの例において、RCM装置102内のアレイ104、106−1及び106−2の間でコンテンツを高速で移動させるために、ダイレクトメモリアクセス(DMA)を含み得る。本明細書にてさらに考察するように、いくつかの実施形態において、ダイ間の直接接合を使用して、制御装置108、アレイ104、ならびにアレイ106−1及び106−2を一緒に結合させることができる。
装置102は、インターフェース110(例えば、とりわけ、HMCのようなインターフェース、プログラム入力/出力(PIO)インターフェース、外部バスインターフェース(EIB)、または専用FPGAインターフェース)を介してホスト装置118と通信することができる。その結果、システム100は、HMCまたはマルチダイDRAMパッケージ(例えば、デュアルダイパッケージング(DDP)、クワッドイパッケージング(QDP)等)と同様の容量/設置面積を含み得る。これにより、例えば、同じまたは同様の容量/設置面積を維持しながら費用及び電力を削減することができる。このような例はまた、他の手法(例えば、I/Oストレージアクセス)を介してストレージアクセスを向上させることができる。ホスト装置118は例えば、SSD/ハードディスクドライブと通信することもできる集積回路(IC)(例えば、サウスブリッジ/SSDホストIC)と通信することができるフィールドプログラマブルゲートアレイ(FPGA)を含み得る。ICは、例えばローカルエリアネットワーク(LAN)を介して汎用入力/出力インターフェース(例えば、I/O/ローカルI/O)と通信することができ、かつLANまたは他の通信タイプを介して中央処理装置(CPU)及び/またはDRAM制御装置と通信することもできる。いくつかの例において、制御装置はインターフェース110を介してRCM102のアクションをホスト装置118に報告することができる。図1には示されていないが、いくつかの実施形態において、ホスト118は、メモリ装置102を用いなくとも、インターフェース110を介して制御装置108と直接通信することができる。
システム100は、データ(例えば、DRAMデータ)をアレイ106(例えば、NAND装置)にキャッシュするために利用される構成要素を含み得る。例えば、頻繁な消去サイクル(例えば、NAND消去サイクル)を回避するために、特定の閾値(例えば、基準)を満たすデータのみがアレイ106−1及び106−2に転送される。アレイ106−1及び106−2における読み出しキャッシュは、このような例において、例えば所有する内部特徴(例えば、サスペンド、トリムなど)を利用することによって改善することができる。システム100によって、例えばバックエンドパッケージング費用を削減するためのワイヤボンド技術を利用することで、アレイ104、106−1、及び106−2の間を内部で移動するメモリアクセス及びDMAがアレイ104、106−1、及び106−2間で内部を移動する速度を向上させることができる。
例えば、いくつかの実施形態において、また本明細書にてさらに考察されるように、ページプロモーション及び装置「ピンポン(ping−pong)」スキームを利用して、(例えば、RCM装置102内)RCM装置のアレイ104(例えば、DRAMキャッシュ)からRCM装置のアレイ106−1(例えば、NANDキャッシュ)へと移動させて、かつアレイ106−1と106−2との間でデータを移動させることで、NAND消去サイクルを減少させてRCM装置102の寿命を延長することができる。加えて、本明細書にてさらに考察されるように、内部NANDアレイ106−1及び106−2が摩耗し始めた時、動的不良ページマーキングスキームを使用して、不良NANDページ(例えば、ブロック全体ではない)をオンザフライでマーキングすることができる。それに応じて、RCM装置102が突然故障するのを回避しながら、RCM装置102を交換することができる。RCM装置102はむしろ、NANDアレイが耐久限度に近づくにつれて、そのNAND容量を徐々に失う場合がある。例えば、(例えば、予め設定された閾値における)キャッシュサイズの減少のためにシステム100のレイテンシが増大する場合に、RCMを交換してもよい。
図2は、本開示のいくつかの実施形態による、読み出しキャッシュメモリ(例えば、図1に示されるようなRCM装置102)内のデータフローの例示的な略図230を示す。図230は、DRAM装置234、NAND装置232−1、及びNAND装置232−2を含む。図2に示される例はNAND及びDRAMを含むが、メモリ装置の異なるタイプ及び番号が利用されてもよい。例示的なデータフローによって、(例えば、読み出しキャッシュとして利用される際に)とりわけ、例えば、消去サイクルが限定的であること(例えばバイトまたはページレベルで消去することができない)、ページのプログラム上の課題(例えば消去後、ページを1度しかプログラムすることができない)、メモリの利用が潜在的に低いこと、同じ論理ユニット番号(LUN)/平面において読み出し/書き込みの並行処理ができないこと、データ置換のためのレイテンシが潜在的に長いこと、バイトレベルの読み出し、ページレベルの書き込み、及びブロックレベルの消去が連続的であること、ならびに読み出し/書き込みタイミング及び電力が非対称的であるといったNANDの欠点を克服することができる。
いくつかの実施形態では、付随するNAND空間において、DRAM装置234全体(例えば、合計2GBに達する2つの8GbのDRAMダイスの積層)のメモリ空間を分割して、ページサイズパーティション数と一致させることができる(例えば、合計16GBのRCM容量では128GbのNAND、または合計32GBのNANDのRCM容量では256GbのNANDを利用する時には16KBのページサイズ)。本明細書にてさらに考察されるように、(例えば、略図230内の)各RCM装置において、ピンポンスキームを支援するためにNAND装置(例えば、装置232−1及び232−2)の2つの同一のダイを利用することができる。
238において、キャッシュされたデータをDRAM装置234に書き込むことができる。例えば、データを(例えば、ユーザが)要求することができ、このデータをDRAM装置234に書き込むことができる。このような例において、制御装置はDRAM装置234に入るデータを監視し、とりわけデータがアクセスされる頻度、データの安定性、データの大きさ、及びデータが要求される頻度等を含むいくつかの特徴(例えば要因)に基づいてデータをランク付けすることができる。
240において特定の閾値が満たされる場合に、DRAM装置234内のデータを「適格なゾーン」236へと移動させる(例えば、プロモートする)ことができる。いくつかの実施例において、データ移動させることには、データを分類することが含まれてもよい。例えば、データは物理的にゾーン236に移動されるのではなく、クラス(例えば、クラス/ゾーン236)に分類されてもよい。例えば、DRAM装置234内のデータは、アクセスされ、かつ/または閾値の回数分要求される場合に、ゾーン236に移動させる(例えば分類する)ことができる。いくつかの実施例においては、データが安定性閾値を満たす(例えば、後にNANDにプロモートするのに十分安定している)場合に、DRAM装置234内のデータをゾーン236へと移動させる(例えば、分類する)ことができる。例えば、データは(例えば制御装置によって)論理的に体系化される。
いくつかの実施形態においては、データをゾーン236にパッキングすることができる。例えば、データを、NANDページサイズに一致するように、16KBパケットにパッキングすることができる。NANDの効率性向上のために、このようなパケットを提供することができる。244においては、装置234が閾値容量に達する(例えば、DRAM装置234またはゾーン236が満杯に近い)際に、ゾーン236内のデータをNAND装置232−1にプロモートすることができる。これにより、DRAM装置234には、より多くのデータを受信し、かつ/またはより多くのデータをDRAM装置234内からゾーン236にプロモートするためのスペースが生じる。NAND装置232−1に移動させることができるデータ量を最大化するようにDRAM装置234からNAND装置232−1に移動させるデータを体系化(例えばNANDによって支持されるページ全体に体系化する)ことができる。
242においては、DRAM装置234上の空間を解放するために、閾値要件を満たさないデータを排除することができる。排除することには、は例えば、ゾーン236またはNAND装置232−1にプロモートされるための閾値を満たさないデータをドロップすることまたは上書きすることを含み得る。
いくつかの実施形態において、DRAMキャッシュ(例えば、DRAM装置234において)空間が満杯に近づく(例えば予め設定された数またはそれ以下のページのパーティションしか残されていない)場合、特定の時間の頻度割合または頻度の予め設定された閾値を超える適格なページのパーティションの中で最も頻繁に訪問された(例えば、DRAM装置234において最も頻繁に訪問されたデータの上位30パーセント、または所定時間内に少なくとも500回訪問された)ページのパーティションは、一次装置(例えば、一次NAND装置232−1)にプロモートされて(例えば、移動され)、それらのデータページのパーティションの空間を空に(例えば、ダーティ)することで、新規の読み出しキャッシュデータをRCMのDRAM装置234上に記憶する必要が生じた場合に、利用可能となる。
新規データをキャッシュする必要がある場合、(例えば242において)訪問頻度が最も低いデータページのパーティションをDRAM装置234から排除することができる。より適格なデータがDRAM装置234を満たす場合、そのデータをNAND装置232−1に移動させることができ、NAND装置232−1を最終的に満たすことができる。その結果、いくつかの実施形態において、最も頻繁に読まれた/訪問されたデータ及び/または最も安定した(例えば、最も定常的な)データのみがNAND装置232−1に存在する。読まれた/訪問された頻度が低いキャッシされたデータはDRAM装置234に残り、訪問の少ないデータは頻繁にキャッシュされる新規のデータと交換される。これにより、RCM装置のNAND装置232−1上でのデータ置換(例えば、消去)する必要性が低くなる場合がある。
不良ページをNAND装置232−1内で動的にマーキングすることができる。本明細書にて使用される「動的に(dynamically)」は、特定の影響に応じて可変及び/または絶えず変化することを含み得る(例えば、ページが不良であることを制御装置が判断する)。このような場合、制御装置(図2には示されない)はNAND装置232−1に残るものを管理する。この不良ページのマーキングにより、誤ったマーキングを減少させて、RCM装置ならびにその中のNAND及びDRAM装置内の中の不良ページを修復することができる。このような例においては、不良データのブロック全体をマーキングするのではなく、不良ページをマーキングし、それによりNAND装置232−1の効率性を向上させることができる。いくつかの例において、制御装置は不良ページのマーキング及び修復を行うことができる。
例えば、閾値数の消去サイクル(例えば、耐久性スペック)後に、装置(例えば、NAND装置232−1、232−2)が摩耗し始めた時、装置に書き込まれた後では、いくつかのページ上のデータは読み取り検証を行うことができず、そのため、不良データとなる。ブロック全体を永続的に不良としてマーキングする(例えば、不揮発性テーブルに保つ)代わりに、その特定の装置上に不良ページを書き込んだ後、巡回冗長検査(CRC)エラーを有するかまたは読み取り検証が失敗した特定のページのみがマーキングされる。
RAM内のRCM(例えば、制御装置上のメモリ)において、制御装置は不良ページを追跡することができ、NAND装置が空になる際に(例えば、本明細書にてさらに考察される一次及び二次位置の切り替え時に)、空のNAND装置の不良ページのテーブルを消去し、再度再構築することができる。これは隣接するページの妨害により、CRCエラーまたは読み取り検証エラーが生じる場合があるためである。ブロックが消去される際、それらのページを再度優良なものとすることができる。
さらに、NANDセルが完全に失敗する前に、セルが1つの状態にとどまる時間があるが、別の消去サイクル後に自己修復する。したがって、NANDセルを不良としてのマーキングすることは正確な評価ではない場合がある。
248において、閾値要件を満たすページをNAND装置232−1(例えば、一次装置の位置)からNAND装置232−2(例えば、二次装置の位置)へとプロモートすることができる。例えば、NAND装置232−1が閾値容量(例えば、満杯に近い)に達する際に、ページをプロモートすることができる。いくつかの実施例において、制御装置はNAND装置232−1及び232−2内でのデータの利用を監視する(例えば、追跡する)ことができる。246においては、閾値要件を満たさないページをNAND装置232−1からデモートし(例えば、削除し)、「不適格な」ゾーン内のDRAM装置234に送信することができる。これにより例えば、NAND装置へデータをプロモートし過ぎるのを防ぐことができ、これによってNANDの摩耗を防ぐ/減少させることができる。
250においては、NAND装置232−2が閾値容量(例えば、満杯に近い)に達する際に、NAND装置232−1内の残りのページを不適格なゾーン内のDRAM装置234にデモートすることができる。いくつかの例において、NAND装置232−1の残りのページを252において破棄する(例えば、ドロップする、排除する、上書きする等)ことができる。それに応じて、NAND装置232−1内にデータを含んでいたブロックを消去することができる。
いくつかの実施形態において、NAND装置232−1及び232−2(例えば、NANDダイ)を常に、1つの一次装置及び1つの二次装置として利用することができる。例えば、一次NAND装置232−1が満杯になる(例えば、DRAM装置234がフルであることを示す同じ及び/または同様の条件)際に、一次NAND装置232−1において上位の最も読まれた/訪問されたデータページを、(例えば、248において)二次NAND装置232−2へとプロモートし、訪問が最も少ないデータページをDRAM装置234にデモートする(例えば、移動させる、戻す等)。これらの訪問が最も少ないデータページをDRAM装置234のための新規のキャッシュデータとして扱うことができる。いくつかの実施形態において、プロモート、デモートの両方が行われたデータページを、一次NAND装置232−1上でダーティページとしてマーキングすることができる。一次NAND装置232−1上の所与のブロックの全てのページがダーティである場合、ブロックを消去することができる。
二次NAND装置232−2が満杯になる場合、残りのキャッシュされた良好なデータをデモートしてDRAM装置234に戻すことができ、一次NAND装置232−1のブロックの残りを消去することができる。一次NAND装置232−1上のブロックの全てが消去された後、NAND装置232−1及び232−2の位置が入れ替わる。古いが現在は空の一次NAND装置232−1は新規の二次NAND装置になり、古いが現在は満杯の二次NAND装置232−2は新規の一次NAND装置になる。このプロセスを何度も繰り返すことができる。内部装置(例えば、NAND装置)内のデータが最も定常的な/安定的にキャッシュされたデータとして維持され、その結果、内部装置におけるそれらのデータの消去の必要性が軽減されることで、内部装置の耐久性(例えば、寿命)が高まり、他の手法よりも劣化が軽減される。
いくつかの例において、読み出しキャッシュメモリ内のプロモート及びデモートのアクション(例えば、ホスト報告及び応答)を(例えば、図1に示されるような制御装置108)制御装置によって管理して追跡することができる。例えば、ポインタ、テーブル、統計データ、カウンタ等の制御情報を記憶するために制御装置が使用されるように、(例えば制御装置内の)オンチップメモリに加えて、DRAM装置234の一部(例えば、図1に示されるようなDRAMアレイ104の一部)を確保してもよい。この情報により制御装置が、DRAM装置234からNAND装置232−1及び232−2を行き来するデータの移動、及びNAND装置232−1と232−2との間のデータの移動を管理して追跡すること、ならびにこの情報をホスト装置(例えば、図1に示されるようなホスト装置118)に報告し返すことを可能にすることができる。DRAM装置234の残りは、例えばデータのキャッシュのために利用されてもよい。
図3は本開示のいくつかの実施形態による、読み出しキャッシュメモリのための例示的な装置360(例えば、システム)を示す。例示的な装置360は、NANDアレイ366−1及び366−2、DRAMアレイ364−1及び364−2、ならびに制御装置370(例えば、ASICダイ)を含む5つの既知の良好なダイ(KGD)積層を含み得る。しかし装置360は5−KGD積層またはNAND及びDRAMメモリに限定されない。例えば、いくつかの例において、装置360は、3つ、4つ、またはそれ以上のNAND装置を含んでもよい。
NAND及びDRAMの接合パッド全てへのアクセスを得るために、再配分層を利用することができる。この再分配層は、RCM装置のボンディングパッドを再配置することができる。DRAM及びNANDアレイの両方のパッドを再分配してアレイのより短いまたはより長い側の一方のみに並べるため、アレイを互いの上に直接積層され、一番下のアレイ(例えば、DRAMアレイ364−1)がその単列のパッドを片側(例えば、左側)に晒し、一方残りのアレイ領域がその上部でアレイ(例えば、DRAMアレイ364−2)に覆われながら重なり合うように、DRAMアレイ及びNANDアレイをオフセット方式で積層させる。
底部(例えば、第2の底部)アレイ(例えば、DRAMアレイ364−2)の隣はその後、180度回転し、反対側(例えば、右側)のその単列のパッドが晒されながら、アレイ領域の残りはその上部でアレイ(例えば、NANDアレイ366−1)に覆われながら重なり合う。2つのアレイ(例えば、DRAMアレイ364−1及び364−2)の底部は、第3のアレイ(例えば、NANDアレイ366−1)がその単列パッドを、第1の(例えば、最底部)アレイ(例えば、DRAMアレイ364−1)(例えば、左側)と平行に並べるが、ボンディングワイヤ372−1、・・・、372−4のための第1のアレイ(例えば、DRAMアレイ364−1)を阻まず、第4のアレイ(例えば、NANDアレイ366−2)がそのパッドを第2のアレイ(例えば、DRAMアレイ364−2)と平行に並べるが、ボンディングワイヤ372−1、・・・、372−4のための第2のアレイ(例えば、DRAMアレイ364−2)のパッドを阻まないように配置される。制御装置370は積層の直上部に、ファンアウト型(フレックス)ウエハレベルパッケージング(WLP)パッド368によって拡張されたパッドピッチを有する第5のアレイ(例えば、ダイ)として置くことができる。制御装置370は、そのx方向側(例えば、左右の)パッドと、オフセット積層されたDRAM及びその下のNANDアレイ上の各パッドとを2つの地点間において直接ダイ間接合することができる。制御装置370のy方向側のパッドを、外部信号(例えば、ボールグリッドアレイ(BGA)パッケージボール)アクセス(図3には示されない)のためパッケージのリードフレームに接合することができる。
例示的な実施形態において、図3で示すように、基板362に千鳥状に(例えば、オフセットされて、歪曲されて)接合される第1のダイ上にDRAMアレイ364−1を形成することができる。第1のダイに千鳥状に接合される第2のダイ上にDRAMアレイ364−2を形成することができる。第2のダイに千鳥状に接合される第3のダイ上にNANDアレイ366−1を形成することができ、第3のダイに千鳥状に接合される第4のダイ上にNANDアレイ366−2を形成することができる。第1の、第2の、第3の、及び第4のダイを、例えば、直接ダイ間接合を介して制御装置に接合することができる。いくつかの実施例において、制御装置370は、第4のダイに接合することができ、ファンアウト型フレックスパッド368を含むことができ、かつダイ間ボンディングワイヤ372−1、・・・、372−4を介してダイ364−1、364−2、366−1、及び366−2と通信することができる。
本開示は、読み出しキャッシュメモリのための方法及び装置を含む。1つの装置は、第1のDRAMアレイ、第1及び第2のNANDアレイ、ならびにDRAMアレイと第1のNANDアレイとの間のデータの移動及び第1のNANDアレイと第2のNANDアレイとの間のデータの移動を管理するよう構成された制御装置を備える、読み出しキャッシュメモリ装置を含む。
ある要素が別の要素の「上に(on)」「に接続する(connected to)」または「と接続する(coupled with)」と示される場合、それは他の要素の直接上にあり、他の要素と接続され、結合されることができるか、または介在する要素が存在してもよいことが理解される。対照的に、要素が別の要素の「直接上に(directly on)」「に直接接続する(directly connected to)」または「と直接接続する(directly coupled with)」と示される場合、介在する要素または層は存在しない。本明細書にて利用されるように、用語「及び/または(and/or)」は、関連するいくつかの記載事項の任意及び全ての組み合わせを含む。
本明細書にて使用される用語「及び/または(and/or)」は、関連するいくつかの記載事項の任意及び全ての組み合わせを含む。本明細書にて利用されるよ「または」は、別段に明記されない限り、論理的に包括的な「or」を意味する。すなわち、「AまたはB(A or B)」は、(Aのみ(only A))、(Bのみ(only B))、または(AとBの両方(both A and B))を含み得る。換言すると、「AまたはB(A or B)」は「A及び/またはB(A and/or B)」または「いくつかのA及びB(a number of A and B)」を意味することができる。
本明細書においては、用語「第1の(first)」、「第2の(second)」、「第3の(third)」等が様々な要素を説明するために利用されてもよいが、これらの要素は、これらの語によって制限されるべきではないことが理解されたい。これらの語はある要素を別の要素を区別するためだけに利用される。したがて、本開示の教示から逸脱することなく、第1の要素は第2の要素と称され得る。
具体的な実施形態が本明細書にて示され、説明されているが、同じ結果を実現するために計算された配置を示された具体的な実施形態で置き換えることができることを、当業者は理解する。本開示は、本開示のいくつかの実施形態の適合または変形例を対象とすることを意図している。上述の説明が例示として行われたものであり、制限的なものではないことを理解されたい。上述の実施形態と本明細書において具体的に説明されない他の実施形態との組み合わせが、上述の説明の検証により当業者には明らかである。本開示のいくつかの実施形態の範囲は、上述の構造及び方法が利用される他の応用を含む。したがって、本開示のいくつかの実施形態の範囲は、添付された特許請求の範囲及びそのような請求項の権利範囲内の均等物の全範囲を参照することで決定されるべきである。
上述の発明を実施するための形態では、本開示を簡素化する目的で、いくつかの特徴が単一の実施形態に分類される。開示のこの方法は、開示される本開示の実施形態は各請求項に明記されるよりも多くの特徴を利用しなければならないという意図を反映するものと解釈されない。むしろ、以下の請求項が反映するように、発明の主題は開示される単一の実施形態の全ての特徴よりも少ないものにある。したがって、以下の特許請求の範囲は、各請求項が本発明の分離された実施形態としてそれ自身存在する状態で発明を実施するための形態に組み込まれる。

Claims (31)

  1. ダイナミックランダムアクセスメモリ(DRAM)アレイと、
    第1のNANDアレイ及び第2のNANDアレイと、
    前記DRAMアレイと前記第1のNANDアレイとの間のデータの移動、及び前記第1のNANDアレイと前記第2のNANDアレイとの間のデータの移動を管理するように構成された制御装置と、
    を備える、読み出しキャッシュメモリ装置、
    を備える、装置。
  2. 前記制御装置が前記データの特徴に基づいて、データを前記DRAMアレイから前記第1のNANDアレイへとキャッシュするようさらに構成される、請求項1に記載の装置。
  3. 前記データの特徴が、前記データがアクセスされる回数、前記データが要求される回数、及び前記データの安定性のうちの少なくとも1つを含む、請求項2に記載の装置。
  4. 前記制御装置が前記データの特徴に基づいて、データを前記第1のNANDアレイから前記第2のNANDアレイへとキャッシュするようさらに構成される、請求項1〜3のいずれか1項に記載の装置。
  5. 前記制御装置を前記DRAMアレイに結合させるダイレクトメモリアクセス(DMA)と、前記制御装置を前記第1のNANDアレイに結合させるDMAと、前記制御装置を前記第2のNANDアレイに結合させるDMAと、をさらに含む、請求項1〜3のいずれか1項に記載の装置。
  6. 前記制御装置が、ホスト装置を追跡し、インターフェースを介して前記読み出しキャッシュメモリ装置のアクションを前記ホスト装置に報告するようにさらに構成される、請求項1〜3のいずれか1項に記載の装置。
  7. 前記データの特徴に基づいて、ダイナミックランダムアクセスメモリ(DRAM)アレイからの第1のNANDアレイへデータのキャッシュすることと、
    前記第1のNANDがキャッシュされたデータ容量の閾値を満たすことに応じて、前記第1のNANDアレイから第2のNANDアレイへ前記データをキャッシュすることと、
    を含む、メモリ操作方法。
  8. 前記データの特長が、前記データがアクセスされる回数、前記データが要求される回数、及び前記データの安定性のうちの少なくとも1つを含む、請求項7に記載の方法。
  9. 前記第1のNANDアレイから前記第2のNANDアレイへデータをキャッシュすることに応じて、前記第1のNANDアレイを消去することをさらに含む、請求項7〜8のいずれか1項に記載の方法。
  10. ダイナミックランダムアクセスメモリ(DRAM)アレイにおいてキャッシュされたデータの第1のセットを受信することと、
    前記キャッシュされたデータの第1のセットの一部のデータの特徴に基づいて、前記キャッシュされたデータの第1のセットの一部を前記DRAMアレイのクラスへプロモートすることと、
    キャッシュされたデータの第2のセットのデータ特徴に基づいて、前記キャッシュされたデータの第2のセットを前記クラスから第1のNANDアレイへプロモートすることと、
    前記第1のNANDアレイが閾値容量に達することに応じて、第3のキャッシュされたデータの第3のセットを群の第2のNANDアレイへのプロモートすることと、を含む、メモリ操作方法。
  11. キャッシュされたデータの第4のセットが要求閾値、アクセス閾値、及び安定性閾値のうちの少なくとも1つを含む閾値要件を満たさないことに応じて、前記キャッシュされたデータの第4のセットを前記クラスから排除することをさらに含む、請求項10に記載の方法。
  12. キャッシュされたデータの第5のセットが要求閾値及びアクセス閾値のうちの少なくとも1つを含む閾値要件を満たさないことに応じて、前記キャッシュされたデータの第5のセットを前記第1のNANDアレイから前記DRAMにデモートすることをさらに含む、請求項10に記載の方法。
  13. キャッシュされたデータの第6のセットが要求閾値及びアクセス閾値のうちの少なくとも1つを含む閾値要件を満たさないことに応じて、キャッシュされたデータの第6のセットを前記第1のNANDアレイから排除することをさらに含む、請求項10に記載の方法。
  14. 前記交換に応じて、前記第1のNANDアレイの修復することをさらに含む、請求項10〜13のいずれか1項に記載の方法。
  15. 前記第1のNAND内の不良ページを動的にマーキングすることをさらに含む、請求項10〜13のいずれか1項に記載の方法。
  16. 前記クラスにおける前記キャッシュされたデータの第1のセットの一部を、前記第1及び前記第2のNANDアレイ内のページサイズに一致するようなサイズのパケットにパッキングすることをさらに含む、請求項10〜13のいずれか1項に記載の方法。
  17. DRAM装置からキャッシュされたデータを一次NAND装置で受信することと、
    前記受信されたキャッシュされたデータ内の不良ページを動的にマーキングすることと、
    前記マーキングされた不良ページを含まない前記キャッシュされたデータの一部が閾値要件を満たすことに応じて、かつ前記NAND装置がキャッシュされたデータ容量の閾値に達することに応じて、前記キャッシュされたデータの一部を二次NAND装置へプロモートすることと、
    前記一次NANDアレイを消去することと、
    前記一次NAND装置が新規の二次NAND装置になり、かつ前記二次NAND装置が新規の一次NAND装置になるように、前記一次及び前記二次NAND装置を交換することと、
    を含む、メモリ操作方法。
  18. 前記一次NAND装置において、前記キャッシュされたデータが前記DRAM装置からダイレクトメモリアクセス(DMA)介して受信される、請求項17に記載の方法。
  19. 前記閾値要件が、前記キャッシュされたデータの一部が所定時間内に閾値の回数アクセスされることを含む、請求項17〜18のいずれか1項に記載の方法。
  20. 前記閾値要件が、前記キャッシュされたデータの一部が閾値安定性を満たすことを含む、請求項17〜18のいずれか1項に記載の方法。
  21. 前記方法が繰り返して実行される、請求項17〜18のいずれか1項に記載の方法。
  22. ダイナミックランダムアクセスメモリ(DRAM)アレイと、
    前記第1のDRAMアレイ上に形成される第1のNANDアレイと、
    前記第1のNANDアレイ上に形成される第2のNANDアレイと、
    特定の閾値を満たすデータを前記DRAMアレイから前記第1のNANDアレイへとキャッシュする、かつ
    前記第1のNANDアレイの容量に基づいて、データを前記第1のNANDアレイから前記第2のNANDアレイへとキャッシュするように構成される制御装置と、
    を備える、装置。
  23. 前記制御装置がASIC装置を含む、請求項22に記載の装置。
  24. 前記特定の閾値が、データがアクセスされる回数の閾値を含む、請求項22〜23のいずれか1項に記載の装置。
  25. 前記特定の閾値が、データが満たす安定性閾値を含む、請求項22〜23のいずれか1項に記載の装置。
  26. 前記装置が、ホスト装置とソリッドステートドライブ(SSD)または第3のNAND装置との間に位置する、請求項22〜23のいずれか1項に記載の装置。
  27. 前記DRAMアレイから前記第1のNANDアレイへとキャッシュされる前記データ及び前記第1のNANDアレイから前記第2のNANDアレイへとキャッシュされる前記データと関連する情報を記憶するよう構成される前記制御装置を含む、請求項22〜23のいずれか1項に記載の装置。
  28. 第1のオフセット方式で基板に接合される第1のダイ上に形成される第1のダイナミックランダムアクセスメモリ(DRAM)アレイと、
    第2のオフセット方式で前記第1のダイに接合される第2のダイ上に形成される第2のDRAMアレイと、
    第3のオフセット方式で前記第2のダイに接合される第3のダイ上に形成される第1のNANDアレイと、
    第4のオフセット方式で前記第3のダイに接合される第4のダイ上に形成される第2のNANDアレイと、
    制御装置と、
    を備える、システム。
  29. 前記制御装置に隣接して形成されるファンアウト型ウエハレベルパッケージング(WLP)パッドを含む、請求項28に記載のシステム。
  30. 前記第1の、第2の、第3の、及び第4のダイが、ダイ間を直接接合することにより前記制御装置に接合される、請求項28〜29のいずれか1項に記載のシステム。
  31. ダイ間を直接接合することにより、かつ前記データの特徴に基づいて、データが前記第1のNANDアレイと前記第2のNANDアレイとの間を移動する、請求項28〜29のいずれか1項に記載のシステム。
JP2016568027A 2014-05-20 2015-05-18 読み出しキャッシュメモリ Active JP6391712B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/282,467 2014-05-20
US14/282,467 US9710173B2 (en) 2014-05-20 2014-05-20 Read cache memory with DRAM class promotion
PCT/US2015/031370 WO2015179290A1 (en) 2014-05-20 2015-05-18 Read cache memory

Publications (2)

Publication Number Publication Date
JP2017521753A true JP2017521753A (ja) 2017-08-03
JP6391712B2 JP6391712B2 (ja) 2018-09-19

Family

ID=54554586

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016568027A Active JP6391712B2 (ja) 2014-05-20 2015-05-18 読み出しキャッシュメモリ

Country Status (7)

Country Link
US (3) US9710173B2 (ja)
EP (1) EP3146524B1 (ja)
JP (1) JP6391712B2 (ja)
KR (1) KR101891428B1 (ja)
CN (1) CN106463161B (ja)
TW (1) TWI556105B (ja)
WO (1) WO2015179290A1 (ja)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9983796B2 (en) * 2015-09-17 2018-05-29 Veritas Technologies Llc Systems and methods for provisioning frequently used image segments from caches
CN105512054B (zh) 2015-12-09 2018-11-09 上海兆芯集成电路有限公司 主机接口控制器以及储存装置控制方法
US10621091B2 (en) * 2018-05-04 2020-04-14 Micron Technology, Inc. Apparatuses and methods to perform continuous read operations
WO2020056610A1 (zh) * 2018-09-18 2020-03-26 华为技术有限公司 一种存储装置及电子设备
KR102546229B1 (ko) 2018-10-05 2023-06-22 삼성전자주식회사 리드 리클레임 동작 시에 버퍼 메모리를 이용하는 스토리지 장치
US10831379B2 (en) * 2018-10-30 2020-11-10 Western Digital Technologies, Inc. Method for enhancing SSD endurance by utilizing host DRAM
US10691593B1 (en) * 2018-12-19 2020-06-23 Micron Technology, Inc. Predictive data storage hierarchical memory systems and methods
US11403067B2 (en) * 2019-03-20 2022-08-02 Micron Technology, Inc. Memory array data structure for posit operations
WO2021007698A1 (en) * 2019-07-12 2021-01-21 Yangtze Memory Technologies Co., Ltd. Memory device providing bad column repair and method of operating same
KR20210079637A (ko) 2019-12-20 2021-06-30 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
KR20220005285A (ko) 2020-07-06 2022-01-13 에스케이하이닉스 주식회사 데이터 저장 장치 및 그 동작 방법
US11556257B2 (en) * 2020-08-14 2023-01-17 Micron Technology, Inc. Selectable wear life indicator based on data retention
CN114489492B (zh) * 2021-12-31 2024-01-30 华能烟台八角热电有限公司 一种数据存储方法及安全装置、数据存储系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009217755A (ja) * 2008-03-12 2009-09-24 Toshiba Corp メモリシステム
JP2012203443A (ja) * 2011-03-23 2012-10-22 Toshiba Corp メモリシステムおよびメモリシステムの制御方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200622634A (en) 2004-12-31 2006-07-01 Inventec Appliances Corp System for processing data in NAND flash memory and method thereof
US7430639B1 (en) 2005-08-26 2008-09-30 Network Appliance, Inc. Optimization of cascaded virtual cache memory
JP2008090876A (ja) * 2006-09-29 2008-04-17 Toshiba Corp 不揮発性半導体記憶装置
US8751755B2 (en) 2007-12-27 2014-06-10 Sandisk Enterprise Ip Llc Mass storage controller volatile memory containing metadata related to flash memory storage
CN101632068B (zh) 2007-12-28 2015-01-14 株式会社东芝 半导体存储装置
US8959280B2 (en) * 2008-06-18 2015-02-17 Super Talent Technology, Corp. Super-endurance solid-state drive with endurance translation layer (ETL) and diversion of temp files for reduced flash wear
US8296496B2 (en) 2009-09-17 2012-10-23 Hewlett-Packard Development Company, L.P. Main memory with non-volatile memory and DRAM
US20110072192A1 (en) * 2009-09-24 2011-03-24 Agiga Tech Inc. Solid state memory wear concentration
US8688913B2 (en) * 2011-11-01 2014-04-01 International Business Machines Corporation Management of partial data segments in dual cache systems
US8612676B2 (en) * 2010-12-22 2013-12-17 Intel Corporation Two-level system main memory
US8595415B2 (en) 2011-02-02 2013-11-26 Micron Technology, Inc. At least semi-autonomous modules in a memory system and methods
US8812899B1 (en) * 2011-09-29 2014-08-19 Emc Corporation Managing read caching
US20130119542A1 (en) 2011-11-14 2013-05-16 Mosaid Technologies Incorporated Package having stacked memory dies with serially connected buffer dies
JP2014533895A (ja) 2011-11-29 2014-12-15 コンバーサント・インテレクチュアル・プロパティ・マネジメント・インコーポレイテッドConversant Intellectual Property Management Inc. スタック半導体素子のためのインターポーザー
KR20130092110A (ko) * 2012-02-10 2013-08-20 삼성전자주식회사 임베디드 솔리드 스테이트 디스크 및 솔리드 스테이트 디스크
GB2517435A (en) * 2013-08-19 2015-02-25 Ibm Fast data back-up and restore between volatile and flash memory
US20150221614A1 (en) * 2014-02-06 2015-08-06 Sehat Sutardja High-bandwidth dram using interposer and stacking

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009217755A (ja) * 2008-03-12 2009-09-24 Toshiba Corp メモリシステム
JP2012203443A (ja) * 2011-03-23 2012-10-22 Toshiba Corp メモリシステムおよびメモリシステムの制御方法

Also Published As

Publication number Publication date
KR101891428B1 (ko) 2018-09-28
US10768828B2 (en) 2020-09-08
EP3146524B1 (en) 2021-02-24
US20200363962A1 (en) 2020-11-19
KR20170005472A (ko) 2017-01-13
US20150339064A1 (en) 2015-11-26
US20170277449A1 (en) 2017-09-28
TWI556105B (zh) 2016-11-01
WO2015179290A1 (en) 2015-11-26
US9710173B2 (en) 2017-07-18
CN106463161B (zh) 2019-03-29
EP3146524A1 (en) 2017-03-29
CN106463161A (zh) 2017-02-22
JP6391712B2 (ja) 2018-09-19
TW201608372A (zh) 2016-03-01
EP3146524A4 (en) 2017-11-29

Similar Documents

Publication Publication Date Title
JP6391712B2 (ja) 読み出しキャッシュメモリ
US10579279B2 (en) Data storage device and data processing system having the same
US11069425B2 (en) Multi-level memory repurposing technology to process a request to modify a configuration of a persistent storage media
US10380022B2 (en) Hybrid memory module and system and method of operating the same
US11243886B2 (en) Hybrid memory module and system and method of operating the same
JP5847940B2 (ja) 半導体装置
US9268681B2 (en) Heterogeneous data paths for systems having tiered memories
US11599458B2 (en) Stacked memory device and operating method thereof
CN110447075B (zh) 多内核管芯上存储器微控制器
US20160291869A1 (en) Data storage device and data processing system including the same
US11074004B2 (en) Tenant-based telemetry for persistent storage media
JP6073495B2 (ja) 半導体装置
KR20230142795A (ko) Zns 디바이스들에서의 상이한 기입 우선순위화
US20220253380A1 (en) Memory module having volatile and non-volatile memory subsystems and method of operation
TW202314471A (zh) 儲存裝置及其操作方法
US11656994B2 (en) Non-volatile memory with optimized read

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170912

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171207

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180605

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180709

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180821

R150 Certificate of patent or registration of utility model

Ref document number: 6391712

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250