TWI711926B - 記憶體系統及其操作方法 - Google Patents
記憶體系統及其操作方法 Download PDFInfo
- Publication number
- TWI711926B TWI711926B TW107129734A TW107129734A TWI711926B TW I711926 B TWI711926 B TW I711926B TW 107129734 A TW107129734 A TW 107129734A TW 107129734 A TW107129734 A TW 107129734A TW I711926 B TWI711926 B TW I711926B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- data
- mode
- slc
- block
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0893—Caches characterised by their organisation or structure
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0253—Garbage collection, i.e. reclamation of unreferenced memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/06—Addressing a physical block of locations, e.g. base addressing, module addressing, memory dedication
- G06F12/0646—Configuration or reconfiguration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0891—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using clearing, invalidating or resetting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0634—Configuration or reconfiguration of storage systems by changing the state or mode of one or more devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0688—Non-volatile semiconductor memory arrays
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/20—Employing a main memory using a specific memory technology
- G06F2212/202—Non-volatile memory
- G06F2212/2022—Flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/70—Details relating to dynamic memory management
- G06F2212/702—Conservative garbage collection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7205—Cleaning, compaction, garbage collection, erase control
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2211/00—Indexing scheme relating to digital stores characterized by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C2211/56—Indexing scheme relating to G11C11/56 and sub-groups for features not covered by these groups
- G11C2211/564—Miscellaneous aspects
- G11C2211/5641—Multilevel memory having cells with different number of storage levels
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)
- Read Only Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Computer Hardware Design (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一種記憶體系統包括具有複數個記憶體胞之一記憶體陣列;及耦接至該記憶體陣列之一控制器,該控制器經組態以:選擇儲存有效資料之一廢料收集(GC)源區塊,計算用於表示該GC源區塊內之該有效資料之一量的用於該GC源區塊之一有效資料量測,及基於該有效資料量測指明用於一可用記憶體區塊之一儲存模式,其中該儲存模式係用於控制經該等記憶體胞中之每一者儲存的位元之一數目以用於後續或即將到來之資料寫入。
Description
該等揭示之實施例係關於記憶體裝置,且詳言之,係關於具有用於快取記憶體功能之動態管理的一機構之記憶體裝置。
記憶體系統可使用記憶體裝置儲存及存取資訊。該等記憶體裝置可包括揮發性記憶裝置、非揮發性記憶裝置或一組合裝置。該等非揮發性記憶裝置可包括使用「反及(NAND)」技術或邏輯閘、「反或(NOR)」技術或邏輯閘或其一組合之快閃記憶體。
諸如快閃記憶體之記憶體裝置利用電荷連同對應的臨限值位準或處理電壓位準來儲存及存取資料。在儲存資料過程中,記憶體裝置可具有提供較快操作速度之一些儲存部分及提供較高儲存容量及/或密度之其他儲存部分。雖然已進行嘗試將記憶體裝置最佳化以最佳地採用此等不同能力,但各種挑戰(例如,眾多不同使用條件、由用途引起的快閃記憶體裝置之效能特性之改變等)已使充分利用不同特性困難重重。
因此,存在對於一種具有動態快取管理之記憶體裝置之需求。鑒於不斷增長之商業競爭壓力,連同區分市場中之產品的增長之消費者期望及需求,日益需要發現對此等問題之答案。另外,降低成本、改良效率及效能及符合競爭壓力之需求增添了發現此等答案之甚至更大壓力。
在一實施例中,一種記憶體系統包含:一記憶體陣列,其包括複數個記憶體胞;及一控制器,其耦接至該記憶體陣列,該控制器經組態以:選擇儲存有效資料之一廢料收集(GC)源區塊,計算用於表示該GC源區塊內之該有效資料之一量的用於該GC源區塊之一有效資料量測,及基於該有效資料量測指明用於一可用記憶體區塊之一儲存模式,其中該儲存模式係用於控制儲存於該可用記憶體區塊之記憶體胞中的位元之一數目以用於後續或即將到來之資料寫入。
在另一實施例中,使用一種用於操作包括一控制器及包括記憶體胞之記憶體陣列的一記憶體系統之方法。該方法包含:選擇儲存有效資料之一GC源區塊;計算用於表示該GC源區塊內之該有效資料之一量的用於該GC源區塊之一有效資料量測;及基於該有效資料量測指明用於一可用記憶體區塊之一儲存模式,其中該儲存模式係用於控制經該等記憶體胞中之每一者儲存的位元之一數目以用於後續或即將到來之資料寫入。
在另一實施例中,使用一種用於操作包括一控制器及包括記憶體胞之記憶體陣列的一記憶體系統之方法。該方法包含:在穩態下在該等記憶體胞中寫入資料;選擇用於表示該等記憶體胞之一分群的一GC源區塊,其中該GC源區塊為經組態以將有效資料複製至另一組記憶體胞及在使該GC源區塊有用於後續或即將到來之資料寫入過程中抹除儲存於GC源區塊中之資訊的一GC功能之一目標;計算用於表示儲存於該GC源區塊內之該有效資料之一量的用於該GC源區塊之一有效資料量測;及當該有效資料量測小於一決策臨限值時,指明用於一可用記憶體區塊之一SLC模式,其中該SLC模式係用於操作XLC單元,該等XLC單元能夠持有
多個位元以每胞元儲存一個位元作為用於該等後續或即將到來之資料寫入的快取記憶體。
100:記憶體系統
102:記憶體裝置
104:記憶體陣列
106:控制器
108:主機裝置
110:資料
120:記憶體單元
122:記憶體胞
124:記憶體頁面
126:記憶體區塊
130:動態SLC快取
131:處理器
132:XLC單元
133:內嵌型記憶體
134:儲存模式
136:SLC模式
138:XLC模式
146:工作負荷類型
150:連續工作負荷
201:時間
202:GC功能
203:時間
204:有效資料
205:時間
206:寫入可用狀態
208:期滿資料
210:GC源區塊
300:操作記憶體系統之方法
332:有效資料量測
334:決策臨限值
336:低邏輯飽和狀態
338:GC游標
340:主機游標
342:可用記憶體區塊
352:資料合意性量測
354:效能模型
400:記憶體裝置
480:系統
482:電源
484:驅動器
486:處理器
488:其他子系統或組件
圖1為根據本發明技術之一實施例的具有動態快取管理之一記憶體系統之方塊圖。
圖2A、圖2B及圖2C說明根據本發明技術之一實施例的一廢料收集功能。
圖3說明根據本發明技術之實施例的操作圖1中之記憶體系統之一實例方法。
圖4為根據本發明技術之實施例的包括一記憶體裝置之一系統之示意圖。
本文中揭示之技術係關於記憶體裝置、具有記憶體裝置之系統及用於動態管理用於該等記憶體裝置之快取記憶體之相關方法。該等記憶體系統可使用在廢料收集之源區塊中發現的有效資料判定或辨識正由記憶體系統處理的工作之類型或型樣及因此管理快取功能。
根據正由記憶體裝置處理的工作之一類型或一特性,一記憶體裝置可包括用於持有或表示每胞元一個位元(例如,在兩個電荷位準中之一者中)之單位準胞元(SLC),及/或用於持有或表示每胞元多個位元(例如,在多於兩個電荷位準中之一者中)之附加位準胞元(XLC)。一SLC可經程式化至兩個不同資料狀態中可由二進位單位1或0表示之一目標化者。一XLC可經程式化至多於兩個資料狀態中之一目標化者。
舉例而言,一XLC可包括一快閃記憶胞,其可經程式化至
四個狀態(例如,由二進位00、01、10、11表示)中之任一者以儲存資料之兩個位元。此XLC被稱為多位準胞元(MLC)。再其他XLC可包括可經程式化至八個資料狀態(例如,000、001、010、011、100、101、110、111)中之任一者以在單一胞元中儲存資料之三個位元的快閃記憶胞。此等胞元可被稱作三位準胞元(TLC)。對於XLC,甚至更高數目個資料狀態係可能的。舉例而言,四位準胞元(QLC)可經程式化至16個資料狀態(例如,0000、0001、0010、0011、0100、0101、0110、0111、1000、1001、1010、1011、1100、1101、1110、1111)中之任一者以用於儲存資料之四個位元。
能夠儲存較高數目個資料狀態之記憶體胞可提供較高密度記憶體或大容量記憶體,而不增加記憶體胞之數目,此係由於每一胞元可表示多於一個位元。雖然當作為XLC操作時,更多資訊可儲存於給定數目個胞元中,但歸因於XLC需要之較慢程式化時間,寫入效能可降低。舉例而言,在使用額外或詳細處理程序根據容差窗寫入資料過程中,寫入效能可降級,藉由增加在一給定範圍內的可能資料狀態之數目,容差窗減小。因而,SLC可用作用於NAND快閃記憶體裝置之快取記憶體。SLC快取可包括由SLC保留區塊定義之靜態SLC快取,或藉由在SLC模式中使用XLC區塊定義之動態SLC快取。
SLC快取可在空閒時間期間產生或回收,諸如,在當處理主機資料時發生之破壞或暫停期間,使得可在SLC模式中寫入主機資料。然而,對於某些工作條件,空閒時間可不太頻繁地出現,此可導致記憶體裝置未能釋放足夠量之區塊用於寫入,且因此未能趕上主機寫入大小。
習知地,記憶體裝置自XLC區塊池撿取新主機區塊(亦
即,指明用於即將到來或後續寫入之記憶體區塊),且因此在XLC模式中寫入後續主機資料,以增大區塊大小及減緩區塊消耗速率。因此,與SLC模式相比,在使用XLC模式過程中,寫入效能將降低。在穩態下(亦即,具有不太頻繁之空閒時間之工作條件,諸如,當在偵測到表示在儲存資料過程中之暫停的空閒時間事件前填充預定數目個記憶體區塊或頁面時),在SLC模式中操作XLC記憶體區塊可減小記憶體區塊之有效大小,從而減小儲存容量。舉例而言,對於能夠表示兩個位元之區塊,在SLC模式中操作將使容量減小一半。亦舉例而言,在SLC模式中操作TLC記憶體區塊將使容量減小至原始三分之一,且QLC區塊將減小至四分之一,等。對於某些類型之工作負荷,歸因於容量之減小(諸如,對應於以上實例中剩餘未使用之一半、三分之二或四分之三)失去的潛在位址可迫使至廢料收集(亦即,抹除陳舊或無用資料且回收佔據之記憶體區塊用於在儲存新資料過程中再使用之過程)。
取而代之,在本發明技術之若干實施例中,一記憶體裝置可追蹤記憶體區塊中經受廢料收集之有效資料以管理記憶體區塊之操作模式。該記憶體裝置可使用有效資料之量作為與正由該記憶體裝置執行的工作相關聯之寫入放大(WA)之指示,其中WA為與實體上在記憶體裝置中寫入的資訊之一實際對應量相比,意欲在記憶體裝置102中寫入的資料之一大小之表示(例如,歸因於與用於使跨胞元的寫入之數目相等、用於回收記憶體區塊等之操作相關聯的再寫入)。若該有效資料小於一臨限值,則記憶體裝置可將工作特性化為低WA,且在穩態下在SLC模式中打開主機區塊,藉此改良記憶體裝置之效能。
另外,如本文中所使用之術語「動態」描述在記憶體裝置
之操作、使用或部署期間發生的操作、功能、動作或實施。動態發生之操作、功能、動作或實施可在設計、製造及初始測試、設置或組態(例如,在一使用者環境中)後發生。
圖1為根據本發明技術之一實施例的具有動態快取管理之一記憶體系統100之方塊圖。記憶體系統100包括具有一記憶體陣列104(例如,NAND快閃記憶體)之一記憶體裝置102及一控制器106。該記憶體裝置102可將記憶體陣列104可操作地耦接至一主機裝置108(例如,一上游中央處理器(CPU))。
記憶體陣列104可包括經組態以儲存資料及提供對資料之存取的電路系統。記憶體陣列104可提供為電腦或其他電子裝置中之半導體、積體電路及/或外部抽取式裝置。該記憶體陣列104包括複數個記憶體區域或記憶體單元120。記憶體單元120可為個別記憶體晶粒、單一記憶體晶粒中之記憶體平面、與矽穿孔(TSV)豎直連接之一堆疊記憶體晶粒或類似者。在一個實施例中,記憶體單元120中之每一者可由一半導體晶粒形成,且與其他記憶體單元晶粒一起配置於一單一裝置封裝(未圖示)中。在其他實施例中,記憶體單元120中之一或多者可共位於一單一晶粒上及/或跨多個裝置封裝分佈。記憶體裝置102及/或個別記憶體單元120亦可包括其他電路組件(未圖示),諸如,多工器、解碼器、緩衝器、讀取/寫入驅動器、位址暫存器、資料出/資料入暫存器等,用於存取及/或程式化(例如,寫入)資料及其他功能性,諸如,用於處理資訊及/或與控制器106通信。
記憶體單元120中之每一者包括一陣列記憶體胞122,其各自在一電荷儲存結構中儲存資料。舉例而言,該等記憶體胞122可包括經
組態以永久或半永久地儲存資料的浮動閘極、電荷捕捉、相變、鐵電、磁阻及/或其他合適之儲存元件。記憶體胞122可為一個電晶體記憶體胞,其可經程式化至一目標狀態以表示資訊。舉例而言,電荷可置放於記憶體胞122之電荷儲存結構(例如,電荷捕捉或浮動閘極)上或自該電荷儲存結構移除,以將該胞元程式化至一特定資料狀態。
記憶體胞122之電荷儲存結構上的儲存之電荷可指示該胞元之一臨限電壓(Vt)。該臨限電壓可對應於可允許對應的記憶體胞122之不同資料狀態。舉例而言,SLC可經程式化至兩個不同資料狀態中之一目標化者,其可由二進位單位1或0表示。類似地,該閾值電壓可對應於用於MLC之四個資料狀態、用於TLC之八個資料狀態、用於QLC之16個資料狀態等。
記憶體胞122可按列(例如,每一者對應於一字線)及行(例如,每一者對應於一位元線)排列。每一字線可包括一或多個記憶體頁面124,其取決於彼字線的記憶體胞122經組態以儲存的資料狀態之數目。
舉例而言,一單一字線(亦即,包括一單一記憶體頁面124)之記憶體胞122可各自儲存兩個資料狀態中之一者(例如,經組態以各儲存一個位元之SLC記憶體胞)。替代地,一單一字線(亦即,包括兩個記憶體頁面124)之記憶體胞122可各自儲存四個資料狀態中之一者(例如,經組態以各儲存兩個位元之MLC記憶體胞)且包括兩個記憶體頁面124。此外,在一「奇-偶位元線架構」中(例如,在將單一字線之奇數號行中之所有記憶體胞122分群為第一頁面,且將同一字線之偶數號行中之所有記憶體胞122分群為第二頁面的情況下),在字線內,可將頁面124交錯使得經組態以儲存兩個資料狀態中之一者的字線之記憶體胞122(例如,SLC記憶體
胞)可包括兩個頁面。當在組織具有各經組態以儲存較大數目個資料狀態之記憶體胞122(例如,經組態為MLC、TLC、QLC等之記憶體胞)的字線過程中利用奇-偶位元線架構時,每字線的頁面之數目可甚至更高(例如,4、6、8等)。
各行可包括耦接至一共同源極之一串串聯耦接之記憶體胞122。每一串中之記憶體胞122可串聯連接於一源極選擇電晶體(例如,場效應電晶體)與一汲極選擇電晶體(例如,場效應電晶體)之間。源極選擇電晶體可通常耦接至一源極選擇線,且汲極選擇電晶體可通常耦接至一汲極選擇線。
記憶體裝置102可使用記憶體胞122之不同分群來執行資料操作。舉例而言,記憶體胞122之記憶體頁面124可經分群至記憶體區塊126內。在操作中,可關於記憶體裝置102之各種記憶體區域寫入或以其他方式程式化(例如,抹除)資料,諸如,藉由寫入至頁面124之群組及/或記憶體區塊126。在基於NAND之記憶體中,一寫入操作常包括用具體資料值(例如,具有邏輯0或邏輯1之一值的一串資料位元)程式化選定記憶體頁面124中之記憶體胞122。抹除操作類似於寫入操作,惟抹除操作將全部記憶體區塊126或多個記憶體區塊126重新程式化至同一資料狀態(例如,邏輯0)除外。
在其他實施例中,記憶體胞122可配置於與在說明之實施例中展示之群組及/或階層不同類型的群組及/或階層中。另外,雖然用於說明目的在說明之實施例中展示具有某一數目個記憶體胞、列、行、區塊及記憶體單元,但在其他實施例中,記憶體胞、列、行、區塊及記憶體單元之數目可變化,且可在規模上比在說明之實例中所展示大或小。
舉例而言,在一些實施例中,記憶體裝置100可包括僅一個記憶體單元120。替代地,記憶體裝置100可包括兩個、三個、四個、八個、十個或更多個(例如,16、32、64或更多個)記憶體單元120。雖然記憶體單元120在圖1中展示為各包括兩個記憶體區塊126,但在其他實施例中,每一記憶體單元120可包括一個、三個、四個、八個或更多個(例如,16、32、64、100、128、256或更多個記憶體區塊)。在一些實施例中,每一記憶體區塊126可包括(例如)215個記憶體頁面,且一區塊內之每一記憶體頁面可包括(例如)212個記憶體胞122(例如,「4k」頁面)。
控制器106可為微控制器、特殊用途邏輯電路(例如,現場可編程門陣列(FPGA)、特殊應用積體電路(ASIC)等)或其他合適處理器。控制器106可包括經組態以執行儲存於記憶體中之指令的一處理器131。在說明之實例中,控制器106之記憶體包括一內嵌型記憶體133,其經組態以執行用於控制記憶體系統100之操作的各種處理程序、操作、邏輯流及常式,操作包括管理記憶體裝置102及處置記憶體裝置102與主機裝置108之間的通信。在一些實施例中,內嵌型記憶體133可包括儲存(例如)記憶體指標、提取之資料等的記憶體暫存器。內嵌型記憶體133亦可包括用於儲存微碼之唯讀記憶體(ROM)。雖然已將圖1中所說明之例示性記憶體裝置102說明為包括控制器106,但在本發明技術之另一實施例中,記憶體裝置可不包含一控制器,且可取而代之依賴於外部控制(例如,由一外部主機提供,或由與記憶體裝置分開之一處理器或控制器提供)。
記憶體系統100可實施動態SLC快取130,用於藉由記憶體陣列104對資料110操作(例如,讀取、寫入、抹除等)。對於動態SLC快取130,記憶體系統100可在於SLC模式中組態以改良存取或讀取時間、寫入
時間或其組合之XLC單元132上臨時儲存資料(例如,最有效資料)。XLC單元132為能夠儲存資料之多於一個位元的記憶體胞。舉例而言,XLC單元132可包括MLC、TLC、QLC或能夠每胞元持有多於一個位元之任何其他記憶體胞。
在圖1中,使用一頁面映射來說明XLC單元132。頁面映射可表示針對用於記憶體區塊126中之每一者的記憶體頁面124之記憶體胞122、位址、類型或其組合之分群。該頁面映射可識別邏輯頁面類型(諸如,下部、上部或附加頁面),及亦有與該等頁面中之每一者相關聯的字線或字線群組。頁面映射可進一步包括對應於每一胞元之位元持有容量的每胞元位元數(說明為「bpc」)(例如,SLC對應於bpc值一,且XLC對應於大於一之bpc值)。
記憶體系統100可判定用於控制XLC單元132之儲存容量及處理時間的一儲存模式134。該儲存模式134可由指示對應的XLC單元132之儲存容量之一信號或參數表示。儲存模式134可指示XLC單元132將用以儲存比其對應之完全容量數目少之位元或對應於其完全容量的數目個位元。
舉例而言,記憶體系統100可將儲存模式134指明為SLC模式136或XLC模式138。SLC模式136可包括用以指示對應的XLC單元132將用以每胞元儲存一個位元之信號或參數。換言之,記憶體系統100可使用SLC模式136使XLC單元132如同其為SLC單元般操作。相比之下,記憶體系統100可使用XLC模式138使XLC單元132按其完全容量操作(例如,對於MLC單元,每胞元儲存兩個位元,對於TLC單元,每胞元儲存三個位元,對於QLC單元,每胞元儲存四個位元,等)。
出於說明之目的,XLC模式138在以下描述為指示對應的記憶體胞122將用以每胞元儲存對應於其完全容量的數目個位元。然而,應理解,記憶體系統100可利用不同控制信號或參數子集來指明每胞元使用多個位元但按小於對應記憶體胞122之完全容量來使用之儲存模式(例如,在MLC模式中使用TLC胞元等)。
使用SLC模式136,記憶體系統100可改良寫入效能,同時減小XLC單元132之儲存密度。替代地,使用XLC模式138可降低寫入效能,同時增大XLC單元之儲存密度。當在XLC模式138中操作記憶體區塊126時,邏輯區塊位址(LBA)之完全範圍可容納於記憶體陣列104上。相比之下,在SLC模式136中利用MLC、TLC或QLC區塊可分別將彼等區塊之可存取LBA範圍按2、3或4之因數減小。
雖然完全LBA範圍可在XLC模式中可用,但出於各種原因,按完全儲存容量(例如,每胞元最大數目個支援位元)寫入可比每胞元寫入一個位元慢。舉例而言,在SLC模式136中操作XLC單元132可允許用於讀取臨限值之較大裕度,及針對用以寫入目標資料之遞增步階脈衝程式化(ISPP)的較少反覆。為了根據ISPP寫入資料,記憶體裝置102可經由遞增程式化在記憶體胞之該儲存結構上儲存電荷。為了將記憶體胞程式化至一所要的目標狀態,可多次施加一系列遞增電荷以增大儲存於胞元之電荷儲存結構上的電荷。在每一程式化步驟後,可驗證儲存於電荷儲存結構上之電荷以判定其是否達到所要的目標狀態。藉由在SLC模式中操作,記憶體系統100可針對每一增量使用較大量電荷,使得需要較少反覆來達到所要的位準。
對於某些工作負荷類型146(亦即,對由記憶體裝置102處
置之操作的分類),寫入效能之改良可導致總體增益,而不經歷來自儲存密度之減小的許多負面影響。在動態SLC快取130期間,可在空閒時間期間產生或回收SLC快取(例如,在SLC模式136中操作之XLC單元132)。然而,一些種類之工作可無空閒時間,或包括相對不頻繁之空閒時間,諸如,連續工作負荷150(亦即,穩態),其導致所有可用SLC快取之花費或使用。記憶體系統100可基於估計或辨識與正由記憶體裝置102執行之工作相關聯的WA量而在SLC模式136中打開XLC單元132(亦即,替代在XLC模式138中將其打開之習知方法)。
圖2A、圖2B及圖2C說明根據本發明技術之一實施例的用於廢料收集(GC)功能202之一進展。GC功能202找到舊有或陳舊之資料用於在回收圖1之記憶體區塊126過程中抹除,用於在儲存新資料過程中再使用。經由GC功能202,來自一或多個頁面之有效資料204可經收集且寫入至一新的空頁面,且舊頁面可失效、經抹除且回收,用於再使用及新傳入資料之後續儲存。有效資料204為儲存於圖1之記憶體胞122中意欲用於稍後存取的圖1之資料110之一正確或最新實例。在更新先前資料時,快閃記憶體裝置將新資料(亦即,有效資料204)寫入至一不同位置,其中舊資料變得陳舊或不必要,而非直接用新資料覆寫舊資料。GC功能202可移除此陳舊或不必要之資料,同時保留有效資料204在新位置。由於快閃記憶體裝置按圖1之記憶體頁面124之增量寫入且按記憶體區塊126之增量抹除,廢料收集功能202可移動資料之頁面且釋放記憶體區塊供抹除操作。
圖2A、圖2B及圖2C概念性說明在GC功能202期間之時間201、203及205的與儲存於圖1之記憶體陣列104中(諸如,在標註為「區塊X」及「區塊Y」之記憶體區塊126內的記憶體頁面124中)之資料110相
關聯的一連串狀態。圖2A說明在時間201儲存於「區塊X」中的資料110之狀態之初始狀態或開始點。圖2B說明在稍後時間203的一改變之狀態或對儲存於「區塊X」中的資料110之狀態之一更新。圖2C說明在時間205將有效資料204自「區塊X」移動至「區塊Y」之GC功能202。
舉例而言,在圖2A中,「區塊X」可儲存或包括標註為「A」之有效資料204。記憶體頁面124之其他可用實例可各自與表示對應頁面未佔據且可用於寫入之一寫入可用狀態206相關聯。
在圖2B中,記憶體系統100可進一步儲存標註為「B」及「C」之資料。記憶體系統100可進一步儲存表示資料「A」之經更新版本的資料「A2」,此導致「A」變得舊且陳舊。在時間203之有效資料204可對應於標註為「B」、「C」及「A2」之資料。先前儲存且仍然存在之資料「A」可表示期滿資料208。期滿資料208可包括先前儲存但歸因於一或多個後續操作、改變或更新而不再有用、過期、陳舊或無效之資料110。
在圖2C中,記憶體系統100可實施GC功能202以自一GC源區塊210(亦即,目標用於廢料功能202或廢料功能202之主體的記憶體區塊,如由圖2A、圖2B及圖2C中之「區塊X」表示)釋放記憶體胞122。記憶體系統100可識別GC源區塊210中用於GC功能202之有效資料204及期滿資料208。如圖2C中所說明,記憶體系統100可將有效資料204(無期滿資料208)複製至標註為「區塊Y」之一新位置。記憶體系統100可隨後抹除儲存於GC源區塊210(亦即,「區塊X」)中之資料110(亦即,複製之有效資料204及期滿資料208)。結果,GC源區塊210之記憶體頁面124可對應於表示用於儲存新傳入資料之可用性的寫入可用狀態206。
圖3為說明根據本發明技術之實施例的操作圖1之記憶體系
統100之一實例方法300之一流程圖。方法300可包括圖1之動態SLC快取130之實施,包括根據用於圖2之GC功能202的圖2之GC源區塊210中的圖2之有效資料204之量對快取之管理。
在框302,記憶體系統100可關於圖1之記憶體裝置102對圖1之資料110執行操作,諸如,藉由寫入資料110、讀取資料110、抹除資料110等。記憶體系統100可在各種不同條件(例如,表示穩態的圖1之連續工作負荷150)下執行各種不同類型之工作。在執行工作時,記憶體系統100可指明圖1之儲存模式134以根據工作之類型、條件等變化圖1之XLC單元132之利用。舉例而言,記憶體系統100可指明能夠持有多個位元之XLC單元132在圖1之SLC模式136中操作,且每個圖1之記憶體胞122儲存一個位元。
在框304,記憶體系統100可實施圖2之GC功能202。記憶體系統100可連同在框302中表示之資料操作一起實施GC功能202,諸如,藉由並行操作。無論何時圖1之一或多個記憶體區塊126變滿,諸如,當對應區塊126內的圖1之所有記憶體頁面124已經寫入且其中無一頁面124具有圖2之寫入可用狀態206時,記憶體系統100可觸發GC功能202。
記憶體系統100可藉由選擇將目標用於GC功能202之GC源區塊210來實施GC功能202。記憶體系統100可選擇GC源區塊210作為記憶體區塊126中已變滿之一者。
在選擇了GC源區塊210後,記憶體系統100可識別儲存於其中之有效資料204,將有效資料204複製至一新頁面,且抹除GC源區塊210。記憶體系統100可有效地移動有效資料204,且抹除GC源區塊210以
刪除圖2之期滿資料208,且因此釋放GC源區塊210供後續寫入。藉由對具有最少量之資料的區塊執行GC功能202,記憶體系統100可恢復其中之記憶體頁面124供後續寫入。
在框306,記憶體系統100可測量儲存於GC源區塊210中的有效資料204之量。記憶體系統100可將有效資料204用作管理SLC快取過程中之回饋機制。
無論何時觸發GC功能202,記憶體系統100皆可計算表示在抹除前存儲於GC源區塊210內的有效資料204之量之一有效資料量測332。記憶體系統100可藉由對儲存有效資料204的記憶體頁面124之數目計數同時忽略具有寫入可用狀態206或期滿資料208之任何頁面或藉由對與具有期滿資料208而無空的或寫入可用頁面之頁面相比之有效頁面計數來計算。該記憶體系統100可進一步將有效資料量測332作為有效資料204之量與GC源區塊210之大小、空的或寫入可用頁面之量、具有期滿資料208的頁面之量或其一組合之間的一比較(例如,諸如使用分數或百分比)來計算。
在框308,記憶體系統100可比較有效資料量測332與表示用以指明一可用記憶體區塊342(亦即,經設定或指明用於後續或即將到來之資料寫入的記憶體胞122)之儲存模式134的一極限之一決策臨限值334。決策臨限值334可表示對應於圖1之SLC模式136及XLC模式138的有效資料204之一臨限量。因此,記憶體系統100可基於有效資料量測332將儲存模式134指明為SLC模式136或XLC模式138。
決策臨限值334可進一步對應於WA且特性化如針對記憶體系統100判定之一低WA狀態。舉例而言,決策臨限值334可為在GC源區
塊210之0%與小於25%之間的一值。該決策臨限值334可針對記憶體系統100預判定或根據一預定方法、函數、運算、電路、方程式等即時地判定。
在框310,當有效資料量測332不小於決策臨限值334時,記憶體系統100可將用於可用記憶體區塊342之儲存模式134指明為XLC模式138。對於執行具有高WA之工作負荷,如由有效資料量測332超過決策臨限值334特性化,記憶體系統100可指明XLC模式138以增大儲存容量且減緩區塊消耗速率。因此,記憶體系統100可使用有效資料量測332及決策臨限值334以適宜於高WA狀態,且因此利用XLC模式138。
在框312,當有效資料量測332小於決策臨限值334時,記憶體系統100可將用於可用記憶體區塊342之儲存模式134指明為SLC模式136。對於執行具有低WA之工作負荷,如由有效資料量測332小於決策臨限值334特性化,該記憶體系統100可指明SLC模式136以增加寫入效能且有效地提供叢發速度。
藉由有效資料量測332小於決策臨限值334之確定,記憶體系統100可判定記憶體裝置102正在表示相對於記憶體裝置之公告大小小(亦即,如由決策臨限值334定義)量之有效資料的一低邏輯飽和狀態336(例如,對應於低廢料收集成果狀態)中操作。低邏輯飽和狀態336可為低WA狀態之特性。其亦可指示,記憶體裝置正在立即經覆寫之超熱主機資料下操作,從而創造具有較小量之有效資料的區塊。因此,記憶體系統100可指明可用記憶體區塊342在SLC模式136中針對即將到來或後續資料寫入操作。
舉例而言,記憶體系統100可指明SLC模式136用於對應於
一GC游標338(亦即,用於經受GC功能202之記憶體區塊的一位址,諸如,用於GC源區塊210之一位址)之一區塊,如在框322中表示,或用於對應於一主機游標340(亦即,用於目標用於儲存傳入資料或目標用於下一個寫入操作之記憶體區塊的一位址)之一區塊,如在框324中表示。對於框322,一旦GC源區塊210在GC功能202後變得針對資料寫入釋放,則記憶體系統100可指明其在SLC模式136中操作。GC源區塊210可一旦其變得釋放則變為可用記憶體區塊342。對於框324,記憶體系統100可指明可用記憶體區塊342(亦即,當前指明用於下一個發生之記憶體寫入的記憶體區塊)在SLC模式136中操作,而與GC源區塊210無關。
在框314,記憶體系統100可開放記憶體區塊供寫入操作,包括允許寫入至可用記憶體區塊342。記憶體系統100可根據在框310或312中指明之儲存模式134開放記憶體區塊。因此,記憶體系統100可繼續對資料操作,如用自框314進入至框302之一反饋迴路表示。
記憶體系統100可指明可用記憶體區塊342在SLC模式136中操作,甚至在穩態或連續工作負荷150下。無論何時GC功能202經觸發且獨立於空閒時間,指明皆可發生。記憶體系統100可使用有效資料量測332及決策臨限值334智慧地調適至穩態工作流,且當WA低時提供SLC快取,以提供寫入效能之增加,而不遭受區塊消耗速率之增大。歸因於低WA及少量有效資料204,GC功能202可高速恢復區塊,且充分抵消區塊消耗速率。因而,記憶體系統100可指明在穩態下之SLC模式136,而與在SLC模式136中先前寫入的資料之量無關。
另外,記憶體系統100可指明在穩態下之SLC模式136,而與與一效能模型354(亦即,特性化工作負荷之型樣或類型之基準微量)相
關聯之一資料合意性量測352(亦即,與正執行之工作相關聯的一微量之風行度或該微量有多「熱」)無關。由於記憶體系統100可基於判定低邏輯飽和狀態336來指明SLC模式136,因此記憶體系統100可甚至針對在穩態下之超熱基準微量來指明SLC模式136。
根據在穩態下的GC源區塊210之有效資料量測332指明儲存模式134提供甚至在無空閒時間之情況下增大寫入效能之益處。藉由指明在穩態下之SLC模式136,記憶體裝置102可針對超熱資料及針對在較低邏輯飽和度下操作之使用者型樣無空閒時間地以叢發速度執行。
另外,當根據GC源區塊210之有效資料量測332,GC WA低(亦即,如由決策臨限值334定義)時,在SLC模式136中打開主機及GC游標區塊提供調節由XLC單元132經歷的程式化-抹除循環之數目之益處。因而,可根據GC源區塊210之有效資料量測332經由SLC模式136之使用緊緊地控制快閃記憶體之P/E循環。
SLC快取130及/或方法300可(例如)由用於記憶體裝置102或主機裝置108之一處理電路(諸如,控制器106、記憶體陣列104、用於主機裝置108之處理器、其中之一部分或其一組合)執行或實施。SLC快取130及/或方法300可包括或對應於控制器106、記憶體陣列104、主機裝置108或其一組合之組態。SLC快取130可進一步包括存儲於控制器106、記憶體陣列104、主機裝置108或其一組合內或使用控制器106、記憶體陣列104、主機裝置108或其一組合存取之一或多個方法、操作、步驟或指令、資訊或其一組合。
出於說明之目的,已描述具有如上論述為實例之序列及操作的流程圖。然而,應理解,方法300可不同。舉例而言,在框304至314
中表示之操作可與在框302中表示之操作組合。亦舉例而言,可組合在框304與306中表示之操作。亦舉例而言,可與在框302及314中表示之操作並行地執行在框304至312中表示之操作。
圖4為根據本發明技術之實施例的包括一記憶體裝置之一系統之示意圖。以上參看圖1至圖3描述的前述記憶體裝置中之任一者可併入至無數更大及/或更複雜系統中之任一者內,該等系統之一代表性實例為在圖4中示意性展示之系統480。系統480可包括一記憶體裝置400、一電源482、一驅動器484、一處理器486及/或其他子系統或組件488。記憶體裝置400可包括大體類似於以上參看圖1至圖3描述的記憶體裝置之特徵之特徵,且可因此包括用於執行以上論述之操作的各種特徵。所得系統480可執行廣泛多種功能中之任一者,諸如,記憶體儲存、資料處理及/或其他合適功能。因此,代表性系統480可包括(但不限於)手持式裝置(例如,行動電話、平板電腦、數位讀取器及數位音訊播放器)、電腦、載具、器具及其他產品。系統480之組件可容納於單一單元中或遍及多個互連單元(例如,經由通信網路)而分佈。系統480之組件亦可包括遠端裝置及廣泛多種電腦可讀媒體中之任一者。
自前文,應瞭解,儘管出於說明之目的已在本文描述技術之特定實施例,但可在不偏離本發明之情況下進行各種修改。此外,在其他實施例中,亦可組合或消除在特定實施例之上下文中描述的新技術之某些態樣。此外,儘管與新技術之某些實施例相關聯的優點已在此等實施例之上下文中描述,但其他實施例亦可展現此等優勢,且並非所有實施例必定需要展現屬於技術之範疇的此等優勢。因此,本發明及相關聯之技術可涵蓋未在本文中明確展示或描述之其他實施例。
100:記憶體系統
102:記憶體裝置
104:記憶體陣列
106:控制器
108:主機裝置
110:資料
120:記憶體單元
122:記憶體胞
124:記憶體頁面
126:記憶體區塊
130:動態SLC快取
131:處理器
132:XLC單元
133:內嵌型記憶體
134:儲存模式
136:SLC模式
138:XLC模式
146:工作負荷類型
150:連續工作負荷
Claims (24)
- 一種記憶體系統,其包含:一記憶體陣列,其包括複數個記憶體胞;及耦接至該記憶體陣列之一控制器,該控制器經組態以:選擇儲存有效資料之一廢料收集(GC)源區塊,計算用於表示該GC源區塊內之該有效資料之一量的用於該GC源區塊之一有效資料量測,及基於該有效資料量測指明用於一可用記憶體區塊之一儲存模式,其中:該可用記憶體區塊之記憶體胞經組態以儲存達(up to)N個位元且處於一抹除狀態,且該儲存模式係用於組態該等記憶體胞作為儲存M個位元之快取記憶體用於後續或即將到來之資料寫入,其中M<N。
- 如請求項1之記憶體系統,其中該控制器經進一步組態以基於比較該有效資料量測與一決策臨限值來指明用於該儲存模式之單位準胞元(SLC)模式。
- 如請求項2之記憶體系統,其中該控制器經組態以基於表示儲存於該GC源區塊中的該有效資料之一臨限量之該決策臨限值指明該SLC模式,其中該臨限量可組態,且大於零且小於該GC源區塊之一總容量之25%。
- 如請求項3之記憶體系統,其中該臨限量為該GC源區塊之一總容量之10%。
- 如請求項1之記憶體系統,其中該控制器經進一步組態以指明由用於該等後續或即將到來之資料寫入之一主機游標所指出的該可用記憶體區塊之該儲存模式。
- 如請求項1之記憶體系統,其中該控制器經進一步組態以指明由用於該等後續或即將到來之資料寫入之一GC游標所指出的該可用記憶體區塊之該儲存模式。
- 如請求項1之記憶體系統,其中該控制器經進一步組態以:判定用於該記憶體陣列之一低邏輯飽和狀態;及基於該低邏輯飽和狀態指明用於該儲存模式之一SLC模式。
- 如請求項1之記憶體系統,其中該控制器經組態以將該儲存模式指明為在穩態下之一SLC模式。
- 如請求項8之記憶體系統,其中:該記憶體陣列包含經指明作為靜態快取之多個靜態SLC區塊,其中該等靜態SLC區塊每胞元儲存一個位元;且該控制器經進一步組態以指明用於一用於能夠持有該資料之多個位元的附加位準胞元(XLC)單元之動態SLC快取功能之該儲存模式,以在該 SLC模式中操作及每胞元儲存一個位元作為除了該靜態快取以外之快取記憶體。
- 如請求項1之記憶體系統,其中該控制器經組態以當該有效資料量測不小於一決策臨限值時,指明用於該儲存模式之一XLC模式。
- 如請求項1之記憶體系統,其中該控制器經組態以選擇包括在SLC模式中操作的該等記憶體胞之一分群之該GC源區塊。
- 如請求項1之記憶體系統,其中該等記憶體胞為非揮發性。
- 如請求項1之記憶體系統,其中該控制器經組態以將該儲存模式指明為用於該等後續或即將到來之資料寫入的SLC模式,而與先前在該SLC模式中寫入的該資料之一量無關。
- 如請求項1之記憶體系統,其中該控制器經組態以將該儲存模式指明為用於該等後續或即將到來之資料寫入的SLC模式,而與同用於特性化該先前儲存之資料的一性能模型相關聯之一資料合意性量測無關。
- 一種操作包括一控制器及包括記憶體胞之記憶體陣列的一記憶體系統之方法,該方法包含:選擇儲存有效資料之一GC源區塊;計算用於表示該GC源區塊內之該有效資料之一量的用於該GC源區塊 之一有效資料量測;及基於該有效資料量測指明用於一可用記憶體區塊之一儲存模式,其中:該可用記憶體區塊之記憶體胞經組態以儲存達N個位元且處於一抹除狀態,且該儲存模式係用於組態該等記憶體胞作為快取記憶體,該快取記憶體儲存用於後續或即將到來之資料寫入之M個位元,其中M<N。
- 如請求項15之方法,其中指明該儲存模式包括指明用於由用於該等後續或即將到來之資料寫入之一主機游標所指出的該可用記憶體區塊之該儲存模式。
- 如請求項15之方法,其中指明該儲存模式包括指明用於由用於該等後續或即將到來之資料寫入之一GC游標所指出的該可用記憶體區塊之該儲存模式。
- 如請求項15之方法,其中指明該儲存模式包括當該有效資料量測不小於一決策臨限值時,指明用於該儲存模式之一XLC模式。
- 如請求項15之方法,其中指明該儲存模式包括當該有效資料量測小於一決策臨限值時,指明用於該儲存模式之一SLC模式。
- 如請求項19之方法,其中指明該儲存模式包括與先前在該SLC模式 中寫入的該資料之一量無關、與同用於特性化該先前儲存之資料的一性能模型相關聯之一資料合意性量測無關或其一組合,指明該SLC模式。
- 如請求項19之方法,其中指明該SLC模式包括基於表示儲存於該GC源區塊中的該有效資料之一臨限量之該決策臨限值指明該SLC模式,其中該臨限量可組態,且大於零且小於該GC源區塊之一總容量之25%。
- 如請求項21之方法,其中指明該SLC模式包括將該臨限量組態至該GC源區塊之一總容量之10%。
- 一種操作包括一控制器及包括記憶體胞之記憶體陣列的一記憶體系統之方法,該方法包含:在穩態下在該等記憶體胞中寫入資料;選擇用於表示該等記憶體胞之一分群之一GC源區塊;其中該GC源區塊為一GC功能之一目標,該GC功能經組態以將有效資料複製至另一組記憶體胞及抹除儲存於該GC源區塊中之資訊,使該GC源區塊用於(availing)後續或即將到來之資料寫入;計算用於表示儲存於該GC源區塊內之該有效資料之一量的用於該GC源區塊之一有效資料量測;及當該有效資料量測小於一決策臨限值時,指明用於一可用記憶體區塊之一SLC模式,其中:該可用記憶體區塊之記憶體胞係XLC單元且處於一抹除狀態,且該SLC模式係用於將能夠持有多個位元之該等XLC單元,操作作 為每胞元儲存一個位元之快取記憶體而用於該等後續或即將到來之資料寫入。
- 如請求項23之方法,其中指明該SLC模式包括指明用於由一主機游標或一GC游標所指出之該可用記憶體區塊的該SLC模式。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/693,178 | 2017-08-31 | ||
US15/693,178 US10509722B2 (en) | 2017-08-31 | 2017-08-31 | Memory device with dynamic cache management |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201921252A TW201921252A (zh) | 2019-06-01 |
TWI711926B true TWI711926B (zh) | 2020-12-01 |
Family
ID=65435247
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107129734A TWI711926B (zh) | 2017-08-31 | 2018-08-27 | 記憶體系統及其操作方法 |
Country Status (6)
Country | Link |
---|---|
US (5) | US10509722B2 (zh) |
EP (1) | EP3676714A4 (zh) |
KR (1) | KR102419541B1 (zh) |
CN (1) | CN111095226B (zh) |
TW (1) | TWI711926B (zh) |
WO (1) | WO2019046020A1 (zh) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10509722B2 (en) | 2017-08-31 | 2019-12-17 | Micron Technology, Inc. | Memory device with dynamic cache management |
KR102593541B1 (ko) * | 2018-11-29 | 2023-10-25 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작방법 |
KR20200116354A (ko) * | 2019-04-01 | 2020-10-12 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
US10877882B1 (en) * | 2019-06-19 | 2020-12-29 | Micron Technology, Inc. | Garbage collection adapted to user device access |
US11074177B2 (en) * | 2019-06-19 | 2021-07-27 | Micron Technology, Inc. | Garbage collection adapted to host write activity |
KR102654797B1 (ko) | 2019-07-12 | 2024-04-05 | 양쯔 메모리 테크놀로지스 씨오., 엘티디. | 불량 컬럼 리페어를 제공하는 메모리 디바이스 및 이를 동작시키는 방법 |
DE102019215292A1 (de) * | 2019-10-04 | 2021-04-08 | Robert Bosch Gmbh | Datenstruktur, Speichermittel und Vorrichtung |
TWI729674B (zh) * | 2020-01-13 | 2021-06-01 | 慧榮科技股份有限公司 | 資料儲存裝置及其垃圾蒐集方法 |
TWI791981B (zh) * | 2020-04-30 | 2023-02-11 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 |
US12061814B2 (en) | 2021-01-25 | 2024-08-13 | Pure Storage, Inc. | Using data similarity to select segments for garbage collection |
CN112783656B (zh) * | 2021-01-29 | 2024-04-30 | 杭州网易智企科技有限公司 | 内存管理方法、介质、装置和计算设备 |
TWI814590B (zh) * | 2022-09-26 | 2023-09-01 | 慧榮科技股份有限公司 | 資料處理方法及對應之資料儲存裝置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120240012A1 (en) * | 2010-07-07 | 2012-09-20 | Stec, Inc. | Apparatus and method for multi-mode operation of a flash memory device |
US20170109050A1 (en) * | 2010-09-24 | 2017-04-20 | Kabushiki Kaisha Toshiba | Memory system having a plurality of writing modes |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8843691B2 (en) | 2008-06-25 | 2014-09-23 | Stec, Inc. | Prioritized erasure of data blocks in a flash storage device |
US9245653B2 (en) * | 2010-03-15 | 2016-01-26 | Intelligent Intellectual Property Holdings 2 Llc | Reduced level cell mode for non-volatile memory |
US8886990B2 (en) * | 2011-01-27 | 2014-11-11 | Apple Inc. | Block management schemes in hybrid SLC/MLC memory |
US8595415B2 (en) * | 2011-02-02 | 2013-11-26 | Micron Technology, Inc. | At least semi-autonomous modules in a memory system and methods |
US9251055B2 (en) * | 2012-02-23 | 2016-02-02 | Kabushiki Kaisha Toshiba | Memory system and control method of memory system |
US9430376B2 (en) | 2012-12-26 | 2016-08-30 | Western Digital Technologies, Inc. | Priority-based garbage collection for data storage systems |
US10509722B2 (en) | 2017-08-31 | 2019-12-17 | Micron Technology, Inc. | Memory device with dynamic cache management |
JP7053399B2 (ja) * | 2018-07-31 | 2022-04-12 | キオクシア株式会社 | 情報処理システム |
US11397674B1 (en) * | 2019-04-03 | 2022-07-26 | Pure Storage, Inc. | Optimizing garbage collection across heterogeneous flash devices |
US20230402113A1 (en) * | 2022-06-13 | 2023-12-14 | Sandisk Technologies Llc | Data latch programming algorithm for multi-bit-per-cell memory devices |
-
2017
- 2017-08-31 US US15/693,178 patent/US10509722B2/en active Active
-
2018
- 2018-08-16 WO PCT/US2018/046816 patent/WO2019046020A1/en unknown
- 2018-08-16 EP EP18850118.3A patent/EP3676714A4/en active Pending
- 2018-08-16 KR KR1020207009337A patent/KR102419541B1/ko active IP Right Grant
- 2018-08-16 CN CN201880056006.7A patent/CN111095226B/zh active Active
- 2018-08-27 TW TW107129734A patent/TWI711926B/zh active
-
2019
- 2019-11-27 US US16/697,724 patent/US11093385B2/en active Active
-
2021
- 2021-07-13 US US17/374,906 patent/US11593261B2/en active Active
-
2023
- 2023-02-21 US US18/172,205 patent/US11853205B2/en active Active
- 2023-12-22 US US18/395,363 patent/US20240126690A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120240012A1 (en) * | 2010-07-07 | 2012-09-20 | Stec, Inc. | Apparatus and method for multi-mode operation of a flash memory device |
US20170109050A1 (en) * | 2010-09-24 | 2017-04-20 | Kabushiki Kaisha Toshiba | Memory system having a plurality of writing modes |
Also Published As
Publication number | Publication date |
---|---|
US11853205B2 (en) | 2023-12-26 |
EP3676714A1 (en) | 2020-07-08 |
TW201921252A (zh) | 2019-06-01 |
US11593261B2 (en) | 2023-02-28 |
US20210342261A1 (en) | 2021-11-04 |
US20190065366A1 (en) | 2019-02-28 |
US20240126690A1 (en) | 2024-04-18 |
US20200097402A1 (en) | 2020-03-26 |
US20230195615A1 (en) | 2023-06-22 |
CN111095226A (zh) | 2020-05-01 |
US10509722B2 (en) | 2019-12-17 |
KR20200037882A (ko) | 2020-04-09 |
EP3676714A4 (en) | 2021-06-09 |
CN111095226B (zh) | 2023-11-03 |
US11093385B2 (en) | 2021-08-17 |
KR102419541B1 (ko) | 2022-07-11 |
WO2019046020A1 (en) | 2019-03-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI711926B (zh) | 記憶體系統及其操作方法 | |
US11544188B2 (en) | Memory device with dynamic storage mode control | |
JP5792841B2 (ja) | メモリ内のデータを管理するための方法および装置 | |
CN110955384B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
US8737148B2 (en) | Selective retirement of blocks | |
TWI463315B (zh) | 資料儲存裝置及用於資料儲存之方法 | |
US10168940B2 (en) | Data storage using SLC and TLC memory banks and data maintenance method thereof | |
US20140229654A1 (en) | Garbage Collection with Demotion of Valid Data to a Lower Memory Tier | |
JP3812933B2 (ja) | ファイルシステムおよびその制御方法 | |
JP2008529130A (ja) | フラッシュメモリシステムにおけるハウスキーピング操作のスケジューリング | |
US9465539B2 (en) | Operation management in a memory device | |
CN112130749B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
TW201905711A (zh) | 資料儲存裝置及非揮發式記憶體操作方法 | |
Feng et al. | Mapping granularity adaptive ftl based on flash page re-programming | |
TW202013191A (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
CN114415949B (zh) | 扫描回收block方法、系统、存储介质及设备 | |
JP5683558B2 (ja) | フラッシュメモリ制御装置、フラッシュメモリ制御方法及びフラッシュメモリ制御用プログラム |