TW201911050A - 具有可原地重寫之記憶體的資料儲存裝置 - Google Patents
具有可原地重寫之記憶體的資料儲存裝置 Download PDFInfo
- Publication number
- TW201911050A TW201911050A TW107118380A TW107118380A TW201911050A TW 201911050 A TW201911050 A TW 201911050A TW 107118380 A TW107118380 A TW 107118380A TW 107118380 A TW107118380 A TW 107118380A TW 201911050 A TW201911050 A TW 201911050A
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- group
- layers
- memory
- data storage
- Prior art date
Links
- 230000015654 memory Effects 0.000 title claims abstract description 212
- 238000013500 data storage Methods 0.000 title claims abstract description 92
- 239000000872 buffer Substances 0.000 claims description 38
- 238000013507 mapping Methods 0.000 claims description 24
- 238000000034 method Methods 0.000 claims description 16
- 230000008859 change Effects 0.000 claims description 12
- 238000011065 in-situ storage Methods 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 4
- 230000003213 activating effect Effects 0.000 claims 2
- 230000009471 action Effects 0.000 description 16
- 238000010586 diagram Methods 0.000 description 10
- 230000000694 effects Effects 0.000 description 10
- 239000000463 material Substances 0.000 description 6
- 238000003860 storage Methods 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 5
- 230000005415 magnetization Effects 0.000 description 5
- 238000013523 data management Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000006641 stabilisation Effects 0.000 description 3
- 238000011105 stabilization Methods 0.000 description 3
- 230000003044 adaptive effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 2
- 239000005387 chalcogenide glass Substances 0.000 description 2
- 239000003989 dielectric material Substances 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 125000006850 spacer group Chemical group 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000012212 insulator Substances 0.000 description 1
- 238000001459 lithography Methods 0.000 description 1
- 239000002184 metal Substances 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 230000010287 polarization Effects 0.000 description 1
- 230000009257 reactivity Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- 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/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/785—Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes
- G11C29/789—Masking faults in memories by using spares or by reconfiguring using programmable devices with redundancy programming schemes using non-volatile cells or latches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0656—Data buffering arrangements
-
- 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
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/061—Improving I/O performance
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
- G06F3/0616—Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
-
- 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
-
- 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/0662—Virtualisation aspects
- G06F3/0665—Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/004—Reading or sensing circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0069—Writing or programming circuits or methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/10—Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
- G11C7/1006—Data managing, e.g. manipulating data before writing or reading out, data bus switches or control circuits therefor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/10—Decoders
-
- 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/7202—Allocation control and policies
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7203—Temporary buffering, e.g. using volatile buffer or dedicated buffer blocks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/10—Aspects relating to interfaces of memory device to external buses
- G11C2207/102—Compression or decompression of data before storage
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2245—Memory devices with an internal cache buffer
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C5/00—Details of stores covered by group G11C11/00
- G11C5/02—Disposition of storage elements, e.g. in the form of a matrix array
- G11C5/025—Geometric lay-out considerations of storage- and peripheral-blocks in a semiconductor storage device
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/18—Bit line organisation; Bit line lay-out
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/14—Word line organisation; Word line lay-out
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)
- Microelectronics & Electronic Packaging (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Mram Or Spin Memory Techniques (AREA)
- Memory System (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Semiconductor Memories (AREA)
- Computer Hardware Design (AREA)
Abstract
一非揮發性記憶體可係常駐於一資料儲存裝置中。該非揮發性記憶體可由一可原地重寫之記憶體單元組成,該可原地重寫之記憶體單元具有一讀取-寫入非對稱性。該非揮發性記憶體可在藉由將該非揮發性記憶體變更成一第二群組之層來對一事件調適之前,以該資料儲存裝置之一選擇模組劃分成一第一群組之層。該第一群組之層及該第二群組之層係不同的。
Description
根據各種實施例,一資料儲存裝置具有一非揮發性記憶體,該非揮發性記憶體由一可原地重寫之記憶體單元組成,該可原地重寫之記憶體單元具有一讀取-寫入非對稱性。該非揮發性記憶體係在藉由將該非揮發性記憶體變更成一第二群組之層來對一事件調適之前,以該資料儲存裝置之一選擇群組劃分成一第一群組之層。該第一群組之層及該第二群組之層係不同的。
100‧‧‧資料儲存系統/系統
102‧‧‧資料儲存裝置
104‧‧‧主機
106‧‧‧網路控制器
108‧‧‧本地處理器
110‧‧‧緩衝器
112‧‧‧緩衝器
114‧‧‧記憶體陣列
116‧‧‧第一快閃單元
118‧‧‧第二快閃單元
120‧‧‧第三快閃單元
122‧‧‧第四快閃單元
124‧‧‧第一頁面
126‧‧‧第二頁面
140‧‧‧記憶體陣列
142‧‧‧記憶體單元/單元
144‧‧‧選擇層
146‧‧‧電阻元件
148‧‧‧線
160‧‧‧電阻元件
162‧‧‧電阻區域/區域
164‧‧‧硫屬玻璃材料
166‧‧‧非晶
170‧‧‧長絲類型電阻元件/長絲
172‧‧‧導電長絲
174‧‧‧介電材料
180‧‧‧電阻元件/元件
182‧‧‧介電間隔物層
184‧‧‧自由層
186‧‧‧參考層
188‧‧‧固定磁化強度/自由磁化強度
190‧‧‧磁性定向
202‧‧‧電壓
204‧‧‧電壓
206‧‧‧電壓
208‧‧‧安定時間
210‧‧‧讀取電壓
220‧‧‧資料儲存裝置
222‧‧‧晶片
224‧‧‧壓縮
226‧‧‧加密
228‧‧‧寫入快取
230‧‧‧記憶體元件/映射元件
232‧‧‧非揮發性記憶體/記憶體
234‧‧‧選擇模組
240‧‧‧資料儲存裝置
242‧‧‧計時器
244‧‧‧日誌
246‧‧‧感測器
248‧‧‧預測電路
250‧‧‧映射方案
252‧‧‧第一級映射/第一級/級映射/映射
254‧‧‧記憶體
256‧‧‧第二級映射/第二級/級映射/映射
258‧‧‧影子映射/影子/映射
260‧‧‧主資料儲存
262‧‧‧非揮發性可原地重寫之記憶體/記憶體
270‧‧‧資料儲存裝置
272‧‧‧寫入快取
274‧‧‧非揮發性記憶體/記憶體
276‧‧‧第一層/層
278‧‧‧第二層/層
280‧‧‧第三層/層
282‧‧‧第四層/層
290‧‧‧資料儲存裝置
292‧‧‧演算法
294‧‧‧日誌
300‧‧‧方案
302‧‧‧待決寫入請求/步驟
304‧‧‧步驟
306‧‧‧步驟
308‧‧‧步驟
310‧‧‧步驟
312‧‧‧步驟
314‧‧‧步驟
320‧‧‧方案
322‧‧‧步驟
324‧‧‧步驟
330‧‧‧方案
332‧‧‧步驟
340‧‧‧方案
342‧‧‧步驟
350‧‧‧原地記憶體利用常式
352‧‧‧步驟
354‧‧‧步驟
356‧‧‧步驟
358‧‧‧決策
360‧‧‧步驟
362‧‧‧決策
364‧‧‧步驟
366‧‧‧步驟
368‧‧‧步驟
BL1,BL2‧‧‧位元線
SL1,SL2‧‧‧源線
MU 1,MU2,MU N‧‧‧記憶體元件
VWRITE,VREAD‧‧‧臨限電壓
WL1,WL2‧‧‧字線
圖1展示可在其中實行各種實施例之一實例資料儲存系統的方塊圖。
圖2A及圖2B分別表示可用於圖1之資料儲存系統中之一實例資料儲存裝置的部分。
圖3A至圖3C分別描繪可用於圖1之資料儲存系統中之實例記憶體單元的部分。
圖4繪出與圖1之資料儲存系統相關聯的實例操作資料。
圖5A及圖5B分別顯示根據各種實施例操作之一實例資料儲存裝置的部分。
圖6繪示根據一些實施例配置之一實例資料儲存裝置的部分之方塊圖。
圖7係根據各類實施例組態之一實例資料儲存裝置的部分之方塊圖。
圖8展示可用於圖1之資料儲存系統中之一實例資料儲存裝置的一部分之方塊圖。
圖9描繪根據一些實施例配置之一實例資料儲存裝置的一部分之方塊圖。
圖10A至圖10D分別表示根據各類實施例形成之一實例微影總成的一部分。
圖11係根據一些實施例之使用圖1的資料儲存系統執行之一實例原地記憶體利用常式的流程圖。
隨著經產生、傳輸、及儲存之資料量的增加,資料儲存的速度、成本、大小、及壽命變得有壓力。雖然使用旋轉磁性媒體的硬磁碟驅動機(HDD)能夠可靠地長期儲存資料,但相對較大的實體大小及緩慢的資料存取速度卻妨礙在許多運算裝置中採用HDD。使用NAND快閃記憶體的固態驅動器可提供更快的資料存取速度及較小的實體大小,但相較於HDD具有高成本及低壽命。
由於重複地寫入、移動、及刪除資料以致力於減小資料存取潛時之資料管理結構及方案而使快閃記憶體之相對較短的壽命更形惡化。快閃記憶體並非可以位元或位元組定址而是僅可以頁面/磁區定址的事實使記憶體的短壽命情況更複雜,且與可以位元/位元組定址的揮發性記憶體相比,導致複雜的資料管理及相對較長的資料存取時間。然而,要求揮發性記憶體連續具有保存資料的電力限制此等類型的記憶體在一資料儲存裝置中的潛在適用性。
因此,各種實施例大致上係關於資料儲存結構及操作,該等資料儲存結構及操作利用可原地重寫之記憶體,該可原地重寫之記憶體享有比快閃記憶體更快的資料存取速度、比HDD更小的實體大小、及非揮發性資料保存。在具有相對較快的資料存取速度之非揮發性記憶體中之儲存資料的能力容許可最佳化資料保存、讀取、及寫入之多種不同的資料管理結構及方案。同時,可原地重寫之記憶體之相對小的實體大小允許資料儲存裝置足夠小,以在諸如智慧型手機及平板電腦的現代運算裝置中實現,同時足夠強健以在大型資料容量中心中使用。
圖1展示可在其中實行本揭露之各類實施例的一實例資料儲存系統100。系統100可經由一有線及/或無線網路將任何數目的資料儲存裝置102連接至任何數目的主機104。一或多個網路控制器106可基於硬體或軟體,並向各種經連接的資料儲存裝置102提供資料請求處理及分配。須注意多個資料儲存裝置102可係類似類型或不同類型的記憶體,其等具有不同的資料容量、操作參數、及資料存取速度。
在一些實施例中,系統100的至少一資料儲存裝置102具有一本地處理器108(諸如一微處理器或可程式化控制器),其經連接至一晶片上緩衝器110(諸如靜態隨機存取記憶體(SRAM))、及一晶片外緩衝器112(諸如動態隨機存取記憶體(DRAM))、及一非揮發性記憶體陣列114。圖1的非限制性實施例配置包含NAND快閃記憶體之非揮發性記憶體陣列114,其係示意地部分顯示為具有第一(BL1)位元線及第二(BL2)位元線,該等位元線與第一字線(WL1)及第二字線(WL2)以及第一源線(SL1)及第二源線(SL2)共同操作,以寫入及讀取儲存在第一快閃單元116、第二快閃單元118、第三快閃單元120、及第四快閃單元122中的資料。
須注意各別的位元線對應於記憶體的第一頁面124及第二頁面126,其等係記憶體陣列114之最小解析度。也就是,快閃記憶體的構造預防快閃單元可個別地原地重寫,取而代之的係可以一逐頁基礎重寫。與具有可以位元定址同時可個別存取並可個別原地重寫之單元的記憶體相比,此類低資料解析度連同快閃記憶體在多次寫入/重寫循環後磨損的事實對應了眾多性能瓶頸及操作無效率。因此,各種實施例係關於將可以位元定址且可原地重寫之記憶體實現成一資料儲存裝置102,該資料儲存裝置可係一分散式網路資料儲存系統100的部分。
圖2A及圖2B表示根據各種實施例之可用於一資料儲存裝置中之一實例記憶體陣列140的部分。記憶體陣列140具有沿著Z軸經垂直堆疊的複數個分開的記憶體單元142,其作為一三維陣列的部分。雖然預期可利用記憶體單元142的單一晶粒,但此類組態使資料容 量變小,且未能利用所有的可用空間。因此,各種實施例垂直堆疊各自常駐在X-Y平面中之記憶體單元142的多個晶粒。然而,經垂直堆疊的單元142不一定需要以圖2A中所示的方式經垂直對準。
在NAND快閃記憶體及其他固態資料儲存單元的情況下,一電晶體或其他分開的選擇組件係併入各單元中,該電晶體或其他分開的選擇組件佔據寶貴空間、消耗額外功率、且為增加資料存取操作之潛時。記憶體陣列140的各記憶體單元142係經構造為不具有一電晶體或其他實體上分開的選擇組件,且替代地具有接觸一電阻元件146的一選擇層144。選擇層144可係單一材料或不同材料的一層壓體,其在預定時間處預防至電阻元件146之電流,並允許在其他預定時間處之至電阻元件146的電流。作為一非限制性實例,選擇層144可係一金屬絕緣體變遷(MIT)材料、一雙向定限開關(OTS)、或其他調壓結構。
如圖1所示,一電晶體或其他選擇組件的納入對應於啟動各別選擇組件的源線。有利於選擇層144之任何選擇組件的排除允許經垂直堆疊的記憶體單元142可藉由一交叉點互連組態個別存取,其中位元線(BL)與字線(WL)操作以存取一或多個單元142。如線148所繪示,在位元線與字線之間的一感應電位差誘發通過單一記憶體單元142的電流。選擇單一位元從而可以位元定址的能力允許記憶體陣列140密集地封裝單元,而不用擔心無意地存取記憶體單元142。
須注意記憶體單元142的構造提供相對較低的功率消耗,其對應於未經選擇及實體上相鄰的單元142在讀取及/或寫入操作期間之干擾的低風險。圖2B的俯視圖表達記憶體單元142如何能夠相 對於沿著單一晶粒之各類位元線及字線而經定位。藉由利用經垂直堆疊的記憶體單元142之間的位元線,可減少控制互連的總體數目,其提供經更密集封裝的記憶體陣列140。
圖3A至圖3C分別表達能夠用於記憶體陣列140中之實例非揮發性電阻元件的線圖。圖3A表示一相變類型電阻元件160,其佔據具有一硫屬玻璃材料164之一電阻區域162,該硫屬玻璃材料與電流起反應以在一非晶166低電阻率狀態與一結晶高電阻率狀態之間變遷。多晶狀態與非晶狀態之間的切換能夠可靠而有效率地循環。然而,對於相變電阻元件160而言,寫入/切換電流可相對較高。
圖3B表示一長絲類型電阻元件170,其中電阻區域162包含具有一高電阻率的一材料,直到藉由一寫入電流流過區域162而誘發一或多個導電長絲172。長絲的形成可係簡單而有效率的,但預期(多個)長絲可變得根深於介電材料174中,並減少高電阻率狀態與低電阻率狀態之間的差距。
在一些資料儲存配置,但不一定是所有的記憶體陣列中,在相變160及長絲170類型的元件中形成導電路徑可係有效率的。因此,一電阻元件可經由相對磁性定向來產生不同的電阻狀態。圖3C的磁性類型電阻元件180顯示一介電間隔物層182係如何設置在一磁性自由層184與一磁性參考層186之間。參考層186經設定為一固定磁化強度188,而自由層184可經設定為多個不同的磁性定向190,其等相對於固定磁化強度188為元件180提供不同的電阻狀態。預期電阻元件 180可具有額外的自旋極化層(諸如在一自旋扭矩配置中),其作用以使自由磁化強度188的切換更有效率。
在一記憶體陣列中利用不同類型的電阻元件的能力允許一資料儲存裝置定制一資料儲存裝置的操作及資料儲存能力。作為一非限制性實例,一記憶體陣列可在不同晶粒中使用不同類型的電阻元件,其可提供操作狀態及資料儲存參數之可選擇的多樣性。不管一記憶體陣列中之電阻元件的類型或多樣性為何,一記憶體單元可苦於非對稱存取,其中完成一寫入操作所耗費的時間量不同於一讀取操作。也就是,用於選擇層144之一分開的選擇組件(諸如一電晶體或二極體)的置換可導致非對稱存取。此類非對稱存取在資料儲存裝置中可係有問題的,其中大量的資料寫入及讀取可在不關注或評估一先前的讀取或寫入操作是否已完成的情況下實施。
對使用相變類型電阻元件160的記憶體陣列而言,須注意一寫入存取可比一讀取耗費更多時間完成(例如,針對一讀取係7微秒的潛時,而針對一寫入則係10+微秒的潛時)。預期讀取/寫入非對稱性甚至可更大(例如,與一讀取操作相比,欲完成一寫入操作要耗費雙倍或甚至多出一個數量級的時間)。此等問題已引發有趣的資料管理情況,該等情況在揮發性記憶體、HDD儲存、或NAND快閃記憶體中並未解決。
圖4描繪根據各種實施例之與使用非對稱記憶體單元之一記憶體陣列相關聯之電壓對時間的實例運算資料。一記憶體陣列之記憶體單元的構造對應於一不同的讀取(Vread)臨限電壓及寫入(Vwrite) 臨限電壓,以分別存取或修改一記憶體單元的電阻狀態及相關聯的二進位狀態。
在一第一電壓202係由一或多個低於讀取臨限電壓及寫入臨限電壓的記憶體單元接收的情況下,則各記憶體單元的選擇層將預防電壓通過單元,其預防無意的電阻變化劣化資料存取操作。當電壓204/206大於讀取臨限電壓時,一記憶體單元的選擇層允許電壓通過單元。對不夠大以改變電阻元件之電阻狀態的電壓204而言,現行的電阻狀態將通過經正交定向的位元線及字線經由信號讀取。
寫入電壓206通過記憶體單元的通道將改變電阻元件的電阻狀態。然而,在寫入電壓通過電阻元件後存在一安定時間208,以用於將記憶體單元設定為可以一讀取電壓210存取的一電阻狀態。安定時間208直接對一記憶體單元的讀取/寫入非對稱性負責,如圖4所繪示。因此,可藉由寫入非對稱性來使與記憶體陣列140相關聯之相對較高的資料容量及快速讀取潛時下降,其要求資料儲存裝置在寫入單元的每一種情況下針對各記憶體單元監控及考慮相對較長的安定時間。
據此,各類實施例係關於最佳化使用苦於非對稱讀取/寫入操作之圖2的非揮發性、可以位元定址、可原地重寫之記憶體的結構及方法。圖5A及圖5B分別表達至具有圖2之記憶體陣列的資料儲存裝置220之實例寫入操作及讀取操作的方塊圖。一寫入操作係顯示在圖5A中,並始於流向一晶圓晶片222上之一SRAM緩衝器110及/或經定位於晶片外222之一DRAM緩衝器112的一寫入請求的資料。接著 依執行韌體、軟體、或硬體操作之一本地控制器所引導而循序壓縮224及加密226寫入資料。
經壓縮及加密的寫入資料係在一寫入快取228中編譯為可由多個資料頁面及/或磁區組成的記憶體元件(MU)230。須注意對比於可以頁面存取的快閃記憶體,對可原地重寫之非揮發性記憶體而言,由於可存取個別位元而不需要對MU 230進行編譯。不管是否將寫入資料組織成映射元件230,寫入快取228可暫時地儲存寫入資料,直到將資料寫入非揮發性記憶體(NV記憶體)232,其中記憶體232的至少一部分具有圖2的非對稱記憶體單元142。
在將資料寫入非揮發性記憶體232之非對稱單元的情況下,一讀取操作無法可靠地自非揮發性記憶體232存取資料,直到安定時間208過後。因此,在一些實施例中,一讀取操作涉及一資料儲存裝置的一選擇模組234,以自寫入快取228或非揮發性記憶體232擷取資料,如圖5B所示。須注意寫入快取228係與非揮發性記憶體232不同類型之一記憶體(諸如DRAM或NAND快閃),且在發送至一主機之前,一讀取操作將涉及解密及解壓縮。因此,選擇模組234以智慧方式管理多個不同類型的記憶體,以在不遭受歸因於單元142的安定時間之延長的寫入潛時的情況下利用圖2的非揮發性記憶體單元142的快速讀取速度。
雖然非限制性或必需的,選擇模組234仍可實施各種智慧評估,以最佳化對來自一或多個主機之資料存取的滿意度。圖6係使用圖2的記憶體陣列140之一實例資料儲存裝置240的一部分的方塊 圖。選擇模組234對至少一計時器242、活動日誌244、感測器246、及預測電路248具有存取權,以評估欲服務之一寫入請求或讀取請求的最佳目的地及狀態。
在接收來自一主機之一寫入請求或讀取請求之後的任何時間,選擇模組234可評定單一資料儲存裝置以及總體資料儲存系統的當前狀態。儘管選擇模組234可同時及/或循序地評估任何類型及數目的輸入,但一些實施例特定地接收一寫入佇列中之待決寫入的狀態,其可係與待決寫入請求相關聯之資料的量、大小、及緩衝特性。選擇模組234可進一步接收系統性能量度(諸如功率消耗、平均資料存取潛時、及位元誤差率)。
待決寫入的標定寫入位置連同資料版本提供關於至選擇模組234之待決資料寫入的傳記資訊。可對任何數目及類型的環境狀態進行輪詢及/或以感測器246偵測,以識別任何潛在的不利資料存取情況。例如,與接收自一遠端主機的一輪詢環境溫度相比,溫度感測器246可用以驗證一資料儲存裝置內部的溫度。亦可輪詢及/或感測其他環境狀態(諸如溼度、振動、及氣流),以提供資料儲存裝置及系統之更全面的狀態。
選擇模組234可記錄與服務資料存取請求相關聯的執行及系統狀態。收集關於先前服務的資料存取請求的資訊允許選擇模組234以更智慧的方式對系統狀態作出反應,並主動發起行動以最佳化對未來資料存取請求的服務。也就是,選擇模組234可採用當前的裝置/系統狀態連同來自日誌244的資料,以智慧方式識別可最佳化待決讀取 請求及寫入請求之服務的反應性及主動行動。結果,選擇模組234可反應性且主動地在揮發性緩衝器及非揮發性記憶體之間移動資料、變更寫入位置、及改變讀取位置。
評估及判定資料儲存裝置及系統的操作狀態以便以智慧方式執行行動以服務待決資料存取請求的能力允許資料儲存裝置盡可能快速地對不斷變化的狀態及服務請求作出調適。就非對稱可原地重寫之記憶體而言,選擇模組234可在安定時間內針對資料的一讀取請求存在較低風險時以智慧方式寫入非揮發性記憶體、在一緩衝/快取記憶體中保存資料以服務讀取請求、以及將資料移動至不同的緩衝/快取位置以提供最低的讀取潛時。
在選擇模組234反應性且主動地實施行動以最佳化對未決資料請求之服務的情況下,有效資料的當前位置在無強健映射方案的情況下可係難以分辨的。然而,邏輯區塊位址(LBA)至實體區塊位址(PBA)以及LBA至LBA的映射在處理及資料容量方面可係昂貴的,在晶片上SRAM緩衝器中特別是如此。映射可由於資料在兩個不同位置中的冗餘保存而進一步複雜化,以便在安定時間期間服務針對資料的讀取請求。因此,一些實施例利用選擇模組234來針對LBA至PBA及LBA至LBA映射操作來標定儲存位置及處理時間。
圖7繪示可在使用圖2的記憶體陣列140之一資料儲存裝置中實施之一實例映射方案250的方塊圖。多個不同類型的記憶體在一資料儲存裝置中的存在允許選擇模組234產生多個不同的資料映射以最佳化各別類型之記憶體的能力及當前狀態。
在圖7所示的非限制性實例中,選擇模組234可在第一類型的記憶體254(諸如揮發性DRAM、SRAM、或非揮發性快閃記憶體)中創建第一級映射252。在一些實施例中,第一級映射252包含至少一LBA至PBA啟動映射,其含有指向12個條目之顆粒的條目。第一級映射252大致上可將一控制器引導至第二級映射256的邏輯或實體位置,其中LBA至PBA平移以大於第一級映射252的解析度內含於其中。也就是,第二級映射256可包含指向佔有一由主機提供之資料磁區的第一顆粒的本地條目。由於第一級映射252及第二級映射256,可以有效率的方式處理資料讀取、寫入、及更新。
選擇模組234可在含有關於影子資料之臨時位置的資訊之第一類型的記憶體254中創建分開的影子映射258。應理解影子資料係短時間冗餘儲存的資料,直到資料永久地常駐在非揮發性記憶體中為止。影子映射258可係簡單或複雜的,其中一或多個版本的資料係經識別。例如,可藉由影子258、第一級252、及第二級256來追蹤資料的後繼版本,以確保最新版本的資料藉由針對資料之一讀取請求所擷取。須注意影子映射258及級映射252/256可藉由一共用或相異的控制器來並行地寫入、讀取、及更新。
由影子映射258及級映射252/256所追蹤的資料最終係寫入主資料儲存260,該主資料儲存係一可以位元定址的可原地重寫之記憶體262。如所示,主資料儲存260及第二級映射256係各自儲存在非揮發性可原地重寫之記憶體262中。然而,此類組態不是必需的或限制性的,因為任何數目及類型的記憶體均可用於各別映射 252/256/258。例如,第一級映射252可儲存在串列NOR快閃中、影子映射258經儲存在叢集SRAM中、且第二級映射256經儲存在DDR DRAM中。使用至少兩個不同類型的記憶體254/262允許選擇模組234以智慧方式在記憶體中產生及維持各種映射252/256/258,其等最有效率地容許對資料讀取請求及寫入請求的服務。
預期選擇模組234可變更各類映射252/256/258的大小、目的、及記憶體位置,以適應變化的系統及裝置狀態。選擇模組234可經由虛擬化而進一步變更記憶體及/或映射。也就是,儘管位於共用的記憶體254/256中,選擇模組234可創建在軟體/韌體中獨立操作的虛擬機。此類虛擬化能力允許選擇模組234對所偵測及/或預測的系統及裝置狀態即時作出調適以最佳化資料讀取潛時及寫入潛時。
圖8繪示根據各種實施例之使用記憶體虛擬化之一實例資料儲存裝置270的一部分的方塊圖。一或多個不同的寫入快取272可饋送至非揮發性記憶體274中,該非揮發性記憶體包含可以位元定址的可原地重寫之記憶體(諸如陣列140)。雖然資料儲存裝置270可由多個分開的非揮發性記憶體274組成,但一些實施例含有在邏輯上分開成不同記憶體層的單一非揮發性記憶體274,其可特徵化為虛擬化儲存。
記憶體274可經虛擬化成任何數目的層,其等係藉由至少一級映射252/256且潛在地由影子映射258來映射。儘管非必需或限制性的,圖8所示的虛擬化儲存方案本質上係階層式的,並具有分派給一第一PBA範圍的第一層276、分派給一第二PBA範圍的第二層278、 分派給一第三PBA範圍的第三層280、及分派給一第四PBA範圍的第四層282。各別層276/278/280/282的非重疊範圍可替代地分派給LBA。
如由實線箭頭所示,資料可依一選擇模組及/或本地控制器所引導而在任何虛擬化層之間流動。例如,資料可取決於更新活動的量而連續地移動穿過各別層276/278/280/282,其導致最少存取的資料常駐在第四層282中,而最頻繁更新的資料則常駐在第一層276中。另一非限制性實例涉及在將資料移動至其他層(可能是非連續的層)之前起始地將資料放置在第一層276中,以容許更有效率的儲存及擷取(例如基於資料大小、安全性、及/或主機來源)。
可了解到非揮發性記憶體274的可原地重寫之記憶體容許各別層276/278/280/282的可適性虛擬化。也就是,將資料寫入一特定位元、位元組、及磁區而無需儲存一共用頁面之未經選擇的資料的能力允許虛擬化層基於由選擇模組234所判定的系統及裝置需求而具有開展的大小、經分派的內容、及存在。因此,圖8的虛擬化方案可隨時間藉由選擇模組234以任何方式變更,以針對資料儲存系統及裝置之即時狀態最佳化資料儲存。
非揮發性記憶體274之部分的虛擬化係藉由選擇模組234的能力來補足,以採取主動行動來滿足預報的資料儲存活動及/或操作事件。圖9描繪使用選擇模組234之一實例資料儲存裝置290的一部分的方塊圖,該選擇模組具有根據各種實施例進行操作的預測電路248。預測電路248可偵測及/或輪詢關於當前及過去的資料儲存操作以及此類操作期間之環境狀態之各種不同的資訊。須注意預測電路248 可利用選擇模組234的一或多個即時感測器246,以偵測一或多個不同的環境狀態(諸如裝置操作溫度、環境溫度、及功率消耗)。
如圖9所示,隨著一或多個參數的並行及/或循序輸入,預測電路248可依選擇模組234所引導而預報可經適應之未來事件的發生。例如,選擇模組234可修改資料(諸如資料大小、位置、及安全性)以適應一預測事件。在另一非限制性情況下,選擇模組234可將影子資料的冗餘寫入引導至除了非揮發性記憶體以外的一或多個位置,其可在非揮發性記憶體處於其安定時間內的同時提供有效率的資料讀取。
儘管並非詳盡無遺,但預測電路248可接收關於一寫入佇列的當前狀態的資訊(諸如佇列中之各別待決寫入請求的量及大小)。預測電路248亦可輪詢或判定任何數目的系統/裝置性能度量(如寫入潛時、讀取潛時、及誤差率)。待決或經寫入的資料的版本可藉由預測電路248來評估以確立資料多頻繁被更新。預測電路248可利用待決的及先前完成的資料寫入之經分派的寫入位置以在非揮發性記憶體中執行磨損調平操作。
一或多個環境狀態可藉由預測電路248來即時感測及/或輪詢,以判定可能指示未來資料儲存活動的趨勢及情況。在一或多個影子緩衝器(諸如SRAM或NOR快閃)中的空間可用性可向預測電路248識別(多個)緩衝器的性能連同指示系統處理未來的待決寫入請求的容量。預測電路248可使用一或多個演算法292及先前資料儲存活動的至少一日誌294,以預報可最佳化讀取請求及寫入請求之服務的事件及適應行動。
預期日誌294由先前所記錄的及外部建模的事件、行動、及系統狀態兩者組成。所記錄的資訊在選擇模組234判定預測事件的準確性及主動採取行動的效力中可係有用的。此類自我評定可用以更新(多個)演算法292以改善預測事件的準確性。藉由判定先前預測事件的準確性,預測模組248可評定一預測行動將發生的風險及/或適應行動將最佳化系統性能的概率。此類能力容許預測模組248就由選擇模組234所確立的臨限操作,以忽略不太可能提高系統性能的預測事件及主動行動,諸如95%的信心一事件將發生或有90%的概率一主動行動將提高系統性能。
在有忽略小於預期的預測事件及主動行動之能力的情況下,選擇模組234可(例如使用不同的演算法292及/或日誌294)並行及循序地產生眾多不同的情境。作為一非限制性實例,可基於單獨的建模日誌、單獨的即時系統狀態、及建模與即時資訊的一組合而以預測事件及對應的校正行動派給預測電路248任務。因此,預測電路248及選擇模組234可評定系統狀態以產生反應性及主動行動,該等行動具有高概率能改善當前及未來的至一資料儲存裝置之資料存取請求的服務。
圖10A至圖10D分別表達得自選擇模組234隨時間的智慧操作之實例操作方案。圖10A顯示方案300,其中一待決寫入請求302係並行地寫入步驟304中之非揮發性記憶體及步驟306中之至少一寫入緩衝器。步驟308中之一實際或預測事件可觸發選擇模組234在步驟310中自緩衝器讀取資料,直到一計時器在步驟312中到期。換言之, 資料的冗餘寫入容許在非揮發性記憶體處於其安定時間的同時於步驟310中自緩衝器讀取資料,且隨後在步驟314中自非揮發性記憶體讀取資料。
在方案300中,步驟308的事件可比平均安定時間長,或許係歸因於裝置溫度或在非揮發性記憶體的安定時間期間要求讀取資料的其他操作狀態。例如,寫入一多階非揮發性記憶體單元或預測一主機將在步驟308中請求最近寫入之資料的可能性可提示選擇模組234自一臨時緩衝器引導資料擷取。預期步驟312的計時器可用於非揮發性記憶體的安定時間或用於由選擇模組234所判定之一標定延遲時間,以相較於延遲不存在的情況,而更有效率地服務資料存取請求。
圖10B表示實例方案320,其中步驟302的寫入請求及資料至非揮發性記憶體及緩衝器兩者的寫入係與方案300相同。然而,無實際或預測事件發生,且替代地將資料寫入步驟322中的一快閃記憶體,隨後在步驟324中自記憶體讀取,直到步驟312中的計時器到期,接著在步驟314中自非揮發性記憶體讀取資料。步驟322及324中之快閃記憶體的利用可部分地或完全地清空寫入緩衝器,其可允許以更快的寫入緩衝器服務其他待決的系統活動。
圖10C的方案330顯示在接收至一資料儲存裝置之一待決寫入請求之後,步驟332中的一實際或預測事件可發生的方式。事件可觸發選擇模組234放棄將資料寫入非揮發性記憶體,且替代地僅寫入步驟306中的寫入緩衝器,並在步驟304將資料寫入非揮發性記憶體的同時在步驟310中自緩衝器讀取。藉由首先將資料寫入緩衝器,接著再 寫入非揮發性記憶體,可例如在高速資料讀取存取時間期間更有效率地使用系統資源。在非揮發性記憶體的安定時間結束時,如步驟312中之計時器到期所表示的,在步驟314中自非揮發性記憶體讀取資料。
一些實施例預測至資料儲存裝置/系統之非排定的功率損耗或減少,其觸發選擇模組將所有資料自一揮發性緩衝器發送至非揮發性記憶體。其他實施例藉由將所有資料發送至可原地重寫之非揮發性記憶體來回應一排定的功率減少(諸如裝置/系統的關機)。由於不需要在關機期間將非揮發性記憶體的安定時間列入考慮,選擇模組可在無損的情況下將大量資料傾印(dump)至非揮發性記憶體。
藉由將一或多個啟動映射儲存至非揮發性記憶體,在一排定的關機期間可以智慧方式使用可原地重寫之記憶體之相對較快速的讀取時間。須注意選擇模組234可基於當前及最近的系統活動產生一新的啟動映射以提供一幾乎立即開啟的啟動程序,其中啟動映射完全自非揮發性記憶體加載,且後續將啟動映射移動至在其中更有效率地實行更新的其他記憶體。藉由發送現行或新近產生的啟動資料(諸如安全性資訊、級映射、及韌體),一資料儲存裝置/系統可準備就緒以在供電初始化時間的不到1秒內接收新的資料存取請求。
轉向圖10D,方案340藉由並行且冗餘地寫入步驟304中的非揮發性記憶體及步驟306中的一緩衝器來處理來自步驟302的寫入請求。在至非揮發性記憶體的寫入安定的同時,步驟310服務來自緩衝器的任何讀取,直到選擇模組234的計時器在步驟312中到期。步驟342中之一預測或遭遇事件觸發選擇模組234以繼續服務來自緩衝器而 非來自非揮發性記憶體的資料讀取請求,雖然至非揮發性記憶體的資料寫入已安定。步驟342中的事件不受限制,但可係可抑制或降低自非揮發性記憶體之資料讀取的任何操作狀態(諸如誤差)、高裝置/系統處理活動、或通道可用性。
預期選擇模組234可在一記憶體單元的安定時間期間處理覆寫情況。在此類情況下,「髒(Dirty)」及「寫入進行中(WriteInProgress)」旗標係添加至一快取條目。儘管非必需或限制性的,一髒旗標指示快取中的資料尚未被寫入非揮發性記憶體,而一寫入進行中旗標指示快取中的資料已寫入非揮發性記憶體,但緩和週期尚未完成。結果,選擇模組234可以智慧方式評定資料當前是否處於一安定相,其減小冗餘操作並提高系統性能。
通過圖10A至圖10D的實例方案,可理解選擇模組234可採取各種行動來調適一預測及/或實際事件以最佳化對資料存取請求的服務。此類智慧調適允許選擇模組不論資料存取量為何而保持高資料存取帶寬及低資料存取潛時。智慧調適進一步允許選擇模組變更資料儲存位置、映射方案、及影子資料的寫入,以適應資料優先權及安全性的變化,其可更快地將高度重要的資料發送至非揮發性記憶體。
圖11係可由圖1至圖10D之各類實施例實行的一實例原地記憶體利用常式350的流程圖。可在步驟352中啟動一或多個資料儲存裝置,其中各資料儲存裝置由一選擇模組、緩衝記憶體、及一可原地重寫之非揮發性記憶體組成。資料儲存裝置可在一資料儲存系統中作為一分散式網路的部分持續運行任何時間量。當至少一資料儲存裝置在 步驟354中接收來自一主機的一或多個資料寫入請求時,選擇模組可在步驟356中將與待決資料請求相關聯的資料寫入至少一緩衝記憶體及非揮發性記憶體。
步驟356中的寫入資料的程式化可並行或循序地完成至緩衝器及非揮發性記憶體。然而,當將資料寫入非揮發性記憶體時,選擇模組開始一計時器以判定記憶體單元將在何時完成安定並可用於服務一讀取請求。在一些實施例中,步驟356涉及例如回應於資料目的地之實體位置的高裝置溫度及/或活動而預測與一預先存在的預設安定時間不同的一安定時間。
在步驟356中,在將資料寫入非揮發性記憶體期間及之後的任何時間,決策358可使用選擇模組指派用於該資料的讀取請求。也就是,若選擇模組在非揮發性記憶體處於其安定時間的同時接收一讀取請求,則步驟360繼續以服務來自儲存在緩衝器中之資料的讀取請求。在步驟360所服務的任何讀取請求結束時或者若無接收自決策358的讀取請求之事件中,則決策362繼續以評估選擇模組計時器是否已到期。
過期的選擇模組計時器允許步驟364服務來自非揮發性記憶體之一讀取請求,而一作用中的計時器繼續返回至緩衝器位置在其中用於任何讀取請求的步驟360。須注意步驟及決策354至364以任何次數循環再訪,以處理資料讀取請求及寫入請求。在步驟354中寫入資料之後的任何時間,步驟366可在非揮發性記憶體內於實際層或虛擬化層之間移動資料。然而,此類資料傳輸並非必需。隨後在步驟368中映 射最終的非揮發性記憶體位置,以將任何讀取操作引導至儲存在非揮發性記憶體中之最新版本的資料。須注意步驟368中的資料映射可對應於來自各緩衝器及來自將資料存取引導至緩衝器的影子映射之資料的移除或排定移除。
通過本揭露的各種實施例,可利用一非揮發性可原地重寫之記憶體來最佳化對資料存取請求的服務。然而,歸因於與可原地重寫之記憶體相關聯的非對稱寫入時間,一選擇模組以智慧方式評估當前及經記錄的系統活動以允許服務針對在非揮發性記憶體中安定下來之資料的讀取請求。選擇模組容許採取反應性及主動行動,以回應於實際事件及預報事件而保持並最佳化系統性能。結果,資料儲存系統可享有較少的資料讀取潛時、減小的啟動時間、以及對變化的系統狀態作出調適的複雜虛擬化方案。
Claims (20)
- 一種設備,其包含:一非揮發性記憶體,該非揮發性記憶體常駐在一資料儲存裝置中,該非揮發性記憶體包含一可原地重寫之記憶體單元,該可原地重寫之記憶體單元具有一讀取-寫入非對稱性,該非揮發性記憶體係由該資料儲存裝置之一選擇模組在一事件之前劃分成一第一群組之層,且在該事件之後劃分成一第二群組之層,該第一群組之層及該第二群組之層係不同的。
- 如請求項1之設備,其中該可原地重寫之記憶體單元包含接觸一電阻元件而不具有一電晶體之一選擇層。
- 如請求項1之設備,其中該資料儲存裝置具有一緩衝記憶體,該緩衝記憶體係與該非揮發性記憶體不同類型之一記憶體。
- 如請求項1之設備,其中在對該可原地重寫之記憶體單元之一資料寫入之後,該讀取-寫入非對稱性對應於一安定時間。
- 如請求項1之設備,其中該第一群組之層具有與該第二群組之層不同數目之層。
- 如請求項1之設備,其中該第一群組之層及該第二群組之層各經虛擬化。
- 如請求項1之設備,其中該第二群組之層之各層經分派至實體區塊位址之一範圍。
- 如請求項7之設備,其中該第二群組之層之該等各別層之該等範圍係不同且非重疊的。
- 一種方法,其包含: 啟動一非揮發性記憶體,該非揮發性記憶體常駐在一資料儲存裝置中,該非揮發性記憶體包含一可原地重寫之記憶體單元,該可原地重寫之記憶體單元具有一讀取-寫入非對稱性;以該資料儲存裝置之一選擇模組將該非揮發性記憶體劃分成一第一群組之層;及藉由將該非揮發性記憶體變更至一第二群組之層中來對一事件調適,該第一群組之層及該第二群組之層係不同的。
- 如請求項9之方法,其中該事件係該資料儲存裝置之操作性能之經偵測的一變化。
- 如請求項9之方法,其中該第二群組之層經配置成一階層式結構。
- 如請求項11之方法,其中該第二群組之層之一第一層係一快取,資料係在經移動至該第二群組之層之其他層之前起始地經儲存於該快取。
- 如請求項11之方法,其中該第二群組之層之該等各別層對應於儲存於該第二群組之層之該等各別層中之資料之一存取頻率。
- 如請求項9之方法,其中該選擇模組更新在該第二群組之層之該等各別層中之資料而不移動該資料。
- 一種方法,其包含:啟動一非揮發性記憶體,該非揮發性記憶體常駐在一資料儲存裝置中,該非揮發性記憶體包含一可原地重寫之記憶體單元,該可原地重寫之記憶體單元具有一讀取-寫入非對稱性; 以該資料儲存裝置之一選擇模組將該非揮發性記憶體劃分成一第一群組之層;以該資料儲存裝置之該選擇模組預測一事件;藉由將該非揮發性記憶體變更至一第二群組之層中來主動地對該事件調適,該第一群組之層及該第二群組之層係不同的。
- 如請求項15之方法,其中經預測之該事件藉由該選擇模組預報以阻礙該資料儲存裝置之一性能參數。
- 如請求項15之方法,其中該選擇模組回應於經預測之該事件而將資料劃分成該第二群組之層之多個不同層。
- 如請求項15之方法,其中該選擇模組回應於經預測之該事件而將資料跨該第二群組之層之多個不同層條帶化。
- 如請求項15之方法,其中該選擇模組將資料之一影子副本寫入該資料儲存裝置之一緩衝記憶體中,該資料儲存裝置之該緩衝記憶體係在整個該非揮發性記憶體之一安定時間中讀取。
- 如請求項15之方法,其中該第二群組之層之一映射層由常駐在該非揮發性記憶體中之資料之一映射組成。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/607,801 | 2017-05-30 | ||
US15/607,801 US10068663B1 (en) | 2017-05-30 | 2017-05-30 | Data storage device with rewriteable in-place memory |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201911050A true TW201911050A (zh) | 2019-03-16 |
TWI684861B TWI684861B (zh) | 2020-02-11 |
Family
ID=63295391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107118380A TWI684861B (zh) | 2017-05-30 | 2018-05-30 | 用於資料儲存的設備及方法 |
Country Status (5)
Country | Link |
---|---|
US (1) | US10068663B1 (zh) |
JP (1) | JP6752843B2 (zh) |
KR (1) | KR102095428B1 (zh) |
CN (1) | CN108984111B (zh) |
TW (1) | TWI684861B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10942677B2 (en) * | 2019-01-24 | 2021-03-09 | Silicon Motion, Inc. | Method for performing access management of memory device, associated memory device and controller thereof, associated host device and associated electronic device |
Family Cites Families (45)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6438670B1 (en) | 1998-10-02 | 2002-08-20 | International Business Machines Corporation | Memory controller with programmable delay counter for tuning performance based on timing parameter of controlled memory storage device |
KR100331542B1 (ko) * | 1998-10-09 | 2002-06-20 | 윤종용 | 불량메모리셀어레이블락들을스킵할수있는어드레스디코더를구비하는반도체메모리장치및이를사용하는복합반도체장치 |
US6374323B1 (en) | 1998-11-16 | 2002-04-16 | Infineon Technologies Ag | Computer memory conflict avoidance using page registers |
KR100330164B1 (ko) * | 1999-04-27 | 2002-03-28 | 윤종용 | 무효 블록들을 가지는 복수의 플래시 메모리들을 동시에 프로그램하는 방법 |
US6795338B2 (en) | 2002-12-13 | 2004-09-21 | Intel Corporation | Memory having access devices using phase change material such as chalcogenide |
JP3795875B2 (ja) | 2003-05-22 | 2006-07-12 | 東芝マイクロエレクトロニクス株式会社 | 磁気ランダムアクセスメモリ及びそのデータ読み出し方法 |
JP4956922B2 (ja) * | 2004-10-27 | 2012-06-20 | ソニー株式会社 | 記憶装置 |
US8200887B2 (en) * | 2007-03-29 | 2012-06-12 | Violin Memory, Inc. | Memory management system and method |
US7835170B2 (en) | 2005-05-09 | 2010-11-16 | Nantero, Inc. | Memory elements and cross point switches and arrays of same using nonvolatile nanotube blocks |
US7606111B2 (en) * | 2007-04-26 | 2009-10-20 | Super Talent Electronics, Inc. | Synchronous page-mode phase-change memory with ECC and RAM cache |
JP4558054B2 (ja) * | 2008-03-11 | 2010-10-06 | 株式会社東芝 | メモリシステム |
KR20090109345A (ko) * | 2008-04-15 | 2009-10-20 | 삼성전자주식회사 | 저항체를 이용한 비휘발성 메모리 장치, 이를 포함하는메모리 시스템 |
US8225031B2 (en) | 2008-10-30 | 2012-07-17 | Hewlett-Packard Development Company, L.P. | Memory module including environmental optimization |
US8239613B2 (en) * | 2008-12-30 | 2012-08-07 | Intel Corporation | Hybrid memory device |
US8144506B2 (en) | 2009-06-23 | 2012-03-27 | Micron Technology, Inc. | Cross-point memory devices, electronic systems including cross-point memory devices and methods of accessing a plurality of memory cells in a cross-point memory array |
KR20110024147A (ko) * | 2009-09-01 | 2011-03-09 | 삼성전자주식회사 | 저항성 메모리 장치의 저항 드리프트를 보상할 수 있는 메모리 시스템 및 메모리 시스템의 데이터 처리 방법 |
US9208071B2 (en) * | 2010-12-13 | 2015-12-08 | SanDisk Technologies, Inc. | Apparatus, system, and method for accessing memory |
JP2012203936A (ja) | 2011-03-24 | 2012-10-22 | Toshiba Corp | 半導体記憶装置 |
CN103946812B (zh) * | 2011-09-30 | 2017-06-09 | 英特尔公司 | 用于实现多级别存储器分级体系的设备和方法 |
KR101915073B1 (ko) | 2011-12-20 | 2018-11-06 | 인텔 코포레이션 | 2-레벨 메모리 계층구조에서 메모리측 캐쉬의 동적인 부분적 전원 차단 |
US9767032B2 (en) * | 2012-01-12 | 2017-09-19 | Sandisk Technologies Llc | Systems and methods for cache endurance |
CN103257830A (zh) * | 2012-02-17 | 2013-08-21 | 联想(北京)有限公司 | 存储单元的访问方法和存储单元 |
US9043530B1 (en) * | 2012-04-09 | 2015-05-26 | Netapp, Inc. | Data storage within hybrid storage aggregate |
US8675423B2 (en) | 2012-05-07 | 2014-03-18 | Micron Technology, Inc. | Apparatuses and methods including supply current in memory |
US9245926B2 (en) | 2012-05-07 | 2016-01-26 | Micron Technology, Inc. | Apparatuses and methods including memory access in cross point memory |
WO2014008261A1 (en) * | 2012-07-03 | 2014-01-09 | Violin Memory, Inc. | Synchronization of a dispersed raid group |
US9395924B2 (en) * | 2013-01-22 | 2016-07-19 | Seagate Technology Llc | Management of and region selection for writes to non-volatile memory |
US9076530B2 (en) * | 2013-02-07 | 2015-07-07 | Seagate Technology Llc | Non-volatile write buffer data retention pending scheduled verification |
JP2014203405A (ja) * | 2013-04-09 | 2014-10-27 | 富士通株式会社 | 情報処理装置、メモリ制御装置、データ転送制御方法及びデータ転送制御プログラム |
GB2513377A (en) * | 2013-04-25 | 2014-10-29 | Ibm | Controlling data storage in an array of storage devices |
US9202578B2 (en) * | 2013-10-02 | 2015-12-01 | Conversant Intellectual Property Management Inc. | Vertical gate stacked NAND and row decoder for erase operation |
KR102254392B1 (ko) * | 2014-05-12 | 2021-05-25 | 삼성전자주식회사 | 메모리 컨트롤러의 동작 방법 및 불휘발성 메모리 장치 및 메모리 컨트롤러를 포함하는 불휘발성 메모리 시스템 |
KR102292172B1 (ko) * | 2014-06-23 | 2021-08-25 | 삼성전자주식회사 | 불휘발성 메모리 장치 및 메모리 컨트롤러의 동작 방법 |
US9471227B2 (en) * | 2014-07-15 | 2016-10-18 | Western Digital Technologies, Inc. | Implementing enhanced performance with read before write to phase change memory to avoid write cancellations |
KR102148889B1 (ko) * | 2014-08-18 | 2020-08-31 | 삼성전자주식회사 | 메모리 컨트롤러의 동작 방법 및 메모리 컨트롤러를 포함하는 불휘발성 메모리 시스템 |
GB2530043A (en) * | 2014-09-10 | 2016-03-16 | Ibm | Device and method for storing data in a plurality of multi-level cell memory chips |
CN105653199B (zh) * | 2014-11-14 | 2018-12-14 | 群联电子股份有限公司 | 数据读取方法、存储器存储装置及存储器控制电路单元 |
CN105607861A (zh) * | 2014-11-24 | 2016-05-25 | 中兴通讯股份有限公司 | 数据处理方法及装置 |
US20160232112A1 (en) | 2015-02-06 | 2016-08-11 | Futurewei Technologies, Inc. | Unified Memory Bus and Method to Operate the Unified Memory Bus |
US20160259732A1 (en) | 2015-03-04 | 2016-09-08 | Cavium, Inc. | Managing reuse information for memory pages |
US9965408B2 (en) * | 2015-05-14 | 2018-05-08 | Micron Technology, Inc. | Apparatuses and methods for asymmetric input/output interface for a memory |
CN105094709A (zh) * | 2015-08-27 | 2015-11-25 | 浪潮电子信息产业股份有限公司 | 一种固态盘存储系统的动态数据压缩方法 |
US9601193B1 (en) | 2015-09-14 | 2017-03-21 | Intel Corporation | Cross point memory control |
US20170139826A1 (en) * | 2015-11-17 | 2017-05-18 | Kabushiki Kaisha Toshiba | Memory system, memory control device, and memory control method |
US20170235681A1 (en) * | 2016-02-12 | 2017-08-17 | Kabushiki Kaisha Toshiba | Memory system and control method of the same |
-
2017
- 2017-05-30 US US15/607,801 patent/US10068663B1/en active Active
-
2018
- 2018-05-29 JP JP2018102217A patent/JP6752843B2/ja active Active
- 2018-05-30 KR KR1020180061878A patent/KR102095428B1/ko active IP Right Grant
- 2018-05-30 TW TW107118380A patent/TWI684861B/zh not_active IP Right Cessation
- 2018-05-30 CN CN201810538198.7A patent/CN108984111B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
JP6752843B2 (ja) | 2020-09-09 |
JP2018206377A (ja) | 2018-12-27 |
KR102095428B1 (ko) | 2020-04-01 |
CN108984111B (zh) | 2021-09-14 |
CN108984111A (zh) | 2018-12-11 |
KR20180131468A (ko) | 2018-12-10 |
US10068663B1 (en) | 2018-09-04 |
TWI684861B (zh) | 2020-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI673722B (zh) | 具有可原地重寫之記憶體的資料儲存裝置 | |
US11449431B2 (en) | Data storage device with rewritable in-place memory | |
CN113921063A (zh) | 热区标签和热区离群值检测 | |
US11537305B1 (en) | Dissimilar write prioritization in ZNS devices | |
US10235049B2 (en) | Device and method to manage access method for memory pages | |
US20240220155A1 (en) | Solution for Super Device Imbalance in ZNS SSD | |
CN114730282A (zh) | Zns奇偶校验交换到dram | |
US11210027B2 (en) | Weighting of read commands to zones in storage devices | |
US11966618B2 (en) | Purposeful super device imbalance for ZNS SSD efficiency | |
KR102138767B1 (ko) | 제자리에 다시쓰기 가능한 메모리를 갖는 데이터 저장 디바이스 | |
TWI684861B (zh) | 用於資料儲存的設備及方法 | |
US11687263B2 (en) | Full die recovery in ZNS SSD | |
US20180349036A1 (en) | Data Storage Map with Custom Map Attribute | |
US11016880B1 (en) | Data storage system with read disturb control strategy whereby disturb condition can be predicted | |
US11899590B2 (en) | Intelligent cache with read destructive memory cells |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MM4A | Annulment or lapse of patent due to non-payment of fees |