TWI755059B - 儲存設備及其異常斷電恢復方法 - Google Patents
儲存設備及其異常斷電恢復方法 Download PDFInfo
- Publication number
- TWI755059B TWI755059B TW109131371A TW109131371A TWI755059B TW I755059 B TWI755059 B TW I755059B TW 109131371 A TW109131371 A TW 109131371A TW 109131371 A TW109131371 A TW 109131371A TW I755059 B TWI755059 B TW I755059B
- Authority
- TW
- Taiwan
- Prior art keywords
- system information
- storage device
- flash memory
- power failure
- block
- Prior art date
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
一種儲存設備異常斷電恢復方法包括以下步驟:當判斷儲存設備處於空閒狀態時,對儲存設備進行快照,以獲取當前儲存設備的系統資訊,並在系統資訊中寫入第一標籤後,將系統資訊寫入快閃記憶體中;當異常斷電後重新上電啟動時,尋找最新寫入在快閃記憶體中的系統資訊;當判斷尋找到的系統資訊包括第一標籤時,基於尋找到的系統資訊中快閃記憶體中每一區塊的資料資訊和當前編程的區塊的位置,獲取且解析所述當前編程的區塊的資料資訊,並將尋找到的系統資訊中的寫快取映射表載入至隨機存取記憶體,以使隨機存取記憶體恢復到異常斷電前的狀態。
Description
本申請涉及斷電保護領域,尤其涉及一種儲存設備異常斷電恢復方法及儲存設備。
在常見的儲存設備(例如:固態硬碟(Solid-state drive,SSD、隨身碟)運行過程中,可能會因為使用者強制關閉主機或者突然停電等狀況,導致儲存設備異常斷電。由於儲存設備中的靜態隨機存取記憶體(Static Random Access Memory,SRAM)和動態隨機存取記憶體(Dynamic Random Access Memory,Dram)屬於揮發性記憶體(Volatile Memory),具有斷電後資訊立即丟失的特性,存在再次上電時SSD就無法恢復到之前工作狀態的問題。
有鑑於此,相關業者提出一種儲存設備在正常運行中發生異常斷電後的瞬間斷電恢復(Sudden Power off Recovery,SPOR)操作,確保異常斷電後再次上電時,儲存設備的資料和維護資料的邏輯轉實體映射表不能丟失或者錯誤,以恢復到斷電之前的狀態,但是因為需要解析快閃記憶體中的邏輯轉實體映射表,並掃描快閃記憶體中所有的資料區域,故需要的時間比較久,會影響用戶使用體驗,甚至如果瞬間斷電恢復操作所消耗的時間過久,可能還會出現該儲存設備無法識別的情況。
本申請實施例提供一種儲存設備異常斷電恢復方法及儲存設備,解決目前瞬間斷電恢復操作所消耗的時間比較久,影響用戶使用體驗,甚至可能還會出現該儲存設備無法識別的問題。
為了解決上述技術問題,本申請是這樣實現的:
第一方面,提供了一種儲存設備異常斷電恢復方法,儲存設備包括隨機存取記憶體、快閃記憶體和控制器,儲存設備異常斷電恢復方法由控制器執行,儲存設備異常斷電恢復方法包括:當判斷儲存設備處於空閒狀態時,對儲存設備進行快照,以獲取當前儲存設備的系統資訊,並在系統資訊中寫入第一標籤後,將系統資訊寫入快閃記憶體中,其中,系統資訊包括隨機存取記憶體中的寫快取映射表、快閃記憶體中每一區塊的資料資訊和快閃記憶體中當前編程的區塊的位置;當判斷發生以下至少一種情形:快閃記憶體中的邏輯轉實體映射表被更改、啟動垃圾回收操作、編程一個新的區塊或者除了當前編程的區塊以外的任一區塊的資料資訊改變時,對儲存設備進行快照,以獲取當前儲存設備的系統資訊,並在系統資訊中寫入第二標籤後,將系統資訊寫入快閃記憶體中;當異常斷電後重新上電啟動時,尋找最新寫入在快閃記憶體中的系統資訊,並判斷尋找到的系統資訊中是否包括第一標籤;當判斷尋找到的系統資訊包括第一標籤時,基於尋找到的系統資訊中快閃記憶體中每一區塊的資料資訊和當前編程的區塊的位置,獲取且解析所述當前編程的區塊的資料資訊,並將尋找到的系統資訊中的寫快取映射表載入至隨機存取記憶體,以使隨機存取記憶體恢復到異常斷電前的狀態。
第二方面,提供一種儲存設備,包括隨機存取記憶體、快閃記憶體和控制器,隨機存取記憶體和快閃記憶體分別與控制器連接,控制器包括:非揮發性記憶體和處理器。其中,非揮發性記憶體用於存儲實現儲存設備異常斷電恢復方法的程式碼。處理器耦接非揮發性記憶體,用於載入並執行儲存設備異常斷電恢復方法的程式碼,以當判斷儲存設備處於空閒狀態時,對儲存設備進行快照,以獲取當前儲存設備的系統資訊,並在系統資訊中寫入第一標籤後,將系統資訊寫入快閃記憶體中,其中,系統資訊包括隨機存取記憶體中的寫快取映射表、快閃記憶體中每一區塊的資料資訊和快閃記憶體中當前編程的區塊的位置;當判斷發生以下至少一種情形:快閃記憶體中的邏輯轉實體映射表被更改、啟動垃圾回收操作、編程一個新的區塊或者除了當前編程的區塊以外的任一區塊的資料資訊改變時,對儲存設備進行快照,以獲取當前儲存設備的系統資訊,並在系統資訊中寫入第二標籤後,將系統資訊寫入快閃記憶體中;當異常斷電後重新上電啟動時,尋找最新寫入在快閃記憶體中的系統資訊,並判斷尋找到的系統資訊中是否包括第一標籤;及當判斷尋找到的系統資訊包括第一標籤時,基於尋找到的系統資訊中快閃記憶體中每一區塊的資料資訊和當前編程的區塊的位置,獲取且解析所述當前編程的區塊的資料資訊,並將尋找到的系統資訊中的寫快取映射表載入至隨機存取記憶體,以使隨機存取記憶體恢復到異常斷電前的狀態。
在本申請實施例中,通過在儲存設備處於空閒狀態時對其進行快照獲取當前的系統資訊,並在系統資訊中寫入第一標籤後存入快閃記憶體中,實現儲存設備處於空閒狀態發生異常斷電後再次上電時,若尋找到的最新系統資訊包括第一標籤,則僅解析最新系統資訊中當前編程的區塊的資料資訊,並將最新系統資訊中的寫快取映射表載入至隨機存取記憶體,即可使隨機存取記憶體恢復到異常斷電前的狀態,由於不需解析快閃記憶體中的邏輯轉實體映射表,也不需掃描快閃記憶體中所有區塊的資料資訊,因此,可以在儲存設備處於空閒狀態發生異常斷電後再次上電時,大大縮短當儲存設備處於空閒狀態時的異常斷電恢復所需的時間。
此處所說明的圖式用來提供對本申請的進一步理解,構成本申請的一部分,本申請的示意性實施例及其說明用於解釋本申請,並不構成對本申請的不當限定。
以下將配合相關附圖來說明本發明的實施例。在這些附圖中,相同的標號表示相同或類似的元件或方法流程。
必須瞭解的是,使用在本說明書中的“包含”、“包括”等詞,是用於表示存在特定的技術特徵、數值、方法步驟、作業處理、元件和/或元件,但並不排除可加上更多的技術特徵、數值、方法步驟、作業處理、元件、元件,或以上的任意組合。
本發明中使用如“第一”、“第二”、“第三”等詞是用來修飾申請專利範圍中的元件,並非用來表示之間具有優先權順序,先行關係,或者是一個元件先於另一個元件,或者是執行方法步驟時的時間先後順序,僅用來區別具有相同名字的元件。
必須瞭解的是,當元件描述為“連接”或“耦接”至另一元件時,可以是直接連結、或耦接至其他元件,可能出現中間元件。相反地,當元件描述為“直接連接”或“直接耦接”至另一組件時,其中不存在任何中間組件。
必須瞭解的是,在此所使用的「和/或」的描述方式,包含所列舉的其中之一或多個選項的任意組合。另外,除非說明書中特別指明,否則任何單數格的用語都同時包含複數格的涵義。
請參閱圖1,其為依據本發明實施例的儲存設備的功能方塊圖;如圖所示,本實施例的儲存設備100可包括隨機存取記憶體110、快閃記憶體120和控制器130,隨機存取記憶體110和快閃記憶體120分別與控制器130電性連接,以進行資訊與資料的傳遞。
隨機存取記憶體110為揮發性記憶體,使用時讀寫速度較快,斷電後其內存儲的資料等即刻消失;隨機存取記憶體110用於暫存控制器130執行存取運作所需的資料。快閃記憶體120為非揮發性記憶體,使用時讀寫速度相對較慢,斷電後其內存儲的資料等能夠持續保存較長時間;快閃記憶體120包括複數個區塊(Block),每一區塊包括複數個實體頁面(Page),每一實體頁面都具有個別的實體位址。
控制器130在對快閃記憶體120執行寫入(編程,Program)資料運作時,是以快閃記憶體120的實體頁面為單位來執行寫入資料的運作;控制器130在對快閃記憶體120執行抹除數據運作時,是以快閃記憶體120的區塊為單位來執行抹除數據的運作。
當外部主機要將資料寫入至儲存設備100時,控制器130可從快閃記憶體120中選取一個區塊作為即時區塊(current block)來寫入資料,並於隨機存取記憶體110維護用於紀錄所述即時區塊的各個實體頁面的實體位址-邏輯位址的對應關係的寫快取映射表(write cache mapping table);當控制器130寫入資料至所述即時區塊的最後一個實體頁面時,控制器130可將隨機存取記憶體110中的寫快取映射表存儲至快閃記憶體120,並且依據寫快取映射表來更新快閃記憶體120中的邏輯轉實體映射表(logical to physical mapping table)。其中,邏輯轉實體映射表用於紀錄快閃記憶體120的各個邏輯位址-實體位址的對應關係。當外部主機欲讀取儲存設備100的資料時,控制器130通過邏輯轉實體映射表和/或寫快取映射表獲取外部主機所欲讀取的資料的實體位址,並將資料讀取至外部主機。
請參閱圖2,其為依據本發明實施例的控制器的功能方塊圖。在一些實施例,控制器130可包括主機介面132、處理器134、快閃記憶體介面136和非揮發性記憶體(Non-volatile memory)138。非揮發性記憶體138用於存儲實現儲存設備異常斷電恢復方法的程式碼,例如:可以使用唯讀記憶體(Read-Only Memory,ROM)、可抹除程式化唯讀記憶體(Erasable Programmable Read Only Memory,EPROM)、電子可抹除程式化唯讀記憶體(Electrically Erasable Programmable read only memory,EEPROM)等來實現。處理器134可使用通用硬體(例如,單一處理器、具平行處理能力的多處理器、圖形處理器或其他具運算能力的處理器)來實現,並且在載入與執行實現儲存設備異常斷電恢復方法的程式碼時,完成以下描述的儲存設備異常斷電恢復方法。主機介面132可通過串列先進技術附件(Serial advanced technology attachment,SATA)、快速周邊元件互聯(Peripheral component interconnect express,PCI-E)、通用串列匯流排(Universal serial bus,USB)的介面及關聯的通信協定從外部主機(Host)接收讀取、寫入、抹除等命令,以及相關參數與資料,然後據以執行。快閃記憶體介面136耦接快閃記憶體120,處理器134耦接主機介面132、快閃記憶體介面136和非揮發性記憶體138。處理器134可以通過主機介面132與主機通信,並且通過快閃記憶體介面136與快閃記憶體120通信。快閃記憶體介面136包含多個暫存器,讓處理器134可通過改變暫存器的內容來調整快閃記憶體介面136的物理設置(Physical configurations)。
為了克服如上所述目前瞬間斷電恢復操作所消耗的時間比較久帶來的缺點,本發明實施例提出一種儲存設備異常斷電恢復方法,在儲存設備100處於空閒狀態時,對儲存設備100進行快照,用來獲得當前儲存設備100的系統資訊,並在所述系統資訊中寫入第一標籤(即通過第一標籤對應紀錄儲存設備100處於空閒狀態)後,將所述系統資訊寫入快閃記憶體120中;當判斷快閃記憶體120中的邏輯轉實體映射表被更改、啟動垃圾回收操作、編程(Program)一個新的區塊或者除了當前編程的區塊以外的任一區塊的資料資訊改變時,對儲存設備100進行快照,以獲取當前儲存設備100的系統資訊,並在系統資訊中寫入第二標籤後,將系統資訊寫入快閃記憶體120中;當異常斷電後重新上電啟動時,尋找最新寫入在快閃記憶體120中的系統資訊(即異常斷電發生前最後寫入快閃記憶體120中的系統資訊),並判斷尋找到的系統資訊是否包括第一標籤;當判斷尋找到的系統資訊包括第一標籤時(即判斷出儲存設備100處於空閒狀態時發生異常斷電),基於尋找到的系統資訊中快閃記憶體120中每一區塊的資料資訊和當前編程的區塊的位置,找到當前編程的區塊及其資料資訊,進而解析所述當前編程的區塊的資料資訊,並將尋找到的系統資訊中的寫快取映射表載入至隨機存取記憶體110,以使隨機存取記憶體110恢復到異常斷電前的狀態。由於不需解析快閃記憶體120中的邏輯轉實體映射表,也無需掃描快閃記憶體120中所有區塊的資料資訊,因此,可以在儲存設備處於空閒狀態發生異常斷電後再次上電時,大大縮短異常斷電恢復所需的時間。詳細說明如後:
在一些實施例,控制器130的處理器134載入並執行儲存設備異常斷電恢復方法的程式碼時以實現儲存設備異常斷電恢復方法,可以參考如圖3,圖3為依據本發明實施例的儲存設備異常斷電恢復方法的方法流程圖,詳細說明如下。
步驟S212:當判斷所述儲存設備100處於空閒狀態時,對所述儲存設備100進行快照,以獲取當前所述儲存設備100的系統資訊,並在所述系統資訊中寫入第一標籤後,將所述系統資訊寫入所述快閃記憶體120中,其中,所述系統資訊包括所述隨機存取記憶體110中的寫快取映射表、所述快閃記憶體120中每一區塊的資料資訊和所述快閃記憶體120中當前編程的所述區塊的位置。其中,通過第一標籤對應紀錄當前儲存設備100處於空閒狀態,第一標籤可以是根據實際需求設定的標籤。
在一種可選的實施方式中,處理器134在判斷儲存設備100是否處於空閒狀態的過程包括:持續統計儲存設備100當前待處理的輸入輸出任務的數量,並確認所述當前待處理的輸入輸出任務的數量是否小於一閾值;當判斷所述當前待處理的輸入輸出任務的數量小於所述閾值且維持超過一預設時間時,判斷儲存設備100處於空閒狀態。其中,所述閾值和所述預設時間可以是根據實驗測試得出或經驗設定的某個閾值。
步驟S214:當判斷所述快閃記憶體120中發生以下至少一種情況(邏輯轉實體映射表被更改、啟動垃圾回收操作(例如:對所述快閃記憶體120中的所述邏輯轉實體映射表進行垃圾回收、對所述快閃記憶體120中的存儲資料的區塊進行垃圾回收)、編程一個新的區塊或者除了當前編程的所述區塊以外的任一所述區塊的資料資訊改變)時,對所述儲存設備100進行快照,以獲取當前所述儲存設備100的所述系統資訊,並在所述系統資訊中寫入第二標籤後,將所述系統資訊寫入所述快閃記憶體120中。其中,通過第二標籤對應紀錄快閃記憶體120中的邏輯轉實體映射表被更改、對快閃記憶體120中的所述邏輯轉實體映射表進行垃圾回收、對所述快閃記憶體120中的存儲資料的區塊進行垃圾回收、編程一個新的區塊或者除了當前編程的區塊以外的任一區塊的資料資訊改變,第二標籤可以是根據實際需求設定的標籤。
在一種可選的實施方式中,處理器134還用於判斷是否接收斷電指令;當判斷接收所述斷電指令時,對儲存設備100進行快照,以獲取當前儲存設備100的系統資訊,並在系統資訊中寫入第三標籤後,將系統資訊寫入所述快閃記憶體120中。其中,通過第三標籤對應紀錄儲存設備100接收斷電指令,系統資訊還包括基於管理所述邏輯轉實體映射表的二級表。
步驟S216:當斷電後重新上電啟動時,尋找最新寫入在所述快閃記憶體120中的所述系統資訊,並判斷尋找到的所述系統資訊是否包括所述第一標籤。也就是說,快閃記憶體120所存儲的系統資訊有可能是包括第二標籤或第三標籤,而不包括第一標籤。因此,在一種可選的實施方式中,步驟S216還可包括判斷尋找到的系統資訊是否包括第二標籤;在另一種可選的實施方式中,步驟S216還可包括判斷尋找到的系統資訊是否包括第三標籤。
在一種可選的實施方式中,處理器134在系統資訊所寫入的第一標籤或第二標籤可標註於系統資訊的同一欄位元,且在系統資訊所寫入的第二標籤或第三標籤可標註於系統資訊的另一欄位元;也就是說,處理器134可通過系統資訊中用於標註第一標籤或第二標籤的欄位元判斷系統資訊是否包括第一標籤或第二標籤,及通過系統資訊中用於標註第二標籤或第三標籤的欄位元判斷系統資訊是否包括第二標籤或第三標籤。
在另一種可選的實施方式中,處理器134在系統資訊所寫入的第一標籤、第二標籤或第三標籤可標註於系統資訊的同一欄位元,也就是說,處理器134可通過系統資訊中用於標註第一標籤、第二標籤或第三標籤的欄位元判斷系統資訊是否包括第一標籤、第二標籤或第三標籤。
步驟S218:當判斷尋找到的所述系統資訊包括所述第一標籤時,執行瞬間斷電快速恢復操作,執行瞬間斷電快速恢復操作係基於所述第一標籤的所述系統資訊中所述快閃記憶體120中每一所述區塊的所述資料資訊和所述當前編程的所述區塊的所述位置,獲取且解析所述當前編程的所述區塊的所述資料資訊,並將尋找到的所述系統資訊中的所述寫快取映射表載入至所述隨機存取記憶體110,以使所述隨機存取記憶體110恢復到異常斷電前的狀態。
在一種可選的實施方式中,當判斷尋找到的系統資訊包括所述第二標籤時,執行瞬間斷電恢復(SPOR)操作,以使隨機存取記憶體110恢復到異常斷電前的狀態。其中,所述瞬間斷電恢復操作包括:解析所述快閃記憶體120中的邏輯轉實體映射表,並掃描快閃記憶體120中所有區塊的所述資料資訊。在另一種可選的實施方式中,當判斷尋找到的系統資訊包括所述第三標籤時,執行正常斷電恢復操作,以使所述隨機存取記憶體110恢復到斷電前的狀態。其中,所述正常斷電恢復操作包括:基於管理所述邏輯轉實體映射表的所述二級表將斷電前的邏輯轉實體映射表載入至隨機存取記憶體110。
綜上所述,本申請提供一種儲存設備異常斷電恢復方法及儲存設備,通過在儲存設備處於空閒狀態時對其進行快照獲取當前的系統資訊,並在系統資訊中寫入第一標籤後存入快閃記憶體中,實現儲存設備處於空閒狀態發生異常斷電後再次上電時,若尋找到的最新系統資訊包括第一標籤,則僅解析最新系統資訊中當前編程的區塊的資料資訊,並將最新系統資訊中的寫快取映射表載入至隨機存取記憶體,即可使隨機存取記憶體恢復到異常斷電前的狀態,由於不需解析快閃記憶體中的邏輯轉實體映射表,並掃描快閃記憶體中所有區塊的資料資訊,因此,可以在儲存設備處於空閒狀態發生異常斷電後再次上電時,大大縮短異常斷電恢復所需的時間。也就是,執行瞬間斷電快速恢復操作所需的時間系大大地少於執行瞬間斷電恢復(SPOR)操作所需的時間。
本發明所述的方法中的全部或部分步驟可以電腦程式實現,例如電腦的作業系統、電腦中特定硬體的驅動程式、或軟體程式。此外,也可實現在如上所示的其他類型程式。所屬技術領域中具有通常知識者可將本發明實施例的方法撰寫成電腦程式,為求簡明不再加以描述。依據本發明實施例方法實施的電腦程式可存儲在適當的電腦可讀取介質,例如DVD、CD-ROM、USB、硬碟,亦可置於可通過網路(例如,互聯網,或其他適當載體)存取的網路服務器。
雖然在本申請的圖式中包含了以上描述的組件,但不排除在不違反發明的精神下,使用更多其他的附加元件,已達成更佳的技術效果。此外,雖然本申請的流程圖採用指定的順序來執行,但是在不違反發明精神的情況下,所屬技術領域的技術人員可以在達到相同效果的前提下,修改這些步驟間的順序,所以,本發明並不局限於僅使用如上所述的順序。此外,所屬技術領域的技術人員也可以將若干步驟整合為一個步驟,或者是除了這些步驟外,循序或平行地執行更多步驟,本發明也不因此而局限。
雖然本發明使用以上實施例進行說明,但需要注意的是,這些描述並非用於限縮本發明。相反地,此發明涵蓋了所屬技術領域中的技術人員顯而易見的修改與相似設置。所以,申請專利範圍須以最寬廣的方式解釋來包含所有顯而易見的修改與相似設置。
100:儲存設備
110:隨機存取記憶體
120:快閃記憶體
130:控制器
132:主機介面
134:處理器
136:快閃記憶體介面
138:非揮發性記憶體
S212:步驟
S214:步驟
S216:步驟
S218:步驟
圖1為依據本發明實施例的儲存設備的功能方塊圖。
圖2為依據本發明實施例的控制器的功能方塊圖。
圖3為依據本發明實施例的儲存設備異常斷電恢復方法的方法流程圖。
S212:步驟
S214:步驟
S216:步驟
S218:步驟
Claims (10)
- 一種儲存設備異常斷電恢復方法,所述儲存設備包括一隨機存取記憶體、一快閃記憶體和一控制器,所述儲存設備斷電恢復方法由所述控制器執行,所述儲存設備異常斷電恢復方法包括: 當判斷所述儲存設備處於空閒狀態時,對所述儲存設備進行快照,以獲取當前所述儲存設備的系統資訊,並在所述系統資訊中寫入一第一標籤後,將所述系統資訊寫入所述快閃記憶體中; 當判斷所述快閃記憶體中發生以下至少一種情形:一邏輯轉實體映射表被更改、啟動垃圾回收操作、編程一個新的區塊或者除了當前編程的所述區塊以外的任一所述區塊的資料資訊改變時,對所述儲存設備進行快照,以獲取當前所述儲存設備的所述系統資訊,並在所述系統資訊中寫入一第二標籤後,將所述系統資訊寫入所述快閃記憶體中; 當異常斷電後重新上電啟動時,尋找最新寫入在所述快閃記憶體中的所述系統資訊,並判斷尋找到的所述系統資訊中是否包括所述第一標籤;以及 當判斷尋找到的所述系統資訊包括所述第一標籤時,基於尋找到的所述系統資訊中所述快閃記憶體中每一所述區塊的所述資料資訊和所述當前編程的所述區塊的所述位置,獲取且解析所述當前編程的所述區塊的所述資料資訊,並將尋找到的所述系統資訊中的所述寫快取映射表載入至所述隨機存取記憶體,以使所述隨機存取記憶體恢復到異常斷電前的狀態。
- 如請求項1所述的儲存設備異常斷電恢復方法,還包括:判斷尋找到的所述系統資訊是否包括所述第二標籤;當判斷尋找到的所述系統資訊包括所述第二標籤時,執行瞬間斷電恢復操作,以使所述隨機存取記憶體恢復到異常斷電前的狀態,其中,所述瞬間斷電恢復操作包括:解析所述快閃記憶體中的所述邏輯轉實體映射表,以及掃描所述快閃記憶體中所有區塊的所述資料資訊。
- 如請求項1所述的儲存設備異常斷電恢復方法,所述第一標籤中的所述系統資訊包括有:所述隨機存取記憶體中的寫快取映射表、所述快閃記憶體中每一區塊的資料資訊和所述快閃記憶體中當前編程的所述區塊的位置。
- 如請求項1所述的儲存設備異常斷電恢復方法,在當異常斷電後重新上電啟動時,尋找最新寫入在所述快閃記憶體中的所述系統資訊,並判斷尋找到的所述系統資訊中是否包括所述第一標籤之前,所述儲存設備異常斷電恢復方法還包括: 當接收斷電指令時,對所述儲存設備進行快照,以獲取當前所述儲存設備的所述系統資訊,並在所述系統資訊中寫入一第三標籤後,將所述系統資訊寫入所述快閃記憶體中。
- 如請求項1所述的儲存設備異常斷電恢復方法,所述啟動垃圾回收操作還包括:對所述快閃記憶體中的存儲資料的區塊進行垃圾回收、或/及所述邏輯轉實體映射表進行垃圾回收。
- 一種儲存設備,包括一隨機存取記憶體、一快閃記憶體和一控制器,所述隨機存取記憶體和所述快閃記憶體分別與所述控制器連接,所述控制器包括: 一非揮發性記憶體,用於存儲實現儲存設備異常斷電恢復方法的程式碼;以及 一處理器,耦接所述非揮發性記憶體,用於載入並執行所述儲存設備異常斷電恢復方法的程式碼,以當判斷所述儲存設備處於空閒狀態時,對所述儲存設備進行快照,以獲取當前所述儲存設備的系統資訊,並在所述系統資訊中寫入一第一標籤後,將所述系統資訊寫入所述快閃記憶體中;當判斷發生以下至少一種情形:所述快閃記憶體中的邏輯轉實體映射表被更改、啟動垃圾回收操作、編程一個新的區塊或者除了當前編程的所述區塊以外的任一所述區塊的資料資訊改變時,對所述儲存設備進行快照,以獲取當前所述儲存設備的所述系統資訊,並在所述系統資訊中寫入一第二標籤後,將所述系統資訊寫入所述快閃記憶體中;當異常斷電後重新上電啟動時,尋找最新寫入在所述快閃記憶體中的所述系統資訊,並判斷尋找到的所述系統資訊中是否包括所述第一標籤;及當判斷尋找到的所述系統資訊包括所述第一標籤時,基於尋找到的所述系統資訊中所述快閃記憶體中每一所述區塊的所述資料資訊和所述當前編程的所述區塊的所述位置,獲取且解析所述當前編程的所述區塊的所述資料資訊,並將尋找到的所述系統資訊中的所述寫快取映射表載入至所述隨機存取記憶體,以使所述隨機存取記憶體恢復到異常斷電前的狀態。
- 如請求項6所述的儲存設備,所述處理器還用於載入並執行所述儲存設備異常斷電恢復方法的程式碼,以判斷尋找到的所述系統資訊中是否包括所述第二標籤;及當判斷尋找到的所述系統資訊包括所述第二標籤時,執行瞬間斷電恢復操作,以使所述隨機存取記憶體恢復到異常斷電前的狀態,其中,所述系統資訊包括所述隨機存取記憶體中的寫快取映射表、所述快閃記憶體中每一區塊的資料資訊和所述快閃記憶體中當前編程的所述區塊的位置所述瞬間斷電恢復操作包括:所述處理器解析所述快閃記憶體中的所述邏輯轉實體映射表,並掃描所述快閃記憶體中所有區塊的所述資料資訊。
- 如請求項6所述的儲存設備,其中,所述系統資訊包括所述隨機存取記憶體中的寫快取映射表、所述快閃記憶體中每一區塊的資料資訊和所述快閃記憶體中當前編程的所述區塊的位置。
- 如請求項6所述的儲存設備,所述處理器還用於載入並執行所述儲存設備異常斷電恢復方法的程式碼,以判斷是否接收斷電指令;所述快照模組還用於當所述判斷模組判斷接收所述斷電指令時,對所述儲存設備進行快照,以獲取當前所述儲存設備的所述系統資訊,並在所述系統資訊中寫入一第三標籤後,將所述系統資訊寫入所述快閃記憶體中。
- 如請求項6所述的儲存設備,所述啟動垃圾回收操作還包括:對所述快閃記憶體中的存儲資料的區塊進行垃圾回收或/及所述邏輯轉實體映射表進行垃圾回收。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109131371A TWI755059B (zh) | 2020-09-11 | 2020-09-11 | 儲存設備及其異常斷電恢復方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW109131371A TWI755059B (zh) | 2020-09-11 | 2020-09-11 | 儲存設備及其異常斷電恢復方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI755059B true TWI755059B (zh) | 2022-02-11 |
TW202211026A TW202211026A (zh) | 2022-03-16 |
Family
ID=81329492
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109131371A TWI755059B (zh) | 2020-09-11 | 2020-09-11 | 儲存設備及其異常斷電恢復方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI755059B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114691418A (zh) * | 2022-05-30 | 2022-07-01 | 阿里巴巴(中国)有限公司 | 存储设备的信息恢复方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200532441A (en) * | 2003-10-28 | 2005-10-01 | Sandisk Corp | Internal maintenance schedule request for non-volatile memory system |
TWI506431B (zh) * | 2012-12-28 | 2015-11-01 | Infomicro Electronics Shenzhen Ltd | 虛擬記憶體設備驅動器、用於在主機上執行之虛擬記憶體設備驅動器、刷新快閃記憶體的方法、快閃記憶體刷新的方法、超級增強耐力設備硬碟固體狀態驅動機耐用轉換層之方法、超級增強耐力設備及耐力快閃記憶體檔案系統 |
TWI651650B (zh) * | 2018-02-05 | 2019-02-21 | 大陸商深圳大心電子科技有限公司 | 記憶體管理方法及使用所述方法的儲存控制器 |
TW202001495A (zh) * | 2018-06-27 | 2020-01-01 | 韓商愛思開海力士有限公司 | 供電設備和包括該供電設備的電子設備 |
-
2020
- 2020-09-11 TW TW109131371A patent/TWI755059B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200532441A (en) * | 2003-10-28 | 2005-10-01 | Sandisk Corp | Internal maintenance schedule request for non-volatile memory system |
TWI506431B (zh) * | 2012-12-28 | 2015-11-01 | Infomicro Electronics Shenzhen Ltd | 虛擬記憶體設備驅動器、用於在主機上執行之虛擬記憶體設備驅動器、刷新快閃記憶體的方法、快閃記憶體刷新的方法、超級增強耐力設備硬碟固體狀態驅動機耐用轉換層之方法、超級增強耐力設備及耐力快閃記憶體檔案系統 |
TWI651650B (zh) * | 2018-02-05 | 2019-02-21 | 大陸商深圳大心電子科技有限公司 | 記憶體管理方法及使用所述方法的儲存控制器 |
TW202001495A (zh) * | 2018-06-27 | 2020-01-01 | 韓商愛思開海力士有限公司 | 供電設備和包括該供電設備的電子設備 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114691418A (zh) * | 2022-05-30 | 2022-07-01 | 阿里巴巴(中国)有限公司 | 存储设备的信息恢复方法、装置、电子设备及存储介质 |
CN114691418B (zh) * | 2022-05-30 | 2022-08-23 | 阿里巴巴(中国)有限公司 | 存储设备的信息恢复方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
TW202211026A (zh) | 2022-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI596480B (zh) | 記憶體儲存系統及其中控裝置、管理方法與斷電復原方法 | |
TWI417727B (zh) | 記憶體儲存裝置、其記憶體控制器與回應主機指令的方法 | |
US20150331624A1 (en) | Host-controlled flash translation layer snapshot | |
US10474618B2 (en) | Debug data saving in host memory on PCIE solid state drive | |
TWI628542B (zh) | 快閃記憶體的垃圾回收斷電回復方法以及使用該方法的裝置 | |
US20190369892A1 (en) | Method and Apparatus for Facilitating a Trim Process Using Auxiliary Tables | |
CN111949220B (zh) | 存储设备异常断电恢复方法及存储设备 | |
US12019544B2 (en) | Memory mapping for hibernation | |
CN105677258A (zh) | 一种日志数据管理方法及系统 | |
TWI489466B (zh) | 記憶體抹除方法、記憶體控制器與記憶體儲存裝置 | |
KR102179829B1 (ko) | 런 타임 배드 셀을 관리하는 스토리지 시스템 | |
TWI459198B (zh) | 記憶體儲存裝置、其記憶體控制器與有效資料識別方法 | |
KR20210041159A (ko) | 정정 가능한 독출 오류가 발생한 데이터를 복구하는 메모리 시스템 및 호스트의 동작 방법 | |
TW202123012A (zh) | 固態式硬碟及用於固態式硬碟的方法及製品 | |
TW201941061A (zh) | 電子機器及其控制方法、電腦系統及其控制方法以及主機之控制方法 | |
TWI665606B (zh) | 資料儲存裝置之測試系統與資料儲存裝置之測試方法 | |
TWI755059B (zh) | 儲存設備及其異常斷電恢復方法 | |
CN117033268B (zh) | 一种ssd控制器、数据处理方法、设备及存储介质 | |
US11314453B2 (en) | Memory system managing map data based on risk of malware—infection of host, and operating method thereof | |
CN110286850B (zh) | 固态硬盘元数据的写入方法、恢复方法及固态硬盘 | |
TWI805449B (zh) | 藉助於多階段垃圾收集管理以進行記憶體裝置的存取控制的方法、用於記憶體裝置的控制器、以及記憶體裝置 | |
TWI831623B (zh) | 借助序號分配時序控制來進行記憶體裝置之存取管理的方法、記憶體裝置、電子裝置以及記憶體裝置的控制器 | |
TWI796935B (zh) | 記憶體控制方法與記憶體儲存系統 | |
US20240264750A1 (en) | Atomic Operations Implemented using Memory Services of Data Storage Devices | |
TW201532053A (zh) | 記憶體抹除方法、記憶體控制器與記憶體儲存裝置 |