TWI677788B - 資料儲存系統以及非揮發式記憶體操作資訊的校正方法 - Google Patents
資料儲存系統以及非揮發式記憶體操作資訊的校正方法 Download PDFInfo
- Publication number
- TWI677788B TWI677788B TW107114492A TW107114492A TWI677788B TW I677788 B TWI677788 B TW I677788B TW 107114492 A TW107114492 A TW 107114492A TW 107114492 A TW107114492 A TW 107114492A TW I677788 B TWI677788 B TW I677788B
- Authority
- TW
- Taiwan
- Prior art keywords
- host
- operation information
- controller
- type
- item
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/10—Address translation
-
- 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
- G06F11/00—Error detection; Error correction; Monitoring
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/16—Protection against loss of memory contents
-
- 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/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0632—Configuration or reconfiguration of storage systems by initialisation or re-initialisation of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0655—Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
- G06F3/0659—Command handling arrangements, e.g. command buffers, queues, command scheduling
-
- 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
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1041—Resource optimization
- G06F2212/1044—Space efficiency improvement
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/65—Details of virtual memory and virtual address translation
- G06F2212/657—Virtual address space management
-
- 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/7206—Reconfiguration of flash memory system
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/32—Timing circuits
-
- 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/2254—Calibration
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/04—Arrangements for writing information into, or reading information out from, a digital store with means for avoiding disturbances due to temperature effects
Abstract
資料儲存系統之裝置端的操作資訊校正技術。一控制器根據一操作資訊操作一非揮發式記憶體,且根據一主機所指示、且不同於該主機的一檔案系統所使用的一第一類邏輯位址的一第二類邏輯位址,自該主機獲得一校正參數,並以該校正參數校正該操作資訊。
Description
本發明係有關於資料儲存系統以及非揮發式記憶體的操作。
非揮發式記憶體有多種形式-例如,快閃記憶體(flash memory)、磁阻式隨機存取記憶體(Magnetoresistive RAM)、鐵電隨機存取記憶體(Ferroelectric RAM)、電阻式隨機存取記憶體(Resistive RAM)、自旋轉移力矩隨機存取記憶體(Spin Transfer Torque-RAM,STT-RAM)…等,用於長時間資料保存。
非揮發式記憶體的操作需要倚賴多樣的操作資訊。如何確保操作資訊準確,為本技術領域一項重要課題。
本案揭露一種非揮發式記憶體操作資訊的調適技術。
根據本案一種實施方式實現的資料儲存系統包括一非揮發式記憶體以及一控制器。該控制器根據一操作資訊操
作一非揮發式記憶體,且根據一主機所指示、且不同於該主機的一檔案系統所使用的一第一類邏輯位址的一第二類邏輯位址,自該主機獲得一校正參數,並以該校正參數校正該操作資訊。
一種實施方式中,該控制器以及該主機之間採用一非揮發式記憶體快捷介面(NVMe)。該控制器是在辨識出一指令代碼為該非揮發式記憶體快捷介面定義的一邏輯範圍類型(LBA range type)時,判定是接收到該第二類邏輯位址,以無關該主機的該檔案系統進行該操作資訊之校正。
一種實施方式中,該操作資訊為溫度,且該校正資訊顯示該主機的溫度感測狀況。
一種實施方式中,該非揮發式記憶體為快閃記憶體,該操作資訊為抹除計數,且該校正資訊顯示該主機估測的抹除狀況。
本案更揭露一種校正方法,實現於裝置端,用於校正操作一非揮發式記憶體的一操作資訊。根據一主機所指示、且不同於該主機的一檔案系統所使用的一第一類邏輯位址的一第二類邏輯位址,所述校正方法自該主機獲得一校正參數。所述方法係以該校正參數校正該操作資訊。
本案更揭露一種校正方法,實現於主機端,用於校正操作一非揮發式記憶體的一操作資訊。所述校正方法包括:對該非揮發式記憶體的一控制器指示不同於一檔案系統所使用的一第一類邏輯位址的一第二類邏輯位址;且以該第二類邏輯位址對該控制器供應一校正參數,使該控制器以該校正參
數校正該操作資訊。
下文特舉實施例,並配合所附圖示,詳細說明本發明內容。
102‧‧‧快閃記憶體
104‧‧‧控制器
106‧‧‧資料儲存裝置
108‧‧‧主機
110‧‧‧操作資訊
112‧‧‧感測器
118‧‧‧檔案系統
120‧‧‧驅動器
S202、S204、S206‧‧‧設定階段的步驟
S302、S304、S306‧‧‧校正階段的步驟
S402以及S404‧‧‧驗證階段的步驟
第1圖圖解根據本案一種實施方式所實現的一種資料儲存系統;第2圖根據本案一種實施方式說明兩類邏輯位址;且第3圖為流程圖,根據本案一種實施方式操作資訊110的校正方法,包括設定階段、校正階段以及驗證階段。
以下敘述列舉本發明的多種實施例。以下敘述介紹本發明的基本概念,且並非意圖限制本發明內容。實際發明範圍應依照申請專利範圍界定之。
非揮發式記憶體可以是快閃記憶體(flash memory)、磁阻式隨機存取記憶體(Magnetoresistive RAM)、鐵電隨機存取記憶體(Ferroelectric RAM)、電阻式記憶體(Resistive RAM,RRAM)、自旋轉移力矩隨機存取記憶體(Spin Transfer Torque-RAM,STT-RAM)…等,提供長時間資料保存之儲存媒體,可用於實現資料儲存裝置、或應用於數據中心。以下特別以快閃記憶體(flash memory)為例進行討論。
現今資料儲存裝置常以快閃記憶體為儲存媒體,用來實現記憶卡(Memory Card)、通用序列匯流排閃存裝置(USB Flash Device)、固態硬碟(SSD)...等產品。有一種應用
是採多晶片封裝、將快閃記憶體與其控制器包裝在一起-稱為嵌入式快閃記憶體模組(如eMMC)。
以快閃記憶體為儲存媒體的資料儲存裝置可應用於多種電子裝置上。所述電子裝置包括智慧型手機、穿戴裝置、平板電腦、虛擬實境設備…等。電子裝置的運算模塊可視為一主機(Host),操作電子裝置所使用的資料儲存裝置,以存取資料儲存裝置中的快閃記憶體。
快閃記憶體實現的資料儲存裝置也可用於建構數據中心(Data Center)。例如,伺服器可操作固態硬碟(SSD)陣列形成數據中心。伺服器即可視為一主機(Host),操作所連結之固態硬碟,以存取其中快閃記憶體。
主機(Host)的檔案系統是以邏輯位址(例如,邏輯區塊位址LBA、全域主機頁編號GHP、主機區塊HBlk、主機頁HPage…等)區別使用者資料。快閃記憶體的儲存空間係動態配置來儲存使用者資料。使用者資料寫入快閃記憶體後,其邏輯位址與快閃記憶體的物理空間的映射關係需記錄下來,將來檔案系統讀取使用者資料時,此映射關將用來自快閃記憶體尋得使用者資料。除了因應檔案系統的讀取要求,快閃記憶體其他多種操作都有需要使用到映射關係。
快閃記憶體的儲存空間包括多個區塊(Blocks),其中各區塊包括多頁(Pages)。使用者資料可以逐頁寫入一區塊。特別是,使用者資料的更新並非覆寫在舊資料上,而是寫在閒置的空間,而舊資料視為無效。徒留無效內容的區塊可藉由抹除(erasing)再度釋出使用。快閃記憶體以區塊為抹除
(Erasing)動作的最小單位。各區塊允許的抹除次數有其上限。抹除次數超過臨界量的區塊應當被寫入保護。抹除次數超標的區塊總數若多於一臨界數量,快閃記憶體就會被標示為損壞,避免使用者使用。此機制將確保使用者資料不丟失。
快閃記憶體另外可有溫控機制。過高的溫度將啟動降溫動作。
以上內容顯示快閃記憶體之運作基於多種資訊,包括映射關係的維護表格、區塊抹除計數、溫度,以下都稱之為操作資訊。除了前述事項,快閃記憶體的運作更可能受其他操作資訊影響。本案揭露該些操作資訊的校正技術。
第1圖圖解根據本案一種實施方式所實現的一種資料儲存系統,除了包括快閃記憶體102以及控制器104組成的資料儲存裝置106,資料儲存裝置106較佳執行來自主機108的指令。不論是僅含快閃記憶體102以及控制器104的資料儲存裝置106,或是更含主機108之架構,都屬於本案欲保護範圍。
快閃記憶體102是由控制器104控制,以回應主機108的檔案系統118所發出的管理指令或存取指令。控制器104載有操作資訊110。操作資訊110可由控制器104隨著其對快閃記憶體102之操作而同步維護。例如,關於快閃記憶體102各式映射表之維護,所需的資訊可部分以操作資訊110形式同步更新在控制器104上。另一種實施方式中,操作資訊110包括各區塊的抹除計數(Erase Count),動態更新在控制器104上,並儲存於快閃記憶體102中。另一種實施方式中,控制器104上的感測器112所感測到的資訊可組成操作資訊110,動態更新在控制
器104上。感測器112可為溫度計,量測到的溫度可為操作資訊110記錄在控制器104上。控制器104係根據操作資訊110操作快閃記憶體102,另外,控制器104也可量測時間記錄至快閃記憶體102。
本案對操作資訊110提供一種校正技術,藉由使用主機108的檔案系統118未使用或未分配的邏輯位址,使驅動器120可以對控制器104進行校正參數的傳送。當取得校正參數後,控制器104依據校正參數對操作資訊110進行校正。最後,控制器104回傳校正結果或校正成功與否至驅動器120。如果校正失敗,驅動器120可輸出警告訊息至主機108的作業系統。
詳細地說,如圖2所示,本案中邏輯位址可分成二類,第一類邏輯位址是檔案系統118所分配或使用的邏輯位址,例如邏輯位址的值0x0000000~0x3D08FFF,每一邏輯位址可對應至作業系統的使用者資料。第二類是驅動器120所分配或使用的邏輯位址,例如邏輯位址的值0x3D09000,可對應至一個或多個校正參數,其中,第一類與第二類邏輯位址不重覆。作業系統118較佳不知道第二類邏輯位址的存在,當然,驅動器120亦可告知作業系統118第二類邏輯位址的存在。接著,驅動器120通知控制器104第二類邏輯位址的存在,之後,驅動器120就可利用第二類邏輯位址傳送校正參數至控制器104。當收到帶有第二類邏輯位址的資料存取指令時,控制器104啟動校正程序,並取得第二類邏輯位址所對應的校正參數以進行校正。本案可週期性地或當設定的閥值被滿足時,在不影響檔案系統118的運作下,自動或被動地啟動校正程序,因
此,不只能校正操作資訊,又可以把校正程序對主機108(檔案系統118)運作所產生的干擾降至最低。
一種實施方式中,資料儲存裝置106可以透過PCIe(快捷外設互聯標準)匯流排與主機108連結,彼此通訊採NVMe(NVM Express,非揮發式記憶體快捷介面)。
第3圖為流程圖,根據本案一種實施方式操作資訊110的校正方法,包括設定階段、校正階段以及驗證階段。在設定階段時,驅動器120通知資料儲存裝置106第二類邏輯位址的值、屬性、編號等的參數。在校正階段時,驅動器120輸出第二類邏輯位址以及校正參數至資料儲存裝置106,由資料儲存裝置106依據校正參數校正操作資訊110。在驗證階段時,資料儲存裝置106再將校正結果(成功或失敗)回傳至驅動器120。一種實施方式中,操作資訊110的校正方法是當資料儲存裝置106偵測到異常狀況時予以啟動,例如,尋無映射資訊、鎖卡(太多區塊超出抹除計數上限)、或是過熱警示。其他實施方式也可以是週期地(定時或根據設定條件)啟動操作資訊110的校正方法,以常規地校正操作資訊110。
步驟S202,主機108的驅動器120寫入特徵設定(Set Feature)指令至遞交佇列。特徵設定指令包含指令代碼、指令編號、命名空間(Namespace)編號、特徵編號、記憶體位址、邏輯位址數量等參數,驅動器120將指令代碼設定為邏輯範圍類型(LBA Range Type),邏輯位址數量設定為1,並將設定好的特徵設定指令寫入至遞交佇列。
步驟S204,資料儲存裝置106的控制器104自遞交
佇列讀取特徵設定指令。控制器104依據指令代碼得知特徵的類別為邏輯範圍類型(LBA Range Type),而為邏輯範圍類型(LBA Range Type)中包含一個額外邏輯位址(例如:0x3D09000),即一個第二類邏輯位址。
步驟S206,資料儲存裝置106的控制器104從特徵設定指令取得額外邏輯位址。控制器104從特徵設定指令所指定的記憶體位址取得額外邏輯位址的值、類型(Type)等參數。控制器104判斷特徵設定指令中的參數是否正常及記憶體位址中所儲存的參數是否正常,如果一切都正常且執行完畢後,控制器104寫入一個完成元件(Completion Element)至完成佇列。驅動器120讀取完成元件以確定特徵設定指令已執行完成且成功。
步驟S302,主機108的驅動器120寫入資料存取指令至遞交佇列,資料存取指令例如是資料寫入指令,且資料存取指令包括設定階段的第二類邏輯位址值(0x3D09000)以及所對應的校正參數(例如:溫度值為25)。
步驟S304,資料儲存裝置106的控制器104從遞交佇列取得資料存取指令。
步驟S306,資料儲存裝置106的控制器104從資料存取指令的第二類邏輯位址取得校正參數。
步驟S308,資料儲存裝置106的控制器104依據校正參數執行校正程序。例如,感測器112無法量測溫度或所量測的溫度值(例如35)與校正參數的差異過大,在校正程序中控制器104可以校正參數替代感測器112所量測的溫度值,或是
可以校正參數校正感測器112所量測的溫度值,並記錄校正結果(成功或失敗)。由於校正程序為習知技藝,故不多作說明。另一種實施方式中,該主機108是以自身感測到的一主機端溫度範圍為該校正參數。該控制器104係基於該主機端溫度範圍進行溫度校正,使該操作資訊110過去一段時間記錄的溫度數值調校到該主機端溫度範圍,並據以調整後續感測到的溫度數值。
步驟S402,主機108的驅動器120寫入特徵取得(Get Feature)指令至遞交佇列。特徵取得指令包含指令代碼、指令編號、命名空間(Namespace)編號、特徵編號、記憶體位址等參數。
步驟S404,資料儲存裝置106的控制器104回傳校正程序的執行結果。控制器104將校正結果儲存至特徵取得指令所指定的記憶體位址,並寫入完成元件至完成佇列。驅動器120可依據完成元件而得知特徵取得指令是否執行完成,且從記憶體位址取得傳校正程序的執行結果。
一種實施方式中,對於沒有被成功校正的操作資訊110,控制器104會多次嘗試校正之,即步驟S308將反覆進行,直達迴圈數上限一例如,給N次機會進行校正,N為數字(如,5次)。
假如抹除計數上限為5000次,超過臨界數量的區塊會被控制器104列為壞區塊而不再使用。此時,使用者可利用本案操作資訊110的校正方法而對抹除計數進行校正,使壞區塊變更為正常區塊。首先,在設定階段,先給校正參數一個
對應的第二類邏輯位址值(例如:0x3D09001)。在校正階段,傳送校正參數的值(例如:1000)至控制器104,控制器104則將抹除計數減去校正參數的值,如果一來,壞區塊的抹除計數將從5000變更為4000,由於4000低於抹除計數上限,所以,控制器104重新將壞區塊變更為正常區塊。如此一來,主機108的驅動器120可讀取原本壞區塊中的使用者資料,或是,解除資料儲存裝置106的存取保護。另一種實施方式中,該主機108以自身估測的一抹除計數範圍為該校正參數。該控制器104基於該抹除計數範圍進行抹除計數校正,使該操作資訊110過去一段時間記錄的抹除計數調校到該抹除計數範圍,並據以調整後續的抹除計數。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟悉此項技藝者,在不脫離本發明之精神和範圍內,當可做些許更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
Claims (25)
- 一種資料儲存系統,包括:一非揮發式記憶體;以及一控制器,根據一操作資訊操作該非揮發式記憶體,且根據一主機所指示、且不同於該主機的一檔案系統所使用的一第一類邏輯位址的一第二類邏輯位址,自該主機獲得一校正參數,並以該校正參數校正該操作資訊。
- 如申請專利範圍第1項所述的資料儲存系統,其中:該控制器以及該主機之間採用一非揮發式記憶體快捷介面(NVMe);且該控制器是在辨識出一指令代碼為該非揮發式記憶體快捷介面定義的一邏輯範圍類型(LBA range type)時,判定是接收到該第二類邏輯位址,無關該主機的該檔案系統地進行該操作資訊之校正。
- 如申請專利範圍第1項所述的資料儲存系統,其中:該控制器是自該主機發下的一特徵設定指令所指示的一指令代碼,辨識出該特徵設定指令指示有該第二類邏輯位址,繼而得知該第二類邏輯位址。
- 如申請專利範圍第3項所述的資料儲存系統,其中:該控制器是自該主機所發下、且指示有該第二類邏輯位址的一寫入資料存取指令,辨識出該寫入資料存取指令所載包括該校正參數,並以該校正參數校正該操作資訊。
- 如申請專利範圍第4項所述的資料儲存系統,其中:根據該主機下達的一特徵取得指令,該控制器回報該主機該操作資訊之校正為成功或失敗。
- 如申請專利範圍第5項所述的資料儲存系統,其中:對於未能基於該校正參數成功校正該操作資訊的狀況,該控制器重複基於該校正參數對該操作資訊進行校正,直至重複達N次,N為數值。
- 如申請專利範圍第1項所述的資料儲存系統,其中:該操作資訊為溫度;且該校正參數顯示該主機的溫度感測狀況。
- 如申請專利範圍第7項所述的資料儲存系統,其中:該主機以感測到的一主機端溫度範圍為該校正參數;且該控制器係基於該主機端溫度範圍進行溫度校正,使該操作資訊過去一段時間記錄的溫度數值調校到該主機端溫度範圍,並據以調整後續感測到的溫度數值。
- 如申請專利範圍第1項所述的資料儲存系統,其中:該非揮發式記憶體為快閃記憶體;該操作資訊為抹除計數;且該校正參數顯示該主機估測的抹除狀況。
- 如申請專利範圍第9項所述的資料儲存系統,其中:該主機以估測的一抹除計數範圍為該校正參數;且該控制器基於該抹除計數範圍進行抹除計數校正,使該操作資訊過去一段時間記錄的抹除計數調校到該抹除計數範圍,並據以調整後續的抹除計數。
- 一種校正方法,用於校正操作一非揮發式記憶體的一操作資訊,包括:根據一主機所指示、且不同於該主機的一檔案系統所使用的一第一類邏輯位址的一第二類邏輯位址,自該主機獲得一校正參數;且以該校正參數校正該操作資訊。
- 如申請專利範圍第11項所述的校正方法,更包括:在辨識出一指令代碼為一非揮發式記憶體快捷介面(NVMe)定義的一邏輯範圍類型(LBA range type)時,判定是自該主機接收到該第二類邏輯位址,無關該主機的該檔案系統地進行該操作資訊之校正,其中,該非揮發式記憶體係透過該非揮發式記憶體快捷介面耦接該主機。
- 如申請專利範圍第11項所述的校正方法,更包括:自該主機發下的一特徵設定指令所指示的一指令代碼,辨識出該特徵設定指令指示有該第二類邏輯位址,繼而得知該第二類邏輯位址。
- 如申請專利範圍第13項所述的校正方法,更包括:自該主機所發下、且指示有該第二類邏輯位址的一寫入資料存取指令,辨識出該寫入資料存取指令所載包括該校正參數,並以該校正參數校正該操作資訊。
- 如申請專利範圍第14項所述的校正方法,更包括:根據該主機下達的一特徵取得指令,回報該主機該操作資訊之校正為成功或失敗。
- 如申請專利範圍第15項所述的校正方法,更包括:對於未能基於該校正參數成功校正該操作資訊的狀況,重複基於該校正參數對該操作資訊進行校正,直至重複達N次,N為數值。
- 如申請專利範圍第11項所述的校正方法,其中:該操作資訊為溫度;且該校正參數顯示該主機的溫度感測狀況。
- 如申請專利範圍第17項所述的校正方法,更包括:基於一主機端溫度範圍進行溫度校正,使該操作資訊過去一段時間記錄的溫度數值調校到該主機端溫度範圍,並據以調整後續感測到的溫度數值,其中,該主機以感測到的該主機端溫度範圍為該校正參數。
- 如申請專利範圍第11項所述的校正方法,其中:該非揮發式記憶體為快閃記憶體;該操作資訊為抹除計數;且該校正參數顯示該主機估測的抹除狀況。
- 如申請專利範圍第19項所述的校正方法,更包括:基於一抹除計數範圍進行抹除計數校正,使該操作資訊過去一段時間記錄的抹除計數調校到該抹除計數範圍,並據以調整後續的抹除計數,其中,該主機以估測的該抹除計數範圍為該校正參數。
- 一種校正方法,用於校正操作一非揮發式記憶體的一操作資訊,包括:對該非揮發式記憶體的一控制器指示不同於一檔案系統所使用的一第一類邏輯位址的一第二類邏輯位址;且以該第二類邏輯位址對該控制器供應一校正參數,使該控制器以該校正參數校正該操作資訊。
- 如申請專利範圍第21項所述的校正方法,更包括:利用一非揮發式記憶體快捷介面(NVMe);令傳遞給該控制器的一指令代碼為該非揮發式記憶體快捷介面定義的一邏輯範圍類型(LBA range type),使該控制器據以判定是接收到該第二類邏輯位址,用於無關該檔案系統進行該操作資訊之校正。
- 如申請專利範圍第21項所述的校正方法,更包括:發下一特徵設定指令,其中指示一指令代碼,供該控制器辨識出該特徵設定指令指示有該第二類邏輯位址,使該控制器得知該第二類邏輯位址。
- 如申請專利範圍第23項所述的校正方法,更包括:發下指示有該第二類邏輯位址的一寫入資料存取指令,供該控制器辨識出該寫入資料存取指令所載包括該校正參數,使該控制器以該校正參數校正該操作資訊。
- 如申請專利範圍第24項所述的校正方法,更包括:發下一特徵取得指令,使該控制器回報該操作資訊之校正為成功或失敗。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107114492A TWI677788B (zh) | 2018-04-27 | 2018-04-27 | 資料儲存系統以及非揮發式記憶體操作資訊的校正方法 |
CN201810709258.7A CN110413429B (zh) | 2018-04-27 | 2018-07-02 | 数据储存系统以及非挥发式存储器操作信息的校正方法 |
US16/170,265 US10776279B2 (en) | 2018-04-27 | 2018-10-25 | Data storage system and calibration method for operational information used in controlling non-volatile memory |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW107114492A TWI677788B (zh) | 2018-04-27 | 2018-04-27 | 資料儲存系統以及非揮發式記憶體操作資訊的校正方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI677788B true TWI677788B (zh) | 2019-11-21 |
TW201945939A TW201945939A (zh) | 2019-12-01 |
Family
ID=68292251
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW107114492A TWI677788B (zh) | 2018-04-27 | 2018-04-27 | 資料儲存系統以及非揮發式記憶體操作資訊的校正方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US10776279B2 (zh) |
CN (1) | CN110413429B (zh) |
TW (1) | TWI677788B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10901658B2 (en) * | 2018-12-28 | 2021-01-26 | Micron Technology, Inc. | Host adaptive memory device optimization |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101233481A (zh) * | 2005-08-03 | 2008-07-30 | 桑迪士克股份有限公司 | 通过逻辑地址空间且以直接数据文件为基础操作的介接系统 |
US20100017556A1 (en) * | 2008-07-19 | 2010-01-21 | Nanostar Corporationm U.S.A. | Non-volatile memory storage system with two-stage controller architecture |
US8760922B2 (en) * | 2012-04-10 | 2014-06-24 | Sandisk Technologies Inc. | System and method for micro-tiering in non-volatile memory |
US8949483B1 (en) * | 2012-12-28 | 2015-02-03 | Emc Corporation | Techniques using I/O classifications in connection with determining data movements |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8773451B2 (en) * | 2011-05-03 | 2014-07-08 | Apple Inc. | Color correction method and apparatus for displays |
US9411669B2 (en) * | 2014-09-11 | 2016-08-09 | Sandisk Technologies Llc | Selective sampling of data stored in nonvolatile memory |
CN105653391B (zh) * | 2014-11-13 | 2018-11-02 | 群联电子股份有限公司 | 数据存取方法、存储器控制电路单元及存储器储存装置 |
US9927986B2 (en) * | 2016-02-26 | 2018-03-27 | Sandisk Technologies Llc | Data storage device with temperature sensor and temperature calibration circuitry and method of operating same |
US10733112B2 (en) * | 2017-06-16 | 2020-08-04 | Alibaba Group Holding Limited | Method and apparatus for hardware virtualization |
US10446243B2 (en) * | 2017-12-18 | 2019-10-15 | Macronix International Co., Ltd. | Storage device and associated control method to determine target memory blocks for probe operation |
-
2018
- 2018-04-27 TW TW107114492A patent/TWI677788B/zh active
- 2018-07-02 CN CN201810709258.7A patent/CN110413429B/zh active Active
- 2018-10-25 US US16/170,265 patent/US10776279B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101233481A (zh) * | 2005-08-03 | 2008-07-30 | 桑迪士克股份有限公司 | 通过逻辑地址空间且以直接数据文件为基础操作的介接系统 |
US20100017556A1 (en) * | 2008-07-19 | 2010-01-21 | Nanostar Corporationm U.S.A. | Non-volatile memory storage system with two-stage controller architecture |
US8760922B2 (en) * | 2012-04-10 | 2014-06-24 | Sandisk Technologies Inc. | System and method for micro-tiering in non-volatile memory |
US8949483B1 (en) * | 2012-12-28 | 2015-02-03 | Emc Corporation | Techniques using I/O classifications in connection with determining data movements |
Also Published As
Publication number | Publication date |
---|---|
CN110413429B (zh) | 2022-11-11 |
US10776279B2 (en) | 2020-09-15 |
US20190332547A1 (en) | 2019-10-31 |
TW201945939A (zh) | 2019-12-01 |
CN110413429A (zh) | 2019-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11880313B2 (en) | Storage system and method for performing and authenticating write-protection thereof | |
CN109726138B (zh) | 数据储存装置以及非挥发式存储器操作方法 | |
TWI672590B (zh) | 資料儲存裝置 | |
US10621087B2 (en) | Operating method of data storage device | |
KR20100113083A (ko) | 셀당 단일 비트 nand 플래시 메모리를 에뮬레이팅하기 위한 셀당 다수 비트 nand 플래시 메모리에 대한 제어기 | |
US20210303214A1 (en) | Memory system and information processing system | |
US20230266884A1 (en) | Operating method for storage controller and storage system including same | |
KR20160074025A (ko) | 데이터 저장 장치의 동작 방법 | |
TWI718709B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
US10552333B2 (en) | Data storage device and operating method thereof | |
TWI677788B (zh) | 資料儲存系統以及非揮發式記憶體操作資訊的校正方法 | |
CN109901789A (zh) | 数据存储装置、该数据存储装置的操作方法以及存储系统 | |
CN111324414A (zh) | Nvm存储介质模拟器 | |
KR20190118016A (ko) | 리커버리 성능이 최적화된 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 | |
CN110865945B (zh) | 存储设备的扩展地址空间 | |
KR20170139730A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
JP2006338083A (ja) | メモリコントローラ | |
TWI724483B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
KR102649657B1 (ko) | 데이터 저장 장치 및 동작 방법, 이를 포함하는 스토리지 시스템 | |
KR20180081239A (ko) | 데이터 저장 장치 및 그것의 동작 방법 | |
TWI503841B (zh) | 寫入方法、記憶體控制器與記憶體儲存裝置 | |
CN113204309A (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
CN112579328A (zh) | 处理编程出错的方法与存储设备 | |
EP3504627B1 (en) | Read operation redirect | |
KR20160017583A (ko) | 인증 프로그램을 갖는 메모리 카드, 그것을 포함하는 스토리지 시스템, 및 그것의 동작 방법 |