TWI710900B - 儲存裝置及方法 - Google Patents
儲存裝置及方法 Download PDFInfo
- Publication number
- TWI710900B TWI710900B TW105124703A TW105124703A TWI710900B TW I710900 B TWI710900 B TW I710900B TW 105124703 A TW105124703 A TW 105124703A TW 105124703 A TW105124703 A TW 105124703A TW I710900 B TWI710900 B TW I710900B
- Authority
- TW
- Taiwan
- Prior art keywords
- storage
- sue
- manager
- storage device
- interface
- Prior art date
Links
Images
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/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
- 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/0888—Addressing 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
-
- 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/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1064—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in cache or content addressable memories
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/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/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/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
-
- 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
- G06F12/0895—Caches characterised by their organisation or structure of parts of caches, e.g. directory or tag array
-
- 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/0643—Management of files
-
- 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
- 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
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1004—Compatibility, e.g. with legacy hardware
-
- 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/1016—Performance 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/10—Providing a specific technical effect
- G06F2212/1056—Simplification
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)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Memory System (AREA)
Abstract
本發明描述可包含實現不同儲存空間活動的多個不同類
型的位址空間的高效且有效的多模式儲存裝置。多模式選擇性基礎曝露儲存裝置可實現儲存裝置的基礎態樣的選擇性曝露。在一個實施例中,一種儲存裝置包括:第一儲存分割區,其包含第一類型介面及經配置以儲存第一類型的資訊的第一資訊儲存區;及第二儲存分割區,其包含選擇性基礎曝露(selective underlying exposure;SUE)介面及儲存第二類型的資訊的第二資訊儲存區,其中SUE介面曝露第二資訊儲存區的態樣。
Description
本發明是關於資訊儲存。
眾多電子技術(例如,數位電腦、計算器、音訊裝置、視訊設備、電話系統及/或類似者)在商業、科學、教育及娛樂的大部分領域中具有增加的生產率且具有減少的成本。此等電子系統執行涉及資訊儲存系統的操作。資訊儲存操作進行的速度及簡易性可對資訊儲存系統的總體效能具有顯著影響。然而,習知資訊儲存的嘗試通常涉及速度與可管理複雜度之間的反相關係。
資訊儲存系統涉及可屬於兩個類別中的一者的操作。一個類別涉及與使用者起始的活動相關聯的儲存操作。另一類別涉及由系統起始的管理及維持活動。此等操作進行的速度及簡易性與經利用以儲存資訊的位址空間類型相關聯。
利用實體上經定址空間的傳統嘗試在理論上被視為以極快速度操作,但習知實體上經定址空間中的實際管理及維持操作嘗試極複雜且未予以切實實施。習知邏輯位址空間的管理及維持被視為相比實體位址空間涉及較少複雜度。然而,習知邏輯位址空間並不與實體位址空間一般快速操作。
雖然習知儲存系統可按先前可已被視為可接受的水平操作,但此等儲存系統愈來愈不足以滿足對改良的應用及平台的要求及長期需要。達成增加的速度及可管理複雜度兩者以使得能夠改良系統開發的習知嘗試尚未成功。
描述可包含實現不同儲存空間活動的多個不同類型的位址空間的高效及有效多模式儲存裝置。多模式選擇性基礎曝露(selective underlying exposure;SUE)儲存裝置可實現儲存裝置的基礎態樣的選擇性曝露。在一個實施例中,一種儲存裝置包括:包含第一類型介面及經配置以儲存第一類型的資訊的第一資訊儲存區的第一儲存分割區;及包含選擇性基礎曝露(SUE)介面及儲存第二類型的資訊的第二資訊儲存區的第二儲存分割區,其中SUE介面曝露第二資訊儲存區的態樣。
應瞭解的是,可存在選擇性曝露的多種不同態樣。所述態樣可包含由以下各者組成的群組中的一者:第二儲存分割區的特性、特徵、功能、代表性幾何佈置、尺寸及管理操作。第一分割區中的儲存管理操作可由第一類型介面指導,且第二分割區中的檔案儲存管理活動可藉由SUE介面自第二分割區外部指導。第一儲存分割區的大小可不同於第二儲存分割區的大小。第一儲存分割區中的操作粒度可不同於第二儲存分割區中的操作粒度。第一分割區與第二分割區的組合實現優於單獨第一分割區的經改良效能,同時相比於單獨第二分割區具有降低的複雜度。舉例而言,第一分割區中的過度供應百分比不同於第二分割區中的過度供應百
分比。
在一個實施例中,一種多模式選擇性基礎曝露(SUE)方法包括:將裝置的部分配置為用於儲存第一類型的資訊的第一區;基於第一位址空間資訊參與第一位址類型介面操作;將裝置的部分配置為用於儲存第二類型的資訊的第二區;及基於第二位址空間資訊參與第二位址類型介面操作;其中第二位址類型介面選擇性地曝露基礎態樣。第一類型的資訊可為元資料,且第二類型的資訊可為使用者資料。第二類型位址空間介面可包含:接收第二類型的資訊及位址;及在第二位址類型與基礎位址類型之間轉譯。SUE位址頁面及SUE位址區塊可用於抽象化。
基礎抽象化可與多種事項相關聯。基礎態樣可與基礎實體位址相關聯,且基礎態樣的選擇性曝露移除與實體位址空間相關聯的複雜度,同時仍曝露基礎實體位址空間配置的管理操作特性。基礎態樣可與基礎系統管理操作相關聯。舉例而言,所述態樣可用於執行由以下各者組成的群組中的一者:自由空間管理、自由空間使用的回收及調節、過度供應、修整操作及功率循環。
在一個實施例中,一種固態裝置(solid state device;SSD)包括:第一儲存分割區及第二儲存分割區。第一儲存分割區包含邏輯位址介面及經配置以儲存元資料的第一資料儲存區,其中邏輯位址介面包含用於第一資料儲存區的快閃管理系統及將邏輯位址轉譯為第一資料儲存區的對應實體位址的快閃轉譯(flash translation;FTL)邏輯。第二儲存分割區包含選擇性基礎曝露(SUE)介面及儲存使用者資料的第二資料儲存區,其中SUE介面曝露第二資料儲存區的代表性幾何佈置。第二介面的韌體可經配
置以提供類似於實體介面曝露的介面曝露,同時抽象化處置直接實體介面曝露的複雜度。所述裝置可為固態磁碟機。SUE介面包括:接收選擇性基礎曝露(SUE)位址空間資訊及資料的埠;及控制器,所述控制器將SUE位址空間資訊轉譯成實體位址空間資訊並根據實體位址空間資訊指導資料儲存,其中SUE位址空間的代表性幾何佈置匹配基礎實體位址空間的代表性幾何佈置。在一個例示性實施中,SUE位址空間區塊對應於由裝置管理為單元的實體區塊。
100:儲存裝置
101:選擇性基礎曝露(SUE)儲存分割區
102、381、421、501、782、924:選擇性基礎曝露(SUE)介面
103、233、243、373、383:基礎儲存區
220、350:多模式儲存裝置
230、370:第一分割區
240、380:第二分割區
231、371:第一類型介面
241:第二類型介面
372:第一分割區相關活動
400、620、630、640、650、750:多模式固態磁碟機(MM-SSD)
410、770:邏輯位址空間分割區
411、772、911、921:邏輯介面
412、423:基礎實體位址空間
413、773、912、922:快閃轉譯邏輯FTL
420、780:SUE位址空間分割區
470、511、512、513、514、521、522、523、524、531、532、533、534、541、542、543、544:晶粒
471、472、473、474、479:基礎實體位址區塊
502、777、787、932、925:實體位址空間
503、798:SUE位址區塊
505、507、508:與各種管理及維持操作相關聯的資訊
515、517、519、528、539:實體定址區塊
600、700:系統
610、720、1802、1902、2002:多模式儲存管理系統
611、621、631、641、651、745、775:控制器
671、672、673:磁碟區
710:器具
730:元資料
740、1502:使用者資料
741、771:快閃管理系統(FMS)
742:SUE映射程式
791、792、797:邏輯位址區塊
793、799:實體位址區塊
810、820、830、840:操作
910:經邏輯定址SSD
913、923:邏輯位址空間
920:多模式SSD
930:經實體定址SSD
931:實體介面
1010、1110、1411、1412、1413、1414、1415:SUE區塊(S區塊)
1012、1014、1016、1018:實體區塊
1021、1022、1023、1024:離散實體頁面
1030、1121、1122、1123、1124、1211、1212、1213、1214、1215、1591、1592、1593、1594:SUE頁面(S頁面)
1032、1034、1036、1038:對應實體頁面
1210、1311、1312、1313、1314:元頁面(M頁面)
1310、1410:元區塊(M區塊)
1500:SUE映射方案
1503、1504、1505:SUE可定址單元
1507、1508、1509:經壓縮SUE可定址單元
1511、1512、1513:標頭部分
1515、1517:SSD傳送區塊(STB)
1521-1528、1541-1548、1571-1578:邏輯區塊位址(LBA)
1531-1538、1551-1558、1581-1588:經邏輯定址區塊
1602:儲存系統
1604:處理器
1606:記憶體
1608:網路介面
1610:輸入、輸出(I、O)裝置
1612:顯示裝置
1614:匯流排
1616、2032:非揮發性記憶體(NVM)裝置
1618:本地資料鏈路
1702、1704、1706、1708、1710、1712、1714、1716:操作
1804:SUE儲存管理器
1806:邏輯儲存管理器
1808、1916:回收管理器
1810、1918:儲存陣列管理器
1904、2004:資料對準單元(DAU)
1906:SUE儲存存取管理器
1908:資料壓縮管理器
1910:磁碟區映射引擎
1912、2010:緩衝管理器(BM)
1914、2014:元區塊管理器(MBM)
1920:邏輯儲存存取管理器
2006:使用者區域存取管理器(UAAM)
2008:使用者區域映射引擎(UAME)
2012:系統區域存取管理器(SAAM)
2016:元區塊資訊管理器(MBI)
2018:儲存裝置控制管理器(SCM)
2020:儲存裝置存取管理器(SAM)
2022:全域狀態管理器(GSM)
2024:全域錯誤管理器(GEM)
2026:系統狀態管理器
2028:系統登入及統計管理器
2030:目標裝置
2102:讀取管理器(RM)
2104:寫入管理器(WM)
2106:資料壓縮管理器(DC)
2108:資料解壓縮管理器(DD)
2110:回收管理器(RC)
2112:自由空間帳戶管理器(FSA)
2114:流程控制管理器(FC)
2116:服務品質管理器(QoS)
2202:磁碟區管理器(VM)
2204:映射頁面讀取管理器(MPRM)
2206:映射頁面寫入管理器(MPWM)
2208:映射頁面快取管理器(MPCM)
2302:回收元區塊選取器(RCMBP)
2304:元區塊狀態管理器(MBSM)
2402:儲存裝置登入及統計管理器(SLS)
2404:S區塊抹除引擎(SBEE)
2406:儲存裝置錯誤管理器(SEM)
2502:邏輯存取管理器(SLA)
2504:RAID管理器(RAID)
2506:讀取查找引擎(RLE)
2508:儲存初始化管理器(SI)
2602:電力故障管理器(FM)
2604:錯誤及崩潰管理器(FCM)
併入於本說明書中且形成其一部分的隨附圖式經包含用於對本發明的原理的例示性說明,且並不意欲將本發明限制於在其中所說明的特定實施。圖式並不按比例繪製,除非另外具體指示。
圖1為說明根據一個實施例的具有SUE儲存分割區的例示性儲存裝置的方塊圖。
圖2為說明根據一個實施例的例示性多模式儲存裝置的方塊圖。
圖3為說明根據一個實施例的另一例示性多模式儲存裝置的方塊圖。
圖4為說明根據一個實施例的例示性多模式固態磁碟機(multimode solid state drive;MM-SSD)的方塊圖。
圖5為說明根據一個實施例的將位址空間資訊轉譯成邏輯位址空間資訊的例示性程序的方塊圖。
圖6為說明根據一個實施例的例示性系統的方塊圖。
圖7為說明根據一個實施例的系統的方塊圖。
圖8為描述根據一個實施例的驅動多模式基礎曝露的方法的流程圖。
圖9為說明例示性多模式SSD裝置的方塊圖。
圖10為描繪根據本發明的實施例的例示性SUE區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE頁面的方塊圖。
圖11為描繪根據本發明的實施例的使用者儲存空間的例示性SUE區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE頁面的方塊圖。
圖12為描繪根據本發明的實施例的例示性SUE元頁面及用於儲存於多模式儲存裝置的使用者區域中的對應SUE頁面的方塊圖。
圖13為描繪根據本發明的實施例的例示性SUE元區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE元頁面的方塊圖。
圖14為描繪根據本發明的實施例的另一例示性SUE元區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE區塊的方塊圖。
圖15為描繪根據本發明的實施例的可由多模式儲存系統實施以提供自邏輯位址至SUE位址的位址映射的例示性SUE映射方案的方塊圖。
圖16為描繪可實施圖15的SUE映射方案的例示性儲存系統
的示意圖。
圖17為表示根據本發明的實施例的將邏輯位址空間映射至SUE位址空間的例示性方法的流程圖。
圖18為說明根據本發明的實施例的利用SUE定址方案以便允許儲存系統定址儲存裝置中的邏輯及SUE儲存空間的例示性多模式儲存管理系統的示意圖。
圖19為說明根據本發明的實施例的利用SUE定址方案以便允許儲存系統定址儲存裝置中的邏輯及SUE儲存空間的另一例示性多模式儲存管理系統的示意圖。
圖20為說明根據本發明的實施例的利用SUE定址方案以便允許儲存系統定址儲存裝置中的邏輯及SUE儲存空間的又一例示性多模式儲存管理系統的示意圖。
圖21為說明根據本發明的實施例的可由多模式儲存管理系統實施的使用者區域存取管理器(user area access manager;UAAM)的示意圖。
圖22為說明根據本發明的實施例的可由多模式儲存管理系統實施的使用者區域映射引擎(user area mapping engine;UAME)的示意圖。
圖23為說明根據本發明的實施例的可由多模式儲存管理系統實施的元區塊管理器(metablock manager;MBM)的示意圖。
圖24為說明根據本發明的實施例的可由多模式儲存管理系統實施的儲存裝置控制管理器(storage device control manager;SCM)的示意圖。
圖25為說明根據本發明的實施例的可由多模式儲存管理系
統實施的儲存裝置存取管理器(storage device access manager;SAM)的示意圖。
圖26為說明根據本發明的實施例的可由多模式儲存管理系統實施的全域狀態管理器(global state manager;GSM)的示意圖。
提供所有上文所提及特徵及以下描述以輔助理解本發明。亦即,本發明不應被理解為限於本文中所闡述的“實例”實施例,且可以不同形式體現。以下實施例僅僅為用於充分揭露本發明的實例,且經描述以向熟習此項技術者提供本發明概念。因此,若存在實施本發明的組件的許多方式,則應理解,可藉由所述方式中的任一者或其類似物中的任一者實施本發明。
若在本發明中提到任何配置包含/包括特定組件或任何程序包含/包括特定操作,則此情況意謂可進一步包含其他組件或其他操作。亦即,本文中所使用的術語僅意欲描述特定實例實施例,且並不意欲限制本發明的範疇。另外,所提供以輔助理解本發明的所描述實例包含其補充實施例。
本文中所使用的術語具有熟習此項技術者將大體上理解的含義。常用術語應在本發明的上下文中被理解為一致含義。另外,本文中所使用的術語不應在過度理想或正式意義上解釋,除非本文中明確地如此定義。
描述可利用多個不同類型的位址空間及位址空間活動的高效及有效多模式儲存方法。在一些實施例中,多模式選擇性基礎曝露(selective underlying exposure;SUE)儲存裝置使得能夠選擇
性曝露儲存裝置的一些基礎態樣而不曝露其他基礎態樣。多模式儲存及SUE方法可改良效能同時將複雜度限制於可管理範疇。
在一些例示性實施中,可選擇性地曝露實體位址空間的基礎態樣。可實施整個儲存階層式方法,且可將一個階層式層級的基礎態樣選擇性地曝露於另一階層式層級。選擇性曝露可藉由位址空間配置及位址空間之間的映射發生。所選擇性曝露基礎態樣可較高效及有效地實施在不同於具有所曝露基礎態樣的階層式層級的階層式層級處執行的各種活動。各種活動可包含儲存管理操作。應瞭解的是,多模式儲存及SUE方法可包含多種配置及實施。
在下文中,下文將參考隨附圖式描述本發明的實例實施例。
圖1為說明根據一個實施例的包含選擇性基礎曝露(SUE)儲存分割區101的例示性儲存裝置100的方塊圖。SUE儲存分割區101可包含選擇性基礎曝露(SUE)介面102及基礎儲存區103。
基礎儲存區103可儲存資訊且SUE介面102可選擇性地將基礎儲存區103自身(例如,與尺寸、代表性幾何佈置、管理功能、寫入操作、抹除操作或其類似者相關的實體態樣)的態樣(例如,特性、特徵、功能或其類似者)曝露於外部組件或儲存系統階層式層級(未繪示)。曝露可與儲存於基礎儲存區103中的資訊(使用者資料及元資料)的態樣相關聯。SUE儲存分割區101可曝露基礎態樣的一部分(例如,特性、特徵、功能或其類似者)。
相比並不選擇性地曝露基礎態樣的一部分的系統,在曝露基礎態樣的一部分的一個例示性實施中,可較高效地(例如,較快、較少頻寬及較少功率消耗)執行與所曝露態樣相關聯的活動(例如,自由空間管理、自由空間使用的回收及調節、過度供應、修整操作、功率循環或其類似者)。可以比曝露較多或所有基礎態樣的方法較少的複雜度執行活動。
在一些實施例中,可基於比較或平衡速度與複雜度而判定對曝露基礎態樣的哪一部分的選擇。應瞭解的是,SUE儲存分割區101可包含於具有單一分割區的單一模式儲存裝置中,或SUE儲存分割區101可包含於具有多個分割區的多模式儲存裝置中。
圖2為說明根據一個實施例的例示性多模式儲存裝置220的方塊圖。儲存裝置220可包含第一分割區230及第二分割區240。
應瞭解的是,多個模式及對應分割區可與多種事物相關聯或基於多種事物。各種事物可包含基礎儲存區的不同曝露、不同位址空間(例如,邏輯、虛擬或實體)、不同儲存管理模式(例如,內部管理及外部管理)、不同基礎儲存資訊(例如,元資料及使用者資料)等等。內部管理及外部管理可包含儲存裝置管理系統組件及操作(例如,快閃管理系統(flash management system;FMS)、固態裝置管理系統或其類似者)。分割區及對應組件亦可為不同類型。
多模式儲存裝置220中的分割區及對應介面可與不同類型的位址空間(例如,邏輯位址空間及選擇性基礎曝露(SUE)位址空間)相關聯。多模式儲存裝置220中的多於一個分割區及對
應介面亦可與相同類型的位址空間相關聯(例如,多模式儲存裝置220中的多於一個分割區及對應介面可與SUE位址空間相關聯)。
第一分割區230可包含第一類型介面231及基礎儲存區233。第二分割區240可包含第二類型介面241及基礎儲存區243。
在一些實施例中,第一分割區230可為第一類型的位址空間分割區(例如,邏輯位址空間分割區)且第二分割區240可為第二類型的位址空間分割區(例如,SUE位址空間及虛擬位址空間分割區)。
應瞭解的是,分割區可為SUE儲存分割區。
圖3為說明根據一個實施例的另一例示性多模式儲存裝置350的方塊圖。儲存裝置350可包含第一分割區370及第二分割區380。
在一些實施例中,第一分割區370可為第一類型的位址空間分割區且第二分割區380可為SUE位址空間分割區。第一分割區370可包含第一類型介面371及基礎儲存區373。第二分割區380可包含SUE介面381及基礎儲存區383。應瞭解的是,一些活動,諸如第一分割區相關活動372(例如,FMS)可針對一個分割區在內部(例如,在儲存裝置350中)執行,且可針對另一分割區在外部(未繪示)執行。
不同類型的資訊可儲存於不同分割區中。在一些實施例中,可存在兩種類型的資訊,例如元資料及使用者資料。使用者資料可主要由使用者應用程式產生,且元資料可主要為與使用者資料相關聯的輔助資訊(例如,儲存系統階層中的檔案位置、檔案中的內容的字體、存取時間、修改時間、使用者ID或其類似者)。第一快閃管理系統可集中於管理元資料。元資料又可用於管理使用
者資料的儲存。
應瞭解的是,相比與管理或維持活動相關聯的系統操作,儲存系統可不同地指導或實施與使用者起始活動相關聯的操作。
舉例而言,自使用者視角,使用者起始的讀取或寫入可涉及特定位址或位置而自系統視角,系統操作可涉及實體區塊及頁面。
亦應瞭解的是,儲存裝置350可包含多種配置及實施。
在一些實施例中,儲存裝置350可為固態裝置。儲存裝置350可包含快閃組件(例如,反及類型快閃組件、反或類型快閃組件或其類似者)。
圖4為說明根據一個實施例的例示性多模式固態磁碟機(MM-SSD)400的方塊圖。多模式固態磁碟機(SSD)400可為多模式儲存裝置的一個例示性實施。多模式固態磁碟機400可包含邏輯位址空間分割區410、可包含快閃轉譯邏輯FTL 413的邏輯介面411、基礎實體位址空間412、SUE位址空間分割區420、SUE介面421及基礎實體位址空間423。
邏輯位址空間分割區410可接收及儲存經邏輯定址的系統資料(例如,元資料),且SUE位址空間分割區420可接收根據基礎曝露位址空間而定址的使用者資料(例如,應用程式資料)。
使用者資料可儲存於可包含快閃儲存組件(例如,不同類型的浮動閘極電晶體)的基礎實體位址空間423中。快閃儲存組件可佈置成多種配置及粒度。舉例而言,快閃儲存組件可佈置為多個晶粒,且所述多個晶粒當中的晶粒470可包含區塊473及479及區塊內的頁面。
在一些實施例中,SUE介面421可曝露基礎實體位址空
間423的態樣。可藉由協調MM-SSD 400的使用者資料定址與基礎操作而曝露基礎實體位址空間423的選擇性態樣。協調可與基礎實體位址空間423的管理操作曝露相關聯。基礎實體儲存管理態樣可包含一起管理(例如,在單一操作中、作為單一管理單元、在區塊組中、在級區中、及回應於單一管理命令)的多個基礎實體位址區塊(例如,471、472、473及474)的分組。
圖5為說明根據一個實施例的將位址空間資訊轉譯成邏輯位址空間資訊的例示性程序的方塊圖。SUE位址區塊503可包含與各種管理及維持操作相關聯的資訊(例如,505、507及508)。
實體位址空間502可包含多個晶粒(511、512、513、514、521、522、523、524、531、532、533、534、541、542、543及544)。
每一晶粒可包含多個實體定址區塊(例如,515及519),且每一實體定址區塊可包含多個實體位址頁面。
實體位址空間502可基於實體區塊及實體頁面存取位址儲存位置。SUE介面501可接收SUE位址區塊503資訊,且可將所接收資訊轉譯或重新配置成與實體位址空間502兼容的配置。
SUE位址區塊503資訊可對應於涉及實體管理操作的資訊。
在一些實施例中,管理及維持操作可涉及實體位址空間502中的實體區塊(例如,實體區塊515、519及539)。管理操作可涉及實體位址空間或實體層級管理單元。實體層級管理單元可包含管理實質上同時管理的多個位址、頁面、區塊等等(例如,回應於管理操作或命令)。舉例而言,抹除操作可涉及來自每一晶粒的實體區塊(類似於區塊515以黑色繪示)。
由於SUE位址區塊503經配置以匹配實體區塊,因此用
於每一對應實體區塊的每一資訊段(例如,505、507及508)可包含於SUE位址區塊503中。在一些例示性實施中,SUE介面501可接收SUE位址區塊503資訊、可將資訊505、507及508識別為分別對應於實體區塊515、517及528,且可相應地執行對應管理及維持操作。在一些實施例中,可對多個實體區塊中的資訊執行抹除管理操作,且可對頁面中的資訊執行寫入操作。
兩個位址空間的幾何佈置亦可不同。在一些實施例中,邏輯位址空間可為單維的(例如,邏輯區塊位址(logical block address;LBA)偏移如何對準)且實體位址空間可是多維的,包含諸如錯誤校正碼(error correction code;ECC)、實體頁面、實體區塊、實體晶粒等等的各種態樣(包含一些態樣或其子集)。SUE位址空間可為一維或受限或減小的數目個維度。在SUE位址空間的一些例示性實施中,基礎實體位址空間的維度可抽象化成單一或減小的數目個維度。與基礎實體位址空間的管理活動(例如,回收/廢料收集、功率循環或其類似者)相關聯的所選擇維度(例如,區塊及頁面)可被抽象化至SUE位址空間,而基礎實體位址空間的其他態樣或活動(例如,ECC)可不被抽象化至SUE位址空間。
應瞭解的是,基礎態樣的選擇性曝露可包含在將使用者資料輸送至MM-SSD 400之前由整個系統中的其他組件(未繪示)而非MM-SSD 400執行協調。在一些實施例中,MM-SSD 400可耦接至在整個系統階層的不同層級處操作的管理組件。
圖6為說明根據一個實施例的系統600的方塊圖。系統600可包含以通信方式耦接至多模式儲存管理系統610的多個MM-SSD(例如,620、630、640及650)。
應瞭解的是,一些活動(例如,一些儲存管理操作及快閃管理系統操作)可由多模式儲存管理系統610控制,且其他活動(例如,其他儲存管理操作及快閃管理系統操作)可由MM-SSD 620、630、640及650控制。在一些實施例中,MM-SSD 620、630、640及650可分別包含可控制或指導MM-SSD 620、630、630及650的一些活動的控制器621、631、641及651,而多模式儲存管理系統610可包含可控制或指導MM-SSD 620、630、640及650的一些活動的控制器611。
在一些例示性實施中,控制器621、631、641及651可分別控制或指導MM-SSD 620、630、640及650中的第一分割區的活動,且控制器611可控制或指導MM-SSD 620、630、640及650中的第二分割區的活動。控制器611可經由選擇性基礎曝露介面控制MM-SSD 620、630、640及650中的活動。
在一些實施例中,系統600可包含多個磁碟區(例如,671、672及673)。在一些例示性實施中,系統600可包含使用者空間,且使用者空間可映射至多個磁碟區且儲存空間可作為多個磁碟區呈現給使用者。應瞭解的是,磁碟區可具有不同大小。亦應瞭解的是,不同大小的SUE可定址單元可與多個磁碟區相關聯。
圖7為說明根據一個實施例的系統700的方塊圖。系統700可包含以通信方式耦接至包含於器具710中的多模式儲存管理系統720的多模式SSD(MM-SSD)750。器具710可為各種電腦/電子器具(裝置)中的任一者。應瞭解的是,其他多模式SSD可耦接至多模式儲存管理系統720。系統700可管理元資料730及使用者資料740的儲存。
多模式儲存管理系統720可包含控制器745。控制器745可包含快閃管理系統741(用於使用者資料)及SUE映射程式742。
多模式SSD 750可包含邏輯位址空間分割區770及SUE位址空間分割區780。邏輯位址空間分割區770可包含實體位址空間777及可包含快閃管理系統771(用於元資料)的控制器775。
快閃管理系統771可包含邏輯介面772,所述邏輯介面可包含FTL 773。實體位址空間777可包含反及快閃。SUE位址空間分割區780可包含SUE介面782及可包含反及快閃的實體位址空間787。
元資料730資訊可接收於邏輯位址區塊791中並在邏輯位址區塊792中轉遞且自多模式管理系統720輸送至邏輯位址空間分割區770。應瞭解的是,邏輯位址區塊791及792可相同(例如,邏輯位址區塊791可不變且簡單地轉遞至邏輯位址空間分割區770)。
邏輯介面772可將與元資料相關聯的邏輯區塊位址(LBA)轉譯為與實體位址空間777相關聯的實體位址區塊793。
FMS 771可指導與實體位址空間777相關聯的儲存管理及維持操作。元資料可儲存於實體位址空間777的反及快閃中。
邏輯位址區塊797中的使用者資料可轉遞至FMS 741。
由於實體位址空間787的基礎特徵及特性經由SUE介面782曝露,因此FMS 741可指導與實體位址空間787的基礎特徵及特性相關聯的快閃管理及維持操作。SUE映射程式742可將邏輯位址區塊797映射至SUE位址區塊798。
SUE位址區塊798又可由選擇性基礎曝露(SUE)介面782轉譯為與包含於實體位址空間787中的反及快閃組件相關聯
的實體位址區塊799(例如,類似於圖5中的517及519)。應瞭解的是,邏輯位址區塊可具有與SUE位址區塊不同的大小,SUE位址區塊又可具有與實體位址區塊不同的大小。
相比習知方法,在上方階層層級處執行各種活動促進較高效且便利的管理。習知方法在處理影響多個層的活動時靈活性受限。一些習知方法必須在多個層級上執行活動,從而帶來對總體效能的迅速增長不利影響(例如,登入上登入(log-on-log),驅動層級處的FMS及系統層級處的FMS)。
舉例而言,在獨立磁碟的冗餘陣列(redundant array of
independent disks;RAID)儲存系統中存在需要一起管理(例如,資料儲存及對應同位儲存)的數個項目,數個項目在上部儲存階層層級(例如,RAID系統管理層級)及下部儲存階層層級(例如,儲存驅動層級)處產生影響。資訊的生命週期可針對每一層級而不同(例如,使用者可能想要覆寫資訊但RAID系統可能仍需要資訊用於同位重新計算),從而引起驅動層級為使用者寫入「新」資料但系統層級仍為RAID系統保持「舊」資訊。此情況引起不具有進行修整能力的寫入放大因數。
圖8為描述根據一個實施例的驅動多模式選擇性基礎曝露(MM-SUE)的方法的流程圖。
具有7%的過度供應的磁碟機(例如,SSD)比不具有磁碟機過度供應(例如,HDD)的直接覆寫系統困難15倍,且亦比不具有系統過度供應的系統困難另外15倍,總共更困難225(15×15)倍。允許將FMS向上移動至上部儲存階層層級的多模式儲存裝置促進向下的回減(例如,7%的過度供應在僅比不具有過
度供應的系統更困難15倍的範圍中起作用,且28%的過度供在僅比不具有過度供應的系統更困難3倍的範圍中起作用),從而導致寫入放大因數的減少。在一些例示性實施中,用於自上部儲存階層層級指導管理操作的所選擇基礎位址區塊及頁面可與基礎實體層級協調或匹配基礎實體層級。此情況允許使用者層級處的資訊的生命週期變得不同於系統層級處的資訊的生命週期,但自管理觀點,兩個生命週期可對準為相同(例如,使用者層級處的生命週期的持續時間及系統層級處的生命週期的持續時間可對應於使用者空間的使用及抹除)。
在操作810中,裝置的第一部分可經配置或指定為用於儲存第一類型的資訊的第一區。在一些實施例中,第一區可為元資料區且第一類型的資訊可為元資料。錯誤校正碼(ECC)大小可變化。
在操作820中,可基於第一位址空間資訊執行第一類型介面操作。在一些例示性實施中,第一區可為元資料區且第一類型的資訊可為元資料。在一些實施例中,第一類型介面可為邏輯位址空間介面且可基於經邏輯定址資訊執行操作。邏輯介面操作可包含快閃轉譯邏輯(FTL),包括:接收元資料及邏輯位址;及將在系統層級配置處可見的位址區塊轉譯成實體層級配置處的位址區塊。
在操作830中,將裝置的第二部分配置或指定為用於儲存第二類型的資訊的第二區。在一些實施例中,第二區可為使用者資料區且第二類型的資訊可為使用者資料。SUE位址空間可抽象化或移除與實體位址空間相關聯的複雜度,同時仍曝露與基礎實
體位址空間配置的關係或對應關係。在一些例示性實施中,實體空間維度可抽象化成SUE位址頁面維度及SUE位址區塊維度。實體位址空間可由SUE位址抽象化。
在操作840中,可基於第二位址空間資訊執行第二類型介面操作,其中第二類型介面可選擇性地曝露基礎態樣。第二位址空間資訊可為選擇性基礎曝露(SUE)位址空間資訊,其中SUE位址空間資訊可對應於基礎態樣。基礎態樣可包含實體位址空間幾何佈置的代表性幾何佈置或維度。SUE介面可曝露與基礎系統管理操作(例如,自由空間管理、自由空間使用的回收及調節)相關聯的維度。元資料區中的過度供應百分比可不同於使用者資料區中的過度供應百分比。
圖9為說明根據一個實施例的例示性多模式SSD 920的方塊圖。在圖9中,多模式SSD 920與經邏輯定址SSD 910及經實體定址SSD 930處的習知嘗試形成對比。
經邏輯定址SSD 910可包含邏輯介面911、FTL 912及邏輯位址空間913。經實體定址SSD 930可包含實體介面931及實體位址空間932。多模式SSD 920可包含邏輯介面921、FTL 922、邏輯位址空間923、SUE介面924及實體位址空間925。
多模式SSD 920促進磁碟機的基礎態樣的便利及選擇性曝露。不同於並不充分曝露或具有過多複雜度的習知方法,多模式SSD 920允許進行適量曝露而不具有不當複雜度。
然而,習知SSD實際上並不通常為良好的線性位址空間,確切而言其通常具有含有快閃晶片的聚束的控制器,快閃晶片具有經配置以在由具有待儲存於電晶體的群組或字串中的資料的頁
面組成的區塊中操作的晶粒。經實體定址SSD 930嘗試曝露儲存媒體的所有基礎實體位址態樣,從而允許被視為(例如,相比於經邏輯定址SSD 910)極快速操作的操作,但會產生極複雜的方法。
藉由隱藏儲存媒體的態樣的所有或幾乎所有基礎細節的方案,經邏輯定址SSD 910具有被視為單一線性扁平映射空間的空間,然而,嘗試將資料最終儲存於具有許多所隱藏基礎細節的實體區中(例如,相比於經實體定址SSD 930)減緩系統。
多模式SSD 920促進FMS操作的便利及靈活配置及實施。多模式SSD 920可主要在多模式SSD 920的內部控制器(例如,圖7的控制器775)中執行針對邏輯位址空間923的FMS操作,而針對SUE位址空間925的FMS操作可主要在多模式SSD 920外部的控制器(例如,圖7的控制器745)中在系統層級處執行。
分離或劃分多模式SSD 920的FMS操作的此能力不同於用於並不允許FMS操作的分離或劃分的SSD 910及SSD 930的FMS操作方法。主要在經邏輯定址SSD 910的內部控制器中執行用於經邏輯定址SSD 910的FMS操作,而主要在系統層級處在經實體定址SSD 930外部的控制器中執行用於經實體定址SSD 930的FMS操作。
在一些實施例中,多模式SSD 920可選擇性地曝露一些基礎位址空間特徵,且經邏輯定址SSD 910及經實體定址SSD 930並不促進選擇性曝露一些基礎位址空間特徵,且亦不曝露其他特徵。在一些實施例中,將基礎態樣曝露至外部FMS(例如,多模式儲存管理系統720)可涉及映射基礎態樣的所選擇曝露。
本發明的另一實施例實施選擇性基礎曝露(SUE)映射方案,以產生自邏輯位址空間至儲存系統中的使用者資料的SUE位址空間的映射。SUE映射方案可選擇性地曝露基礎實體儲存媒體的顯著特徵以便准許某些儲存媒體管理功能橫跨多個儲存裝置在系統層級處而非在個別儲存裝置層級處予以執行。
舉例而言,一些實施例可實現橫跨儲存器具中的多個反及快閃非揮發性記憶體裝置選擇性曝露使用者位址空間的態樣。
SUE映射方案的SUE頁面及區塊可與共同管理為實體反及快閃非揮發性記憶體裝置中的每一者中的單元的對應實體頁面及區塊對準。在SUE映射方案中並不區分實體反及快閃非揮發性記憶體裝置中的個別晶粒,但仍然間接地反映於SUE區塊大小中。
儲存裝置的實體頁面及區塊與SUE映射方案的SUE頁面及區塊之間的相關性允許待在系統層級處橫跨儲存系統中的所有反及快閃非揮發性記憶體裝置協調且實施的某些反及快閃管理功能,諸如抹除、程式化、回收(廢料收集)、自由空間管理或其類似者。某些儲存媒體管理功能的系統層級實施可提供關於儲存資源供應的有利效率。
再次參照圖3,可結合在本發明中描述的SUE映射方案實施多模式儲存裝置(例如,350、400、620),諸如反及快閃非揮發性記憶體裝置。舉例而言,在一些實施例中,多模式儲存裝置可為基於反及快閃的固態磁碟機(SSD)。在一些實施例中,多模式儲存裝置可符合標準化實體外觀尺寸,諸如標準磁碟機外觀尺寸
或標準記憶卡外觀尺寸。
再次參照圖5,如上文所描述,多模式儲存裝置可包含具有數個反及快閃記憶體單元的多個晶粒511、512、513、514、521、522、523、524、531、532、533、534、541、542、543及544,或記憶體晶片。每一晶粒上的反及快閃記憶體單元可再分成記憶體單元的多個離散實體區塊,諸如實體區塊515、517、519、528及539。
可相對於多模式儲存裝置上的晶粒的一或多個離散分組上的記憶體單元的區塊執行自由空間的抹除及管理。舉例而言,多模式儲存裝置可包含一百二十八個晶粒,且可相對於來自作為群組或單元的一百二十八個晶粒中的每一者的一個區塊抹除及管理自由空間。替代性地,多模式儲存裝置可包含一百二十八個晶粒,且可相對於來自作為群組的晶粒子集(例如,三十二個晶粒的分組)的一個區塊抹除及管理自由空間。
圖10為描繪根據本發明的實施例的例示性SUE區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE頁面的方塊圖。
現參照圖10,繪示形成SUE區塊1010的一序列實體區塊1012、1014、1016及1018。記憶體單元的每一實體區塊1012、1014、1016及1018進一步再分成記憶體單元的多個離散實體頁面(例如,1021、1022、1023及1024)。SUE頁面1030包含來自對應SUE區塊1010中的每一實體區塊1012、1014、1016及1018的對應實體頁面1032、1034、1036及1038。
在本發明的一些實施例中,可產生多模式儲存裝置(例
如,350、400或620)中的記憶體單元的SUE配置。關於程式化及抹除,可相對於共同管理為單元的儲存裝置上的晶粒的每一分組組織SUE頁面及SUE區塊。SUE區塊可界定為包含各自分別選自包含於多模式儲存裝置的晶粒子集中的晶粒中的每一者的實體區塊的記憶體單元,且可將此等實體區塊作為單元共同抹除及管理。SUE頁面可界定為包含SUE區塊的離散區段或片段,且可共同程式化此等離散區段或片段。
舉例而言,在一些實施例中,多模式儲存裝置可包含一百二十八個晶粒,且可在包含於每一晶粒中的各別實體區塊上共同抹除及管理自由空間。對應SUE區塊1010可界定為包含一百二十八個實體區塊的記憶體單元,實體區塊各自分別選自多模式儲存裝置的一百二十八個晶粒。對應SUE頁面1030可界定為包含一百二十八個區段或片段,區段或片段分別對應於一百二十八個實體區塊。
在另一實施例中,多模式儲存裝置可包含一百二十八個晶粒,且(例如)可一次在三十二個晶粒的各別實體區塊上共同抹除及管理自由空間。對應SUE區塊1010可界定為包含三十二個實體區塊的記憶體單元,實體區塊各自分別選自多模式儲存裝置的三十二個晶粒。在此狀況下,對應SUE頁面1030可界定為包含三十二個區段或片段,區段或片段分別對應於三十二個實體區塊。
在又一實施例中,多模式儲存裝置可包含劃分成四個平面的一百二十八個晶粒,且可在包含於每一晶粒中的各別平面的區塊上管理自由空間。對應SUE區塊1010可界定為包含包含於記憶體裝置中的各別平面的一百二十八個區塊的記憶體單元。在
此狀況下,對應SUE頁面1030可界定為包含對應於各別平面的區塊的一百二十八個區段或片段。
圖11為描繪根據本發明的實施例的使用者儲存空間的例示性SUE區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE頁面的方塊圖。
現參照圖11,使用者儲存空間的例示性SUE區塊(S區塊)1110表示為方塊圖。在一些實施例中,SUE區塊1110可被視為類似於虛擬區塊(V區塊)。SUE區塊1110可為個別儲存裝置層級處的記憶體媒體管理操作的基本單元。SUE區塊可由多個SUE頁面(S頁面)組成。在一些例示性實施中,SUE頁面可被視為類似於虛擬頁面(V頁面)。舉例而言,圖11中描繪的SUE區塊1110包含四個SUE頁面(S頁面)1121、1122、1123及1124。
如圖5中所描繪,分派至SUE區塊(S-區塊)中的SUE頁面(S頁面)的實體記憶體單元可橫跨包含於單一多模式儲存裝置(例如,350、400或620)中的多個晶粒定位於對應實體頁面及實體區塊中。替代性實施例可包含基於實體抹除區塊大小與多模式儲存裝置的可程式化實體頁面大小之間的關係而劃分成任何數目個頁面的區塊。
圖12為描繪根據本發明的實施例的例示性SUE元頁面及用於儲存於多模式儲存裝置的使用者區域中的對應SUE頁面的方塊圖。
現參照圖12,例示性元頁面(MPAGE)1210表示為方塊圖。元頁面1210可由橫跨儲存系統中的多個儲存裝置的多個SUE頁面(S頁面)組成。舉例而言,圖12中描繪的元頁面1210包含
五個SUE頁面(S頁面)1211、1212、1213、1214及1215。替代性實施例可包含基於儲存系統中的個別多模式儲存裝置的數目及作為多模式儲存裝置中的每一者中的單元共同管理的晶粒數目劃分成任何數目個SUE頁面的元頁面。
分派至每一SUE頁面的實體記憶體單元可定位於個別多模式儲存裝置(例如,350、400或620)中。分派至形成元頁面1210的各種SUE頁面1211、1212、1213、1214及1215的記憶體單元可定位於與儲存系統(例如,儲存器具)相關聯的多個儲存裝置(例如,620、630、640及650)中。
因此,雖然SUE頁面1121、1122、1123及1124的大小或寬度可對應於作為每一多模式儲存裝置中的單元共同管理的晶粒的數目,但元頁面1210的大小或寬度可對應於包含於儲存系統中的多模式儲存裝置的數目。
圖13為描繪根據本發明的實施例的例示性SUE元區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE元頁面的方塊圖。
參照圖13,例示性的元區塊(M區塊)1310表示為方塊圖。元區塊(M區塊)1310可由多個元頁面1311、1312、1313及1314組成。如同元頁面(M頁面)1210,分派至元區塊(M區塊)1310的實體記憶體單元可定位於與儲存系統相關聯的多個儲存裝置中。亦即,元區塊(M區塊)1310可包含選自作為包含於儲存系統中的多模式儲存裝置(例如,620、630、640及650)中的每一者中的單元而共同管理的晶粒的對應子集中所包含的每一晶粒的各別區塊。因此,元區塊1310的大小可對應於在每一多模式儲
存裝置(例如,350、400或620)中共同管理的晶粒的數目及包含於儲存系統中的多模式儲存裝置(例如,620、630、640及650)的數目。
圖14為描繪根據本發明的實施例的另一例示性SUE元區塊及用於儲存於多模式儲存裝置的使用者區域中的對應SUE區塊的方塊圖。
參照圖14,例示性元區塊(M區塊)1410可表示為由多個SUE區塊(S區塊)1110組成的方塊圖。元區塊1410可為選自包含於儲存系統中的多模式儲存裝置(例如,620、630、640及650)中的每一者中所共同管理晶粒的每一子集的各別SUE區塊1411、1412、1413、1414及1415的聚合。類似地,元頁面1210可為選自元區塊1410中的對應SUE區塊1411、1412、1413、1414及1415中的每一者的對應SUE頁面(例如,1211、1212、1213、1214及1215)的聚合。
在本發明的一些實施例中,可在元區塊層級處執行某些記憶體媒體管理功能(例如,抹除、程式化、回收(廢料收集)、自由空間管理或其類似者)。換言之,可在儲存系統層級,而非個別儲存裝置層級處協調此等記憶體媒體管理功能。
為了實現所要系統層級記憶體管理,可將使用者資料專用的邏輯位址空間映射至SUE位址空間,使用者資料(例如)由應用程式及虛擬機(VM)作業系統定址。因此,包含於儲存系統中的多模式儲存裝置的使用者區域可藉由基礎曝露介面定址。系統層級記憶體映射及管理帶來較低的寫入放大因數,其允許減少的儲存區域供應從而導致成本節約。
圖15為描繪根據本發明的實施例的可由多模式儲存系統實施以提供自邏輯位址至SUE位址的位址映射的例示性SUE映射方案的方塊圖。
參照圖15,說明在本發明的實施例中可由儲存系統(諸如圖6的多模式儲存管理系統610)實施以提供自邏輯位址至SUE位址的位址映射的SUE映射方案1500。SUE映射方案1500可使邏輯位址空間與SUE位址空間相關。SUE位址空間可顯露基礎實體儲存媒體的顯著特徵。SUE位址空間可用於定址包含於儲存系統中的多個儲存裝置的聚合實體儲存空間。
使用者資料1502可接收為(例如)來自主機應用程式及虛擬機作業系統的輸入。主機使用者資料可經組織成對應於與本機主機檔案系統、介面標準或其類似者相關聯的邏輯區塊大小(例如,512K位元組的資訊段)的儲存單元(例如,經邏輯定址區塊或邏輯區塊)。所接收使用者資料的每一邏輯區塊可由邏輯區塊位址(LBA)定址。舉例而言,在一些實施例中,輸入邏輯區塊定址可與由美國國家標準學會(ANSI)頒佈的小電腦系統介面(Small Computer System Interface;SCSI)標準相關聯。
使用者資料1502的經邏輯定址區塊可組合為SUE可定址單元或混合映射系統(hybrid mapping system;HMS)映射區塊(hybrid mapping block;HMB)。在一些實施例中,整數個邏輯區塊可經分組以形成SUE可定址單元。舉例而言,在圖15中,八個邏輯區塊經組合以形成每一SUE可定址單元。在替代性實施例中,任何整數或分數數目個邏輯區塊可經組合以形成SUE可定址單元。
在一些實施例中,SUE可定址單元可具有用於儲存系統的最小映射粒度。在各種實施例中,SUE可定址單元大小可包含4K位元組、8K位元組或任何其他合適大小或碎塊的資訊。
在一些實施例中,儲存系統可包含磁碟區集合,且每一磁碟區可包含SUE可定址單元的集合,且每一可定址單元可包含邏輯單元的集合。不同磁碟區可分別利用不同SUE可定址單元大小。
應瞭解的是,磁碟區可具有數個特性。磁碟區可對應於:應用程式、單一使用者層級檔案系統、邏輯驅動、名稱空間(例如,與給定名稱空間相關聯的相鄰邏輯位址集)、LUN(邏輯單元數目)等等。
在所描繪的實例實施中:由邏輯區塊位址1521、1522、1523、1524、1525、1526、1527及1528定址的經邏輯定址區塊1531、1532、1533、1534、1535、1536、1537及1538組合為SUE可定址單元1503;由邏輯區塊位址1541、1542、1543、1544、1555、1546、1547及1548定址的經邏輯定址區塊1551、1552、1553、1554、1555、1556、1557及1558組合為SUE可定址單元1504;及由邏輯區塊位址1571、1572、1573、1574、1575、1576、1577及1578定址的經邏輯定址區塊1581、1582、1583、1584、1585、1586、1587及1588組合為SUE可定址單元1505。邏輯區塊可跨越可定址單元。每可定址單元可存在多個區塊。
可視情況對SUE可定址單元(例如,1503、1504及1505)中的使用者資料1502執行資料壓縮演算法,以產生經壓縮SUE可定址單元(例如,1507、1508及1509)。標頭部分(例如,1511、1512及1513)可產生為對應於每一經壓縮SUE可定址單元(例
如,1507、1508及1509)。標頭部分可含有(例如)用於回收及資料恢復活動的資訊。
經壓縮SUE可定址單元及標頭部分可置放於儲存裝置傳送區塊或SSD傳送區塊(STB)1515及1517中。在所描繪的實例中,標頭部分1511、1512及1513及對應經壓縮SUE可定址單元1507、1508及1509包含於STB 1515及1517中。在一些實施例中,可允許經壓縮SUE可定址單元以及使用者資料1502的封閉邏輯區塊橫跨兩個或大於兩個儲存裝置傳送區塊。
整數個儲存裝置傳送區塊可對準至SUE頁面1591、1592、1593及1594以用於傳送至多模式儲存裝置。在一些實施例中,可允許經壓縮SUE可定址單元以及使用者資料1502的封閉邏輯區塊橫跨兩個或大於兩個SUE頁面1591、1592、1593及1594。
在一些實施例中,錯誤檢查,諸如錯誤校正碼(ECC),可不相對於使用者資料1502在系統層級處予以實施,而是錯誤檢查必須由個別多模式儲存裝置實施。
與使用者資料相關聯的元資料可儲存於多模式儲存裝置(例如,350、400或620)的經邏輯定址系統區域中。舉例而言,在一些實施例中,多模式儲存裝置中使用邏輯區塊定址所定址的記憶體單元分割區可儲存可將SUE可定址單元映射至SUE位址空間的映射表。舉例而言,映射表可儲存指標,所述指標中的每一者可指向個別SUE可定址單元。因此,可使用SUE可定址單元的映射及邏輯區塊與SUE可定址單元的對應偏移來判定使用者資料的邏輯區塊在SUE位址空間中的對應儲存位置。
在一些實施例中,資訊可儲存於磁碟區(例如,671、672
及673)中。可存在多個磁碟區或名稱空間且不同磁碟區或名稱空間可與不同大小的SUE可定址單元相關聯。亦應瞭解的是,不同大小的磁碟區或名稱空間可與相同大小的SUE可定址單元相關聯。
圖16為描繪可實施圖15的SUE映射方案的例示性儲存系統的示意圖。如圖16中所說明,例示性儲存系統1602可包含處理器1604、記憶體1606、網路介面1608、輸入/輸出(I/O)裝置1610、顯示裝置1612、匯流排1614及多個非揮發性記憶體裝置1616。儲存裝置1602的各種組件可由本地資料鏈路1618耦接,所述鏈路在各種實施例中併入有(例如)位址匯流排、資料匯流排、串列匯流排、平行匯流排或此等匯流排的任何組合。
處理器1604可包含適於控制儲存系統1602的任何一般或特殊應用數位處理器。記憶體1606可包含適於儲存用於由處理器1604存取的資料及指令的任何數位記憶體裝置。
網路介面1608可包含適於以通信方式將儲存系統1602連接至通信網路(例如,區域網路(LAN)或網際網路協定(IP)網路)的任何網路連接介面。網路介面1608可實施儲存網路連接標準,例如網際網路小型電腦系統介面(iSCSI)協定。
輸入/輸出裝置1610可包含用於發送數位資訊至儲存系統1602或自所述儲存系統接收數位資訊的任何合適裝置。顯示裝置1612可包含用於顯示文本或圖形使用者介面(GUI)的任何合適裝置。
匯流排1614可包含(例如)周邊組件互連快速(PCIe)匯流排、或用於儲存系統中的通信的任何其他合適高速串列擴展
匯流排。匯流排1614可利用標準NVM快速(NVMe)、或非揮發性記憶體主機控制器介面規範(Non-Volatile Host Controller Interface Specification;NVMHCI),以存取儲存系統1602中的儲存裝置,諸如非揮發性記憶體裝置1616。非揮發性記憶體裝置1616可包含(例如)基於反及快閃的固態硬碟機(SSD)、或任何其他合適的非揮發性記憶體裝置。
在替代性實施例中,一般計算裝置可實施圖15的SUE映射方案1500的功能。舉例而言,一般計算裝置可包含伺服器、工作台、個人電腦或其類似者。
儲存於電腦可讀媒體,諸如非揮發性記憶體裝置1616上的程式碼(諸如,原始程式碼、目標程式碼或可執行程式碼)可載入至工作記憶體或操作記憶體(例如,記憶體1606)中,且由處理器1604執行以便執行圖15的SUE映射方案1500的功能。在替代性實施例中,可執行指令可儲存於韌體中,或功能可由專用硬體執行。
圖17為表示根據本發明的實施例將邏輯位址空間映射至SUE位址空間的例示性方法的流程圖。現參照圖17,例示性程序流程可(例如)由圖16的儲存系統1602執行以實施在本發明中所描述的用於將邏輯位址空間映射至SUE位址空間以便定址包含於儲存系統中的多個儲存裝置的聚合實體儲存空間的SUE映射方案的實施例。
程序在操作1702處開始,其中(例如)自主機應用程式或虛擬機作業系統接收使用者資料。所接收使用者資料可在邏輯區塊中經組織並由邏輯區塊位址定址。邏輯區塊可對應於與本機
主機檔案系統、資料庫或其類似者相關聯的最小可定址記憶體單元大小。
在操作1704中,如上文所描述,可將邏輯區塊組合為SUE可定址單元。舉例而言,整數個邏輯區塊可經分組以形成每一SUE可定址單元。在操作1706中,可視情況對SUE可定址單元中的使用者資料執行資料壓縮演算法,如上文所解釋。(圖17中用短劃線繪示的組件為可選項目。)
在操作1708中,可產生標頭部分並將其添加至每一SUE可定址單元。標頭部分可產生為包含(例如)用於回收及資料恢復活動的資訊,如上文所描述。在操作1710中,可將經壓縮SUE可定址單元及標頭部分置放於儲存裝置傳送區塊中,如上文所解釋。
在操作1712中,如上文所進一步解釋,可連接整數個儲存裝置傳送區塊且使其對準至SUE頁面,且在操作1714中,可將對應於SUE頁面的儲存裝置傳送區塊傳送至多模式儲存裝置以儲存於使用者區域中。在操作1716中,可將關於SUE頁面中的使用者資料的元資料發送至多模式儲存裝置以儲存於系統區域中,如上文所描述。
本發明的另一實施例繪示於圖18中,其說明利用SUE定址方案以便允許儲存系統定址儲存系統(諸如,圖16的儲存系統1602)中的邏輯及SUE儲存空間的例示性多模式儲存管理系統1802。多模式儲存管理系統1802可包含SUE儲存管理器1804、邏輯儲存管理器1806、回收管理器1808及儲存陣列管理器1810。
SUE儲存管理器1804可提供使用者資料儲存映射、讀取及寫入功能。SUE儲存管理器1804可使用SUE位址映射方案將使用者資料映射至儲存系統的使用者區域。SUE儲存管理器1804可藉由至儲存系統的儲存裝置的SUE介面存取儲存於使用者區域中的使用者資料。
SUE映射方案可在儲存系統與儲存裝置之間分佈邏輯區塊位址至實體位址映射函數。亦即,SUE映射方案可組合自邏輯區塊位址至SUE位址的儲存系統層級映射或虛擬化與自SUE位址至實體位址的儲存裝置層級映射或轉譯。
SUE映射方案可向儲存系統曝露儲存裝置的某些實體特徵,或代表性幾何佈置,使得關於使用者資料的某些非揮發性記憶體管理功能能夠在儲存系統層級處,而非在個別儲存裝置層級處橫跨多個儲存裝置而予以執行。自個別儲存裝置層級至儲存系統層級的使用者資料管理任務的此重新分佈可產生系統效率,包含減少的寫入放大因數,從而准許減少的資源供應及降低成本。
邏輯儲存管理器1806可提供系統資料儲存映射、讀取及寫入功能。邏輯儲存管理器1806可使用邏輯位址映射方案(諸如,邏輯區塊定址(logical block addressing;LBA))將系統資料映射至儲存裝置的系統區域。邏輯儲存管理器1806可藉由至儲存裝置的邏輯介面存取儲存於系統區域中的系統資料。
因此,在一些實施例中,可將相關聯儲存裝置或多個相關聯儲存裝置中的每一者的記憶體空間再分或分割成單獨儲存區域或位址空間,包含經邏輯定址系統區域及經SUE定址使用者區域。
儲存裝置可包含兩個主機介面:可提供對經邏輯定址系統區域的
存取的邏輯主機介面及可提供對經SUE定址使用者區域的存取的SUE主機介面。關於系統資料的非揮發性記憶體管理功能可個別儲存裝置控制器由執行。
回收管理器1808可在儲存系統層級處提供關於使用者資料的非揮發性記憶體管理(包含自由空間管理及回收或廢料收集)功能。因此,包含於儲存系統中的個別儲存裝置可不執行用於使用者資料的本地回收(廢料收集)。回收管理器1808可實施各種自由空間管理及回收方法。在一些實施例中,回收管理器1808亦可執行描述於本發明中的新穎自由空間管理及回收方法。
儲存陣列管理器1810,或獨立磁碟冗餘陣列(RAID)管理器可關於使用者資料為包含於儲存系統中的多個儲存裝置的陣列提供儲存管理,包含資料恢復功能。因此,包含於儲存系統中的個別儲存裝置可不執行用於使用者資料的晶粒層級RAID功能。
儲存陣列管理器1810可實施各種儲存管理及資料恢復方法。在一些實施例中,儲存陣列管理器1810亦可執行描述於本發明中的新穎儲存管理及資料恢復方法。
現參照圖19,說明利用SUE定址方案以便允許儲存系統定址儲存系統(諸如,圖16的儲存系統1602)中的邏輯及SUE儲存空間的另一例示性多模式儲存管理系統1902。多模式儲存管理系統1902可包含資料對準單元(data alignment unit;DAU)1904、SUE儲存存取管理器1906、資料壓縮管理器1908、磁碟區映射引擎1910、緩衝管理器1912、元區塊管理器1914、回收管理器1916、儲存陣列管理器1918及邏輯儲存存取管理器2020。
資料對準單元(DAU)1904可接收經邏輯定址媒體存取
命令,例如來自小型電腦系統介面(SCSI)目標的讀取、寫入及取消映射命令。所述命令利用邏輯區塊定址(LBA),其為基於由整數索引指示記憶體區塊的線性定址方案的SCSI記憶體位置抽象化標準。在邏輯區塊定址中,單一整數基底位址用於識別資料的每一邏輯區塊的開始,且每一線性基底位址唯一地與單一邏輯區塊相關聯。因此,邏輯區塊定址隱藏或遮蔽來自作業系統、檔案系統、裝置驅動器及主機應用程式的儲存裝置的特定細節或特徵。
在寫入操作期間,資料對準單元1904可將自SCSI目標所接收資料的邏輯區塊組合為SUE映射區塊。舉例而言,在一些實施例中,整數個邏輯區塊可經分組以形成SUE映射區塊。資料壓縮管理器1908可視情況對SUE映射區塊中的使用者資料執行資料壓縮演算法。
在讀取操作期間,資料對準單元1904可自SCSI目標接收讀取命令並將讀取請求傳遞至SUE儲存存取管理器1906。資料對準單元1904可自SUE儲存存取管理器1906接收所請求使用者資料並將所請求使用者資料傳遞至SCSI目標。
SUE儲存存取管理器1906可提供使用者資料讀取及寫入功能。在寫入操作期間,SUE儲存存取管理器1906可產生用於每一SUE映射區塊的標頭部分。標頭部分可含有(例如)用於回收及資料恢復活動的資訊。SUE儲存存取管理器1906可將經壓縮SUE映射區塊連同對應標頭部分一起置放於儲存裝置傳送區塊中。在一些實施例中,允許經壓縮SUE映射區塊以及使用者資料的封閉邏輯區塊橫跨兩個或大於兩個儲存裝置傳送區塊。
SUE儲存存取管理器1906進一步可將整數個儲存裝置傳
送區塊對準至SUE頁面以用於傳送至儲存裝置。SUE儲存存取管理器1906可將對應於SUE頁面的儲存裝置傳送區塊傳送至寫入緩衝器。
在一些實施例中,允許經壓縮SUE映射區塊以及使用者資料的封閉邏輯區塊橫跨兩個或大於兩個SUE頁面。每一SUE頁面可對應於儲存系統的個別儲存裝置。在SUE映射方案中,SUE頁面可為程式化或寫入操作的基本單元。
在讀取操作期間,SUE儲存存取管理器1906可判定所請求使用者資料的位置,並請求將所請求使用者資料自相關聯儲存裝置讀取至讀取緩衝器。SUE儲存存取管理器1906可將使用者資料自讀取緩衝器傳送至資料對準單元1904。
作為SUE定址方案的子功能或作為補充功能,資料壓縮管理器1908可對使用者資料執行壓縮演算法。由資料壓縮管理器1908執行的資料壓縮功能可有助於偏移導致寫入放大的固有系統因素。
磁碟區映射引擎1910可協調SUE位址映射功能。磁碟區映射引擎1910可維持記錄使用者資料的當前位置的使用者區域映射表。使用者區域映射表可包含使所儲存使用者資料的邏輯區塊位址相關於SUE位址的映射資訊。使用者區域映射表可儲存於相關聯儲存裝置的經邏輯定址系統區域中。
在寫入操作期間,磁碟區映射引擎1910可基於關於所寫入使用者資料的自SUE儲存存取管理器1906所接收的新或經修訂SUE位址位置而更新使用者區域映射表。
在讀取操作期間,磁碟區映射引擎1910可基於所請求邏
輯區塊位址而在使用者區域映射表中查找所請求使用者資料的SUE位址位置,並向SUE儲存存取管理器1906提供SUE位址位置。
磁碟區映射引擎1910可將使用者資料組織成SUE頁面、SUE區塊、元頁面及元區塊。一SUE區塊可映射個別儲存裝置上的數個實體區塊。在一些實施例中,映射至同一SUE區塊的實體區塊可分別位於儲存裝置的單獨晶粒上。可在儲存裝置層級處將映射至同一SUE區塊的所有實體區塊作為一單元進行抹除及管理。因此,SUE區塊可對應於在各別晶粒上關於回收及自由空間管理所共同管理的實體區塊群組。等效地,可將對應於SUE區塊的晶粒上的各別實體區塊群組作為儲存媒體的單元進行管理。
每一SUE區塊可包含數個SUE頁面,其中的每一者可對準至映射至SUE區塊的各別實體區塊的實體頁面。橫跨包含於儲存系統中的所有儲存裝置定位的各別SUE區塊的對應SUE頁面可映射至元頁面。類似地,橫跨包含於儲存系統中的所有儲存裝置定位的對應SUE區塊可映射至元區塊。
可在多模式儲存管理系統1902層級處關於使用者資料的元區塊執行儲存媒體管理功能(例如,回收及自由空間管理)。因此,可在多模式儲存管理系統1902層級處關於在包含於儲存系統中的每一儲存裝置中所共同管理的對應實體區塊群組執行儲存媒體管理功能。
可關於使用者資料的元頁面執行程式化操作及讀取操作。因此,可關於在包含於儲存系統中的每一非揮發性記憶體裝置中所共同管理的對應實體頁面群組執行程式化操作及讀取操作。
因此,可以向多模式儲存管理系統1902曝露實體儲存區域的顯著組織或代表性幾何佈置的方式虛擬化包含於儲存系統中的儲存裝置。在包含於單一儲存裝置中的各別晶粒上共同管理的實體區塊群組可作為SUE區塊而呈現至多模式儲存管理系統1902,且在橫跨包含於儲存系統中的所有儲存裝置而定位的各別晶粒上所共同管理的對應實體區塊群組可作為元區塊而呈現至多模式儲存管理系統1902。
類似地,在包含於單一儲存裝置中的各別晶粒上共同程式化的實體頁面群組可作為SUE頁面而呈現至多模式儲存管理系統1902,且在橫跨包含於儲存系統中的所有儲存裝置而定位的各別晶粒上所共同程式化的實體頁面群組可作為元頁面而呈現至多模式儲存管理系統1902。
緩衝管理器1912可管理讀取及寫入緩衝器的集區。在寫入操作期間,在借助於儲存陣列管理器1918將使用者資料作為SUE頁面單獨地發送至個別儲存裝置之前,緩衝管理器1912可將自SUE儲存存取管理器1906所接收的儲存裝置傳送區塊累積於寫入緩衝器中,直至已大約累積使用者資料的整個元頁面為止。
在讀取操作期間,緩衝管理器1912可提供讀取緩衝器以支援讀取快取功能。可將自儲存陣列管理器1918接收為儲存裝置傳送區塊的使用者資料的SUE頁面保存於讀取緩衝器中,直至被轉遞至SUE儲存存取管理器1906為止。
元區塊管理器1914可追蹤界定於儲存裝置的使用者區域中的個別元區塊的當前狀態,例如,已抹除、有效、封閉、回收或正抹除。當前狀態可儲存於可儲存於記憶體中且備份於儲存裝置
的系統區域中的元區塊資訊表中。元區塊管理器1914亦可保持當前處於特定狀態的元區塊的對應清單,諸如已抹除清單、回收清單及正抹除清單。元區塊管理器1914可選擇特定元區塊以用於提交至SUE儲存存取管理器1906以供回收活動。
回收管理器1916可服務來自元區塊管理器1914的自所指定元區塊恢復有效使用者資料,及將有效使用者資料重定位至其他元區塊的回收請求。回收管理器1916可請求抹除及回收對應於所指定元區塊的實體記憶體單元,以在儲存裝置的使用者區域中提供自由空間。
儲存陣列管理器1918可為儲存裝置的使用者區域提供SUE介面,以及為儲存裝置的系統區域提供邏輯介面。儲存陣列管理器1918可提供資料保護功能,諸如RAID條串化及同位檢查。
舉例而言,在一些實施例中,儲存裝置傳送區塊可用作RAID元件,且RAID條串可包含橫跨元頁面中的所有SUE頁面而定位的儲存裝置傳送區塊。因此,若儲存系統中的單一儲存裝置發生故障,則儲存陣列管理器1918能夠使用反向同位計算自發生故障的儲存裝置恢復資料。
邏輯儲存存取管理器1920可使用邏輯定址方法提供系統資料讀取及寫入功能。邏輯儲存存取管理器1920可儲存並擷取關於使用者資料的元資料,包含使用者區域映射表、元區塊資訊表、磁碟區表以及儲存系統檔案、記錄檔檔案及其類似者。
關於儲存於使用者區域中的使用者資料,個別非揮發性記憶體裝置可負責某些記憶體媒體管理功能(例如,讀取重試、故障-實體區塊映射、錯誤校正碼(ECC)、先進增量階躍脈衝程式化
(advanced incremental step pulse programming;ISPP)或其類似者)。
關於儲存於系統區域中的系統資料,個別非揮發性記憶體裝置可負責所有記憶體媒體管理功能(例如,回收、耗損均衡、讀取及寫入快取、讀取重試、故障-實體區塊映射、錯誤校正碼(ECC)、先進增量階躍脈衝程式化(ISPP)或其類似者)。
現參照圖20,說明利用SUE定址方案以便允許儲存系統定址儲存裝置中的邏輯及SUE儲存空間的另一例示性多模式儲存管理系統2002或混合映射系統(hybrid mapping system;HMS)。
多模式儲存管理系統2002可充當全域快閃轉譯層(global
flash translation layer;GFTL),GFTL負責關於橫跨包含於儲存系統中的多個儲存裝置而分佈的使用者區域的非揮發性記憶體媒體管理。多模式儲存管理系統2002可執行非揮發性記憶體媒體存取功能、用以將主機應用程式邏輯位址空間元素映射至對準至實體非揮發性記憶體位置的SUE位址空間資料結構的位址映射功能、回收及耗損均衡功能。
多模式儲存管理系統2002可包含資料對準單元(DAU)2004、使用者區域存取管理器(UAAM)2006、使用者區域映射引擎(UAME)2008、緩衝管理器(buffer manager;BM)2010、系統區域存取管理器(system area access manager;SAAM)2012、元區塊管理器(MBM)2014、元區塊資訊管理器(metablock information manager;MBI)2016、儲存裝置控制管理器(SCM)2018、儲存裝置存取管理器(SAM)2020、全域狀態管理器(GSM)2022及全域錯誤管理器(global error manager;GEM)2024。多模式儲存管理系統2002可以通信方式連接至系統狀態管理器2026、
系統登入及統計管理器2028、目標裝置2030及多個非揮發性記憶體(NVM)裝置2032。
全域錯誤管理器2024可管理發生於儲存系統(包含多模式儲存管理系統2002)中的全域錯誤。系統狀態管理器2026可管理多模式儲存管理系統2002的狀態(例如,操作條件)。系統登入及統計管理器2028可基於儲存系統(包含多模式儲存管理系統2002)的操作而提供系統記錄檔/統計。非揮發性記憶體裝置2032可包含廣泛使用的任何種類的非揮發性記憶體。目標裝置2030可為為讀取/寫入操作的目標的另一記憶體裝置。
資料對準單元(DAU)2004可自目標裝置2030接收經邏輯定址媒體存取命令,例如,讀取、寫入及取消映射命令。資料對準單元2004可將邏輯區塊定址(LBA)緩衝清單作為輸入接收。
在寫入操作期間,資料對準單元2004可將自目標裝置2030接收的資料的邏輯區塊組合成SUE映射區塊或混合映射區塊(HMB)。
舉例而言,在一些實施例中,整數個邏輯區塊可經分組以形成SUE映射區塊。
資料對準單元2004可固結自目標裝置2030到達的對準及未對準使用者資料訊務兩者,從而對未對準寫入訊務執行讀取/修改/寫入操作以便將資料對準至單元以用於將邏輯位址映射至實體位址(SUE映射區塊)。資料對準單元2004可將使用者資料置放於SUE映射區塊對準緩衝清單中。在各種實施例中,SUE映射區塊可含有固定數量的資料,諸如4KB、8KB、16KB或其類似者。
在讀取操作期間,資料對準單元2004可自目標裝置2030接收讀取命令並將讀取請求傳遞至使用者區域存取管理器2006。
資料對準單元2004可自使用者區域存取管理器2006接收所請求使用者資料並將所請求使用者資料傳遞至目標裝置2030。
圖21為說明根據本發明的實施例的可由多模式儲存管理系統實施的使用者區域存取管理器(user area access manager;UAAM)的示意圖。參照圖21,使用者區域存取管理器(UAAM)2006可包含讀取管理器(read manager;RM)2102、寫入管理器(write manager;WM)2104、資料壓縮管理器(data compression manager;DC)2106、資料解壓縮管理器(data decompression manager;DD)2108、回收管理器(reclamation manager;RC)2110、自由空間帳戶管理器(free space account manager;FSA)2112、流程控制管理器(flow control manager;FC)2114及服務品質管理器(quality of service manager;QoS)2116。
讀取管理器(RM)2102可自資料對準單元2004接收讀取請求並服務所述讀取請求。讀取管理器2102可自使用者區域映射引擎(user area mapping engine;UAME)2008請求相關映射資訊。讀取管理器2102可將讀取請求公佈至儲存裝置存取管理器2020。在讀取操作期間,讀取管理器2102可自緩衝管理器2010請求釋放讀取緩衝器中的使用者資料。讀取管理器2102可向資料解壓縮管理器2108公佈關於所讀取請求使用者資料的解壓縮請求。
寫入管理器(WM)2104可自資料對準單元2004接收寫入請求。在寫入操作期間,寫入管理器2104可在SUE映射區塊串流上產生元資料標頭,且為使用者區域映射引擎2008產生關於使用者資料的SUE定址的映射資訊。寫入管理器2104可向資料壓縮管理器2106公佈壓縮請求以排程使用者資料壓縮命令,並向儲
存裝置存取管理器2020公佈寫入請求。寫入管理器2104可自緩衝管理器2010請求釋放寫入緩衝器中的使用者資料。當寫入資料的當前元區塊已變得充滿時,寫入管理器2104可請求元區塊管理器(MBM)2014開放新的有效元區塊。
資料壓縮管理器(DC)2106可自寫入管理器2104接收壓縮請求並服務所述壓縮請求。在一些實施例中,資料壓縮管理器2106可對SUE映射區塊中的使用者資料實施資料壓縮演算法。在一些其他實施例中,資料壓縮管理器2106可向外部壓縮單元(未繪示)排程資料壓縮任務。
資料解壓縮管理器(DD)2108可自讀取管理器2102接收解壓縮請求並服務所述解壓縮請求。在一些實施例中,資料解壓縮管理器2108可對SUE映射區塊中的使用者資料實施資料解壓縮演算法。在一些其他實施例中,資料解壓縮管理器2108可向外部解壓縮單元(未繪示)排程資料解壓縮任務。
回收管理器(RC)2110可自元區塊管理器2014接收回收請求並服務所述回收請求,以自所指定元區塊恢復有效資料來回收自由空間。回收管理器2110可自使用者區域映射引擎2008請求相關映射資訊並向讀取管理器2102公佈關於所指定元區塊的讀取請求。回收管理器2110可解析伴隨有儲存裝置讀取資料串流中的SUE映射區塊的元資料標頭,並向寫入管理器2104公佈關於所指定元區塊中剩餘的的所有有效資料的寫入請求。回收管理器2110亦可服務來自儲存裝置控制管理器(SCM)2018的請求以回收部分元區塊資料。
自由空間帳戶管理器(free space account manager;FSA)
2112可在寫入操作期間自寫入管理器2104接收映射資訊,並產生關於儲存於元區塊中的過時使用者資料的自由空間資訊。自由空間帳戶管理器2112可向元區塊資訊管理器2016公佈自由空間資訊以更新對應元區塊資訊表條目。
流程控制管理器(FC)2114可監視系統資源,諸如讀取/寫入緩衝器、壓縮緩衝器、儲存匯流排及其他佇列深度,或其類似者。若系統層級資源供應低於預設限制,則流程控制管理器2114可重設服務品質管理器2116中的向下調節水平。在一些實施例中,可使用系統管理員命令建立所要求層級的資源供應。流程控制管理器2114可向系統管理員提供統計,所述統計可用於介面層級調節。
服務品質管理器(QoS)2116可基於系統資源供應層級及潛時量測而界定服務品質策略。服務品質管理器2116可實施多個佇列以服務不同服務品質策略集區。關於基於潛時的策略,服務品質管理器2116可對佇列條目實施時戳。服務品質管理器2116可監視各種佇列參數並選擇請求以確保並不違反策略。在流程控制管理器2114的請求下,服務品質管理器2116可向下調節基於供應的策略佇列上的訊務。
圖22為說明根據本發明的實施例的可由多模式儲存管理系統實施的使用者區域映射引擎(UAME)的示意圖。參照圖22,使用者區域映射引擎(UAME)2008可包含磁碟區管理器(volume manager;VM)2202、映射頁面讀取管理器(map page read manager;MPRM)2204、映射頁面寫入管理器(map page write manager;MPWM)2206及映射頁面快取管理器(map page cache manager;
MPCM)2208。
磁碟區管理器(VM)2202可提供產生、摧毀及管理磁碟區及處置多個供應策略的服務。磁碟區管理器2202可將相關資訊維持於可儲存於記憶體中且備份於系統區域中的磁碟區表中,且可提供對磁碟區表中的條目的存取服務。磁碟區管理器2202可使用系統區域存取管理器2012以備份及恢復磁碟區表。
當映射頁面未中由映射頁面快取管理器2208偵測到時,映射頁面讀取管理器(MPRM)2204可接收並服務自映射頁面快取管理器2208提供的對於不存在映射頁面的請求。映射頁面寫入管理器(MPWM)2206可接收並服務來自映射頁面快取管理器2208的對於映射頁面收回的請求。
映射頁面快取管理器(MPCM)2208可服務自讀取管理器2102及回收管理器2110提供的映射條目資訊請求,以及由寫入管理器2104提供的映射條目更新。當偵測到映射頁面未中時,映射頁面快取管理器2208可自映射頁面讀取管理器2204請求不存在的映射頁面。映射頁面快取管理器2208可自映射頁面寫入管理器2206請求映射頁面收回。
緩衝管理器(BM)2010可管理讀取及寫入緩衝器的集區。
在寫入操作期間,緩衝管理器2010可分配並釋放儲存裝置傳送區塊以將自寫入管理器2104接收的使用者資料累積於寫入緩衝器中。當大約已累積使用者資料的完整元頁面時,緩衝管理器2010可自寫入管理器2104接收對於釋放寫入緩衝器中的使用者資料的請求,並將使用者資料轉遞至儲存裝置存取管理器2020。
在讀取操作期間,緩衝管理器2010可分配並釋放讀取緩
衝器中的儲存裝置傳送區塊以支援讀取快取功能。自儲存裝置存取管理器2020接收為儲存裝置傳送區塊的使用者資料的SUE頁面可最初保存於讀取緩衝器中。緩衝管理器2010可自讀取管理器2102接收對於釋放讀取緩衝器中的使用者資料的請求,且緩衝管理器2010可將儲存裝置傳送區塊轉遞至讀取管理器2102。
系統區域存取管理器(system area access manager;SAAM)2012可服務關於存取包含於儲存系統中的儲存裝置的系統區域中所儲存的系統資料的請求。系統區域存取管理器2012可接收並服務來自磁碟區管理器2202及元區塊資訊管理器2016的分別備份及恢復磁碟區表及元區塊資訊表的請求。系統區域存取管理器2012可接收並服務來自映射頁面寫入管理器2206、映射頁面讀取管理器2204及映射頁面快取管理器2208的存取使用者區域映射表的請求。
圖23為說明根據本發明的實施例的可由多模式儲存管理系統實施的元區塊管理器(MBM)的示意圖。參照圖23,元區塊管理器2014可包含回收元區塊選取器(reclamation metablock picker;RCMBP)2302及元區塊狀態管理器(metablock state manager;MBSM)2304。
回收元區塊選取器(RCMBP)2302可監視關於使用者區域元區塊的參數,諸如抹除計數、過時資料層級、停留時間及其類似者。基於所監視參數,回收元區塊選取器2302可選擇用於回收或廢料收集的元區塊。回收元區塊選取器2302可實施各種耗損均衡策略。舉例而言,回收元區塊選取器2302可嘗試將元區塊抹除計數維持在較佳值範圍內,並嘗試分離單獨元區塊中的相對動態
(熱)與相對靜態(冷)資料。
元區塊狀態管理器(MBSM)2304可追蹤使用者區域元區塊的當前狀態,例如,有效、封閉、正抹除、已抹除、回收或廢料收集。元區塊狀態管理器2304可藉由更新元區塊資訊表來藉由各種狀態轉變元區塊。元區塊狀態管理器2304亦可維持處於特定狀態的各種元區塊清單,例如,已抹除元區塊清單、回收元區塊清單及正抹除元區塊清單。元區塊狀態管理器2304可監視已抹除元區塊清單以判定準備用於回收(廢料收集)的個別元區塊。
元區塊資訊管理器(MBI)2016可維持元區塊資訊表。元區塊資訊管理器2016可向其他模組提供對元區塊資訊表中的條目的存取服務。元區塊資訊管理器2016可向系統區域存取管理器2012發送備份及恢復元區塊資訊表的請求。
圖24為說明根據本發明的實施例的可由多模式儲存管理系統實施的儲存裝置控制管理器(SCM)的示意圖。參照圖24,儲存裝置控制管理器(SCM)2018或固態裝置(SSD)控制管理器(SCM)可包含儲存裝置登入及統計管理器(storage device logging and statistics manager;SLS)2402、S區塊抹除引擎(S-Block erase engine;SBEE)2404及儲存裝置錯誤管理器(storage device error manager;SEM)2406。
儲存裝置登入及統計管理器(SLS)2402可維持儲存裝置存取歷史的記錄檔。
S區塊抹除引擎(SBEE)2404可藉助於元區塊管理器2014自回收管理器2110接收抹除請求並管理抹除程序。S區塊抹除引擎2404可將S區塊抹除請求發送至儲存裝置存取管理器2020。
儲存裝置錯誤管理器(SEM)2406可將回收部分元區塊資料的請求發送至回收管理器2110。
圖25為說明根據本發明的實施例的可由多模式儲存管理系統實施的儲存裝置存取管理器(SAM)的示意圖。參照圖25,儲存裝置存取管理器(SAM)2020可包含邏輯存取管理器(logical access manager;SLA)2502、RAID管理器(RAID)2504、讀取查找引擎(read lookup engine;RLE)2506及儲存初始化管理器(storage initialization manager;SI)2508。
讀取查找引擎2506可提供/管理讀取操作查找。儲存初始化管理器2508可管理儲存系統的初始化操作。
邏輯存取管理器(SLA)2502或SSD邏輯存取管理器可提供關於儲存裝置的系統區域中的系統資料的存取服務。邏輯存取管理器2502可使用各種邏輯區塊定址以定址儲存裝置的系統區域中的系統資料。邏輯存取管理器2502可利用標準NVM快速(NVMe)或非揮發性記憶體主機控制器介面規範(Non-Volatile Memory Host Controller Interface Specification;NVMHCI),且可發送命令以存取包含於儲存系統中的儲存裝置或固態磁碟機(SSD)。
RAID管理器(RAID)2504可為包含於儲存系統中的多個儲存裝置陣列提供關於使用者資料的儲存管理,包含資料恢復功能。因此,包含於儲存系統中的個別儲存裝置可不執行用於使用者資料的晶粒層級RAID功能。RAID管理器2504可實施各種儲存管理及資料恢復方法。在一些實施例中,RAID管理器2504亦可執行本發明中所描述的新穎儲存管理及資料恢復方法。
RAID管理器2504可提供與儲存裝置的使用者區域的SUE介面,以及與儲存裝置的系統區域的邏輯介面。RAID管理器2504可提供資料保護功能,諸如RAID條串化及同位檢查。舉例而言,在一些實施例中,儲存裝置傳送區塊可用作RAID元件,且RAID條串可包含橫跨元頁面中的所有SUE頁面而定位的儲存裝置傳送區塊。因此,若儲存系統中的單一儲存裝置發生故障,則RAID管理器2504能夠使用反向同位計算自發生故障的儲存裝置恢復資料。
圖26為說明根據本發明的實施例的可由多模式儲存管理系統實施的全域狀態管理器(GSM)的示意圖。參照圖26,全域狀態管理器(GSM)2022可包含電力故障管理器(power fail manager;FM)2602及錯誤及崩潰管理器(error and crash manager;FCM)2604。
電力故障管理器2602可管理與多模式儲存管理系統2002的電力故障相關聯的問題。錯誤及崩潰管理器2604可管理在多模式儲存管理系統2002中發生的錯誤/崩潰問題。
圖18、圖19及圖20的多模式儲存管理系統1802、1902及2002的功能可由圖16的儲存系統1602實施。在替代性實施例中,多模式儲存管理系統1802、1902及2002的功能可由正常計算裝置或由專用硬體實施。
所呈現多模式方法包含促進資訊的有效及高效儲存的多種特徵及特性。所述特徵及特性可改良與效能相關聯的許多不同態樣。在一些實施例中,所描述分割方法的靈活性允許實現相對較快速度及可管理複雜度。相對大量使用者資料可儲存於實現使用
者資料的極快儲存及管理操作的SUE位址空間中。而相對少量元資料可儲存於允許儲存系統充分利用所利用元資料的抽象化本質以用於複雜度減少的經邏輯定址區域中。
另外,增加相對較小元資料區的過度供應的靈活性產生有助於加速元資料儲存操作及補償將歸因於複雜度增加而另外發生的速度減少的較大百分比的過度供應影響。相比於其他儲存系統,此情況允許過度供應資源的較好整體分配及較好影響。所述靈活性亦可藉由允許區塊的不同儲存區能夠在兩個分割區之間重新指派或重新分配來促進改良壽命週期保持。儲存於區中的資料的本質(例如,類型)可指示一種類型的資料比區中的另一類型資料較少地寫入/抹除(例如,大部分元資料相比於使用者資料並不較大地改變),且可將一個分割區中的實體區塊重新指派至另一分割區以均等特定區上的損耗。所述靈活性亦藉由將功率循環職責移動達至系統層級而允許功率循環改良。
在對電腦記憶體內的資料位元的操作的程序、邏輯區塊、處理及其他符號表示方面呈現詳細描述的一些部分。此等描述及表示為大體上由熟習資料處理技術者用以將其工作的主旨有效地傳達至其他熟習此項技術者的方式。程序、邏輯區塊或程序在此處且通常構想為產生所要結果的步驟或指令的自相容序列。步驟包含實體量的實體操縱。通常(但未必),此等實體量呈能夠儲存、傳送、組合、比較及以其他方式操縱於電腦系統中的電、磁性、光學或量子信號的形式。主要出於常用的原因,已證實將此等信號稱為位元、值、元件、符號、字符、術語、數字或其類似者有時為便利的。
然而,應牢記,所有此等及類似術語與適當實體量相關聯,且僅僅為應用於此等量的便利標記。除非另外具體陳述,否則如自以下論述顯而易見,應瞭解的是,在本申請案中,利用諸如“處理”、“計算(computing)”、“計算(calculating)”、“判定”、“顯示”或其類似者的術語的論述指操縱及變換表示為實體(例如,電子)量的資料的電腦系統或類似處理裝置(例如,電、光學或量子計算裝置)的動作及程序。術語指操縱或將電腦系統的組件(例如,暫存器、記憶體、其他此等資訊儲存、傳輸或顯示裝置)內的實體量變換成類似地表示為其他組件內的實體量的其他資料的處理裝置的動作及程序。
應僅自概念視角理解在概念圖中的每一者中繪示的配置。為了輔助理解本發明,已放大或減小在每一概念圖中繪示的每一組件的形式、結構及大小。實際上所實施的配置可具有與在每一概念圖中所繪示的配置不同的實體形狀。每一概念圖不意欲限制組件的實體形狀。
提供每一方塊圖中所繪示的裝置配置以輔助理解本發明。根據功能,每一方塊可由較小方塊形成。替代性地,多個方塊可根據功能形成較大方塊。亦即,本發明的精神或範疇不限於方塊圖中所繪示的配置。
在上文中,已基於一些實例實施例描述本發明。然而,本發明的目的可藉由不同於上文實例實施例的方式達成,所述實例實施例包含本發明根據此項技術本質的標的物。因此,應理解,上文實例實施例呈描述性及說明性意向,而非限制性意向。亦即,包含本發明的標的物且可達成本發明的目標的精神或範疇應包含於
本發明的發明概念的精神或範疇內。
因此,不脫離本發明的範疇或精神的經修改或變更技術概念應包含於下文申請專利範圍的範疇中。本發明的範疇不限於上文實例實施例。
220:多模式儲存裝置
230:第一分割區
240:第二分割區
231:第一類型介面
233、243:基礎儲存區
241:第二類型介面
Claims (20)
- 一種儲存裝置,其包括:第一儲存分割區,其包含基本類型介面及經配置以儲存第一類型的資訊的第一資訊儲存區;及第二儲存分割區,其包含選擇性基礎曝露(SUE)介面及經配置以儲存第二類型的資訊的第二資訊儲存區,其中所述SUE介面曝露所述第二資訊儲存區的態樣,並且所述態樣包括將多個基礎實體位址區塊進行分組,所述多個基礎實體位址區塊回應於包括抹除命令的各個管理命令而被一起管理。
- 如申請專利範圍第1項所述的儲存裝置,其中所述態樣包含所述第二儲存分割區的特性、特徵、功能、代表性幾何佈置、尺寸及/或管理操作中的至少一者。
- 如申請專利範圍第1項所述的儲存裝置,其中:由所述基本類型介面指導所述第一儲存分割區中的檔案儲存管理活動;且藉由所述SUE介面自所述第二儲存分割區外部指導所述第二儲存分割區中的檔案儲存管理活動。
- 如申請專利範圍第1項所述的儲存裝置,其中所述基本類型介面包含邏輯介面。
- 如申請專利範圍第1項所述的儲存裝置,其中所述第一儲存分割區的大小不同於所述第二儲存分割區的大小。
- 如申請專利範圍第1項所述的儲存裝置,其中所述第一儲存分割區中的操作粒度不同於所述第二儲存分割區中的操作粒度。
- 如申請專利範圍第1項所述的儲存裝置,其中所述第一儲存分割區及所述第二儲存分割區的組合允許優於單獨利用所述第一儲存分割區的狀況的經改良效能,且相比於單獨利用所述第二儲存分割區的狀況允許降低的複雜度。
- 如申請專利範圍第1項所述的儲存裝置,其中所述第一儲存分割區中的過度供應百分比不同於所述第二儲存分割區中的過度供應百分比。
- 一種儲存方法,其包括:將裝置的第一部分配置為用於儲存第一類型的資訊的第一區;基於第一位址空間資訊參與用於所述第一區的第一類型介面的操作;將所述裝置的第二部分配置為用於儲存第二類型的資訊的第二區;及基於第二位址空間資訊參與用於所述第二區的第二類型介面的操作,其中所述第二類型介面選擇性地曝露基礎態樣,其中基礎實體位址空間的維度透過選擇性基礎曝露(SUE)位址空間抽象成減小的數目個維度,其中所述維度對應於所述第二區的實體配置特性。
- 如申請專利範圍第9項所述的儲存方法,其中所述基礎態樣與基礎實體位址空間相關聯,且其中選擇性曝露所述基礎態樣在曝露所述基礎實體位址空間的管理操作特性時,移除與所述基礎實體位址空間相關聯的複雜 度。
- 如申請專利範圍第9項所述的儲存方法,其中所述基礎態樣由選擇性基礎曝露(SUE)位址頁面及選擇性基礎曝露(SUE)位址區塊抽象化。
- 如申請專利範圍第9項所述的儲存方法,其中所述基礎態樣與基礎系統管理操作相關聯。
- 如申請專利範圍第9項所述的儲存方法,其中所述基礎態樣用於執行以下各者中的至少一者:自由空間管理、所述自由空間的使用的回收及調節、過度供應、修整操作及/或功率循環。
- 如申請專利範圍第9項所述的儲存方法,其中所述第一類型的資訊包含元資料,且所述第二類型的資訊包含使用者資料。
- 如申請專利範圍第9項所述的儲存方法,其中所述第二類型介面的所述操作包含:接收所述第二類型的資訊及位址;及在所述所接收位址的位址類型與基礎位址類型之間轉譯。
- 一種儲存裝置,其包括:第一儲存分割區,其包含邏輯位址介面及經配置以儲存元資料的第一資料儲存區;及第二儲存分割區,其包含選擇性基礎曝露(SUE)介面及經配置以儲存使用者資料的第二資料儲存區,其中所述邏輯位址介面包含用於所述第一資料儲存區的快閃管理系統,及經配置以將邏輯位址轉譯為所述第一資料儲存區的對應實體位址的快閃轉譯邏輯(FTL),且 其中所述SUE介面基於資料至SUE可定址單元的映射以曝露所述第二資料儲存區的代表性幾何佈置。
- 如申請專利範圍第16項所述的儲存裝置,其中所述SUE介面的韌體經配置以提供介面曝露,同時抽象化處置直接實體介面曝露的複雜度。
- 如申請專利範圍第16項所述的儲存裝置,其中所述儲存裝置為固態磁碟機。
- 如申請專利範圍第16項所述的儲存裝置,其中所述SUE介面包括:輸入/輸出裝置,其接收選擇性基礎曝露(SUE)位址空間資訊及資料;及控制器,其將所述SUE位址空間資訊轉譯成實體位址空間資訊並根據所述實體位址空間資訊指導所述資料的儲存,其中所述SUE位址空間的所述代表性幾何佈置匹配所述實體位址空間的所述代表性幾何佈置。
- 如申請專利範圍第16項所述的儲存裝置,其中SUE位址空間區塊對應於由所述儲存裝置管理為單元的實體區塊。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/941,525 US9940028B2 (en) | 2015-11-13 | 2015-11-13 | Multimode storage device |
US14/941,525 | 2015-11-13 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201729102A TW201729102A (zh) | 2017-08-16 |
TWI710900B true TWI710900B (zh) | 2020-11-21 |
Family
ID=56571176
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105124703A TWI710900B (zh) | 2015-11-13 | 2016-08-04 | 儲存裝置及方法 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9940028B2 (zh) |
EP (1) | EP3168736A1 (zh) |
JP (1) | JP6910131B2 (zh) |
KR (1) | KR102541492B1 (zh) |
CN (1) | CN106708751A (zh) |
TW (1) | TWI710900B (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144399B (zh) * | 2017-06-16 | 2021-12-17 | 杭州海康威视数字技术股份有限公司 | 一种数据存储方法、装置及电子设备 |
US10097202B1 (en) * | 2017-06-20 | 2018-10-09 | Samsung Electronics Co., Ltd. | SSD compression aware |
CN107526548B (zh) * | 2017-08-31 | 2020-09-25 | 苏州浪潮智能科技有限公司 | 多namespace的固态硬盘及数据删除方法与装置 |
JP2019079464A (ja) * | 2017-10-27 | 2019-05-23 | 東芝メモリ株式会社 | メモリシステムおよび制御方法 |
CN110214305B (zh) | 2017-12-29 | 2020-09-08 | 华为技术有限公司 | 一种数据访问方法及存储阵列 |
KR102503177B1 (ko) | 2018-03-05 | 2023-02-24 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
TWI665550B (zh) * | 2018-04-27 | 2019-07-11 | 威聯通科技股份有限公司 | 磁碟陣列的資料分佈方法及其資料儲存系統與記錄媒體 |
KR102538222B1 (ko) * | 2018-06-26 | 2023-06-01 | 삼성전자주식회사 | 스토리지 장치, 스토리지 장치를 포함하는 스토리지 시스템, 그리고 스토리지 장치를 액세스하는 방법 |
CN109710411B (zh) * | 2018-12-28 | 2020-09-22 | 深圳忆联信息系统有限公司 | Tlp字段资源管理方法、装置、计算机设备及存储介质 |
CN116166570A (zh) * | 2019-07-31 | 2023-05-26 | 华为技术有限公司 | 一种垃圾回收方法及装置 |
CN112306896B (zh) * | 2019-07-31 | 2022-12-27 | 华为技术有限公司 | 一种垃圾回收方法及装置 |
US10909033B1 (en) * | 2019-08-15 | 2021-02-02 | Nvidia Corporation | Techniques for efficiently partitioning memory |
US11544186B2 (en) | 2020-07-16 | 2023-01-03 | Silicon Motion, Inc. | Method and apparatus for data reads in host performance acceleration mode |
CN113946279A (zh) * | 2020-07-16 | 2022-01-18 | 慧荣科技股份有限公司 | 主机效能加速模式的数据读取方法及装置 |
US11429545B2 (en) | 2020-07-16 | 2022-08-30 | Silicon Motion, Inc. | Method and apparatus for data reads in host performance acceleration mode |
US11544185B2 (en) | 2020-07-16 | 2023-01-03 | Silicon Motion, Inc. | Method and apparatus for data reads in host performance acceleration mode |
US11561728B1 (en) * | 2020-11-20 | 2023-01-24 | Veritas Technologies Llc | Methods and systems for efficient metadata management |
WO2022110196A1 (zh) * | 2020-11-30 | 2022-06-02 | 华为技术有限公司 | 一种数据处理方法、装置及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080077728A1 (en) * | 2006-09-27 | 2008-03-27 | Samsung Electronics Co., Ltd | Mapping information managing apparatus and method for non-volatile memory supporting different cell types |
US20100250839A1 (en) * | 2004-06-21 | 2010-09-30 | Takafumi Ito | Method for controlling memory card and method for controlling nonvolatile semiconductor memory |
US20110107018A1 (en) * | 2008-06-20 | 2011-05-05 | Toshiyuki Honda | Plural-partitioned type nonvolatile storage device and system |
US20140281126A1 (en) * | 2013-03-14 | 2014-09-18 | Sandisk Technologies Inc. | Overprovision capacity in a data storage device |
TWI460588B (zh) * | 2009-07-17 | 2014-11-11 | Toshiba Kk | Memory management device and memory information processing device |
US20150058591A1 (en) * | 2013-01-08 | 2015-02-26 | Lyve Minds, Inc. | Storage network data distribution |
CN104461376A (zh) * | 2013-09-24 | 2015-03-25 | 株式会社东芝 | 存储系统 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6658528B2 (en) | 2001-07-30 | 2003-12-02 | International Business Machines Corporation | System and method for improving file system transfer through the use of an intelligent geometry engine |
US6775751B2 (en) | 2002-08-06 | 2004-08-10 | International Business Machines Corporation | System and method for using a compressed main memory based on degree of compressibility |
JP2005100262A (ja) * | 2003-09-26 | 2005-04-14 | Seiko Epson Corp | メモリ管理装置およびメモリ管理プログラム、並びにメモリ管理方法 |
JP2006040264A (ja) * | 2004-06-21 | 2006-02-09 | Toshiba Corp | メモリカードの制御方法および不揮発性半導体メモリの制御方法 |
US7631245B2 (en) * | 2005-09-26 | 2009-12-08 | Sandisk Il Ltd. | NAND flash memory controller exporting a NAND interface |
US7624239B2 (en) * | 2005-11-14 | 2009-11-24 | Sandisk Corporation | Methods for the management of erase operations in non-volatile memories |
US7685378B2 (en) * | 2007-02-15 | 2010-03-23 | Hitachi, Ltd. | Methods and apparatus for adjusting a journal area for continuous data protection |
US8094500B2 (en) | 2009-01-05 | 2012-01-10 | Sandisk Technologies Inc. | Non-volatile memory and method with write cache partitioning |
US9134918B2 (en) | 2009-12-31 | 2015-09-15 | Sandisk Technologies Inc. | Physical compression of data with flat or systematic pattern |
WO2012051600A2 (en) | 2010-10-15 | 2012-04-19 | Kyquang Son | File system-aware solid-state storage management system |
US9176864B2 (en) | 2011-05-17 | 2015-11-03 | SanDisk Technologies, Inc. | Non-volatile memory and method having block management with hot/cold data sorting |
US8639669B1 (en) | 2011-12-22 | 2014-01-28 | Emc Corporation | Method and apparatus for determining optimal chunk sizes of a deduplicated storage system |
KR20130096881A (ko) | 2012-02-23 | 2013-09-02 | 삼성전자주식회사 | 플래시 메모리 장치 |
US9304828B2 (en) * | 2012-09-27 | 2016-04-05 | Hitachi, Ltd. | Hierarchy memory management |
US8526234B1 (en) * | 2012-11-16 | 2013-09-03 | Avalanche Technology, Inc. | Controller management of memory array of storage device using magnetic random access memory (MRAM) |
CN103797770B (zh) * | 2012-12-31 | 2015-12-02 | 华为技术有限公司 | 一种共享存储资源的方法和系统 |
US9652376B2 (en) | 2013-01-28 | 2017-05-16 | Radian Memory Systems, Inc. | Cooperative flash memory control |
CN105917308B (zh) * | 2014-01-22 | 2019-02-12 | 惠普发展公司,有限责任合伙企业 | 分区为包括元数据区域的多个区域的字节可寻址非易失性读写主存储器 |
US9727456B2 (en) | 2014-11-03 | 2017-08-08 | Pavilion Data Systems, Inc. | Scheduled garbage collection for solid state storage devices |
US9626312B2 (en) | 2015-07-17 | 2017-04-18 | Sandisk Technologies Llc | Storage region mapping for a data storage device |
-
2015
- 2015-11-13 US US14/941,525 patent/US9940028B2/en active Active
-
2016
- 2016-07-25 KR KR1020160094381A patent/KR102541492B1/ko active IP Right Grant
- 2016-08-02 EP EP16182283.8A patent/EP3168736A1/en not_active Ceased
- 2016-08-04 TW TW105124703A patent/TWI710900B/zh active
- 2016-10-18 CN CN201610903596.5A patent/CN106708751A/zh active Pending
- 2016-11-11 JP JP2016220982A patent/JP6910131B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100250839A1 (en) * | 2004-06-21 | 2010-09-30 | Takafumi Ito | Method for controlling memory card and method for controlling nonvolatile semiconductor memory |
US20080077728A1 (en) * | 2006-09-27 | 2008-03-27 | Samsung Electronics Co., Ltd | Mapping information managing apparatus and method for non-volatile memory supporting different cell types |
US20110107018A1 (en) * | 2008-06-20 | 2011-05-05 | Toshiyuki Honda | Plural-partitioned type nonvolatile storage device and system |
TWI460588B (zh) * | 2009-07-17 | 2014-11-11 | Toshiba Kk | Memory management device and memory information processing device |
US20150058591A1 (en) * | 2013-01-08 | 2015-02-26 | Lyve Minds, Inc. | Storage network data distribution |
US20140281126A1 (en) * | 2013-03-14 | 2014-09-18 | Sandisk Technologies Inc. | Overprovision capacity in a data storage device |
CN104461376A (zh) * | 2013-09-24 | 2015-03-25 | 株式会社东芝 | 存储系统 |
Also Published As
Publication number | Publication date |
---|---|
JP6910131B2 (ja) | 2021-07-28 |
KR102541492B1 (ko) | 2023-06-08 |
US9940028B2 (en) | 2018-04-10 |
CN106708751A (zh) | 2017-05-24 |
TW201729102A (zh) | 2017-08-16 |
KR20170056413A (ko) | 2017-05-23 |
US20170139591A1 (en) | 2017-05-18 |
JP2017091546A (ja) | 2017-05-25 |
EP3168736A1 (en) | 2017-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI710900B (zh) | 儲存裝置及方法 | |
TWI702495B (zh) | 對使用者資料執行選擇性下伏暴露映射之設備、方法以及多模式儲存裝置 | |
TWI709073B (zh) | 分佈式儲存系統、分佈式儲存方法及分佈式設施 | |
TWI716416B (zh) | 儲存系統、用於管理儲存媒體的方法以及系統、操作儲存系統的方法、以及非暫存性電腦可讀媒體 | |
US11907569B1 (en) | Storage deveice that garbage collects specific areas based on a host specified context | |
KR102401596B1 (ko) | 비휘발성 장치에서 데이터 속성 기반 데이터 배치를 활용하기 위해 컴퓨터를 구동하는 경험적 인터페이스 | |
US9170885B2 (en) | Independent management of data and parity logical block addresses | |
US20230019966A1 (en) | Storage Design For Host Controlled Logically Addressed Flexible Data Layout |