TW201901417A - 固態硬碟執行刪除命令的方法 - Google Patents
固態硬碟執行刪除命令的方法 Download PDFInfo
- Publication number
- TW201901417A TW201901417A TW106117082A TW106117082A TW201901417A TW 201901417 A TW201901417 A TW 201901417A TW 106117082 A TW106117082 A TW 106117082A TW 106117082 A TW106117082 A TW 106117082A TW 201901417 A TW201901417 A TW 201901417A
- Authority
- TW
- Taiwan
- Prior art keywords
- unit
- flag
- lpn
- solid state
- delete
- Prior art date
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一種固態硬碟執行刪除命令的方法,在接收刪除命令時,搜尋第一管理層相對應的邏輯實體對照單元,開啟刪除旗標,由包含邏輯實體對照單元的作業單位,找出第二管理層相對應的邏輯轉換單元,檢查對應至邏輯轉換單元的邏輯實體對照單元全部開啟刪除旗標,開啟邏輯轉換單元的刪除旗標,不記錄更新且備份第二管理層,以加速執行刪除命令。
Description
本發明有關一種固態硬碟,尤其關於固態硬碟利用雙層對照表,執行主機刪除命令的方法。
固態硬碟(Solid State Drive,簡稱SSD)是由反及閘快閃記憶體陣列(NAND Flash Memory Array)整合成為單一的儲存裝置。因快閃記憶體具有抹除次數限制,資料需分散儲存在固態硬碟的快閃記憶體陣列,並利用邏輯實體對照表(Logical to Physical Mapping Table),管理資料的邏輯位址(Logical Block Address,簡稱LBA)與儲存在快閃記憶體的實體位址(Physical Block Address,簡稱PBA)的對照關係,以利快速搜尋及存取固態硬碟的資料。
先前技術的固態硬碟在開機啟動時,為了管理資料的邏輯位址與儲存的實體位址的關係,先讀取快閃記憶體陣列中各資料區塊的管理資料,形成邏輯實體對照表,儲存在緩衝記憶體中。由於緩衝記憶體屬於揮發性的隨機存取的記憶體,一旦關機斷電,緩衝記憶體的記憶資料立即消失,連帶邏輯實體對照表也跟著消失。因此需要定時將邏輯實體對照表備份(Snapshot)至非揮發的快閃記憶體陣列,以利開機後,讀取備份在快閃 記憶體陣列的邏輯實體對照表,在緩衝記憶體中快速重建邏輯實體對照表。
由於前述先前技術固態硬碟不論邏輯實體對照表有無更新,均需整個定時與使用者資料(User Data)備份至快閃記憶體陣列,邏輯實體對照表備份資料的多寡,直接影響緩衝記憶體中使用者資料的存取效能。因此另有先前技術紀錄邏輯實體對照表的更新狀態,僅針對更新過的對照位址進行備份,減少備份邏輯實體對照表的資料量,以降低對使用者資料存取的影響。
然而,前述先前技術紀固態硬碟接收主機大量刪除命令(Trim Command),例如更新格式(Format),在執行刪除命令時,對邏輯實體對照表中全部對照位址的刪除欄位,進行開啟刪除旗標,造成固態硬碟全部更新,導致需要將邏輯實體對照表全部備份至快閃記憶體陣列。例如邏輯實體對照表約使用8個資料區塊(Block),每個資料區塊包含256資料頁(Page),每一資料頁約需3微秒(ms)的備份時間,單單備份邏輯實體對照表的時間就需6-7秒,一筆使用者資料寫入時間被拖延,就會造成時間耗盡(time out)而執行失敗,嚴重影響使用者資料的存取效能。因此,固態硬碟在執行刪除命令的方法上,仍有問題亟待解決。
本發明的目的提供一種固態硬碟執行刪除命令的方法,在執行刪除命令時,對第一管理層的需求邏輯實體對照單元更新開啟刪除旗標,再檢查對應至第二管理層的需求邏輯轉換單元的邏輯實體對照單元全部開啟刪除旗標時,開啟需求邏輯轉換單元的刪除旗標,且不記錄更新需求邏輯實體對照單元,減少備份邏輯實體對照單元更新部分,以快速執行 刪除命令。
本發明的另一目的提供一種固態硬碟執行刪除命令的方法,藉由全部備份第二管理層,在開機時根據備份第二管理層的的開啟刪除旗標的刪除位元欄位,將相對應邏輯實體對照單元的刪除欄位開啟刪除旗標,以維持第一管理層的正確性。
為了達到前述發明的目的,本發明固態硬碟執行刪除命令的方法,在接收刪除命令後,根據刪除命令需求的實體區塊單元,由第一管理層的實體區塊單元欄位搜尋相對應的需求邏輯實體對照單元,更新需求邏輯實體對照單元的刪除欄位,開啟刪除旗標,再由包含需求邏輯實體對照單元的作業單位,找出相對應第二管理層的需求邏輯轉換單元,接著檢查對應至需求邏輯轉換單元的邏輯實體對照單元的刪除旗標全部開啟刪除旗標,將需求邏輯轉換單元(LTN)開啟刪除旗標,不記錄更新需求邏輯實體對照單元,最後備份第二管理層。當檢查對應至需求邏輯轉換單元的邏輯實體對照單元的刪除旗標未全部開啟刪除旗標,記錄更新需求邏輯實體對照單元,進行備份記錄更新的邏輯實體對照單元。
本發明固態硬碟執行刪除命令的方法的第一管理層,包含複數個作業單位,每一個作業單位包含複數個邏輯實體對照單元,邏輯實體對照單元對應至固態硬碟的快閃記憶體陣列中的一個實體區塊單元。第一管理層包含以邏輯實體對照單元為索引的一層索引欄位,記載實體位址的實體區塊單元欄位,及標示刪除旗標的刪除欄位。
本發明固態硬碟執行刪除命令的方法的第二管理層,針對第一管理層的每一個作業單位,設置相對應的邏輯轉換單元。第二管理層包 含以邏輯轉換單元作為索引二層索引欄位,記載相對應作業單位的實體位址的儲存位址欄位,及標示刪除旗標的刪除位元欄位。本發明的刪除旗標利用[1]代表開啟刪除旗標,表示紀錄的資料為無效,刪除旗標[0]代表關閉刪除旗標,表示紀錄的資料為有效。第一管理層及第二管理層的管理資料儲存在固態硬碟的緩衝記憶體,且定期的將第一管理層記錄更新部分及第二管理層,備份到固態硬碟的快閃記憶體陣列。
本發明固態硬碟執行刪除命令的方法,在固態硬碟重新開機時,根據備份的第二管理層中開啟刪除旗標的邏輯轉換單元,找尋第一管理層相對應的邏輯實體對照單元,對未開啟刪除旗標的相對應邏輯實體對照單元,開啟刪除旗標。
1‧‧‧主機
2‧‧‧中央處理器
3‧‧‧動態隨機記憶體
4‧‧‧傳輸介面
5‧‧‧固態硬碟
6‧‧‧控制器
7‧‧‧緩衝記憶體
8‧‧‧快閃記憶體陣列
9‧‧‧快閃記憶體
10‧‧‧第一管理層
11‧‧‧作業單位
12‧‧‧邏輯實體對照單元(LPN)
13‧‧‧實體區塊單元(PBN)
14‧‧‧一層索引欄位
15‧‧‧實體區塊單元欄位
16‧‧‧刪除欄位
20‧‧‧第二管理層
21‧‧‧邏輯轉換單元(LTN)
22‧‧‧二層索引欄位
23‧‧‧儲存位址欄位
24‧‧‧刪除位元欄位
圖1 為本發明電子裝置儲存系統的功能方塊圖。
圖2 為本發明雙層管理層的示意圖。
圖3 為本發明第一管理層的示意圖。
圖4 為本發明第二管理層的示意圖。
圖5 為本發明固態硬碟執行刪除命令的方法的流程圖。
圖6 為本發明固態硬碟執行刪除命令開機的流程圖。
有關本發明為達成上述目的,所採用之技術手段及其功效,茲舉較佳實施例,並配合圖式加以說明如下。
請同時參閱圖1至圖4,圖1為本發明電子裝置儲存系統的功 能方塊圖,圖2為本發明雙層管理層的示意圖,圖3為本發明第一管理層的示意圖,圖4為本發明第二管理層的示意圖。圖1中,本發明電子裝置儲存系統,在主機1設中央處理器(CPU)2及動態隨機記憶體(DRAM)3,由中央處理器2配合動態隨機記憶體3將存取使用者資料的邏輯位址的指令,發出至連接在傳輸介面4的固態硬碟(SSD)5,固態硬碟5內設控制器6及緩衝記憶體7,由控制器6配合緩衝記憶體7接收主機1的存取資料的邏輯位址的指令,至相對應邏輯位址的快閃記憶體陣列8中快閃記憶體9的實體位址,存取資料到緩衝記憶體7,再傳輸至主機1的動態隨機記憶體3,以供主機1備用。
為了管理資料的邏輯位址與儲存在快閃記憶體陣列8的實體位址的相對關係,固態硬碟5在啟動時,先讀取快閃記憶體陣列8中各快閃記憶體9使用者資料區塊的管理資料,在緩衝記憶體7中形成圖2中第一管理層10及第二管理層20的管理資料。且為了防止揮發性的緩衝記憶體7在斷電時記憶資料消失,定期的將第一管理層10記錄更新部分及全部的第二管理層20,備份到非揮發的快閃記憶體陣列8的管理資料區塊9a。
由於固態硬碟5以4K位元組為存取的作業單位11,第一管理層10包含複數個作業單位11,而每一個作業單位11包含約1024個邏輯實體對照單元(Logical Physical No.,以下簡稱LPN)12。每一個LPN單元12為4位元組,分別對應至快閃記憶體陣列8中使用者資料區塊的一個4K位元組實體區塊單元(Physical Block No,以下簡稱PBN)13,用以記錄PBN 13的實體位址與刪除旗標。由於一個作業單位11中的每一個LPN單元12對應的PBN單元13,分散在快閃記憶體陣列8,因此PBN單元13不一定為集中在一起的資料區塊。此外,本發明第二管理層20針對第一管理層10的每一個作業單位11, 設置相對應的邏輯轉換單元(Logical Translation No,以下簡稱LTN)21,用以記錄作業單位11的整體的實體位址與刪除旗標。
圖3中,本發明利用第一管理層10管理LPN 12與PBN 13對應關係,本實施例將快閃記憶體陣列的PBN 13例如依序編號為PBN0001至PBNn,第一管理層10包含m個作業單位11,每一個作業單位11包含1024個LPN 12,例如將第a個作業單位11的1024個LPN 12依序編號為LPNa0001至LPNa1024,因每一個LPN 12相對應一個PBN 13,第a個作業單位11相對應1024個PBN 13。第一管理層10以LPN 12為一層索引欄位14,記載內容主要包含PBN欄位15及刪除欄位16等資料欄位,其中PBN欄位15記載資料實際儲存在快閃記憶體陣列8使用者資料區塊的實體位址,而刪除欄位16用以標示刪除旗標,利用刪除旗標[1]代表開啟刪除旗標,表示該LPN 12紀錄PBN 13的資料為無效,刪除旗標[0]代表關閉刪除旗標,表示該LPN 12紀錄PBN 13的資料為有效。第一管理層10僅需要定時將記錄更新的部分備份至快閃記憶體陣列8的管理資料區塊9a。本發明針對第一管理層10的m個作業單位11,設定m個LTN 21,使每一個作業單位11相對應一個LTN 21。
圖4中,本發明利用第二管理層20管理LTN 21與作業單位11的對應關係,本實施例將第二管理層20的LTN 21依序編號LTN1至LTNm作為二層索引欄位22,每一LTN 21記載內容包含儲存位址欄位23及刪除位元欄位24等欄位,儲存位址欄位23記載相對應作業單位11的管理資料儲存在管理資料區塊9a的實體位址PBNa,刪除位元欄位24用以標示刪除旗標,利用刪除旗標[1]代表開啟刪除旗標,表示LTN 21相對應作業單位11中的每一LPN 12全部開啟刪除旗標為[1],刪除旗標[0]代表關閉刪除旗標,表示LTN 21相對應作業單位11中的每一LPN 12未全部開啟刪除旗標。第二管理層20需要定時全部備份至快閃記憶體陣列8的管理資料區塊9a。
本發明的固態硬碟5執行刪除命令時,接收主機1的刪除命令後,固態硬碟5的控制器6根據刪除命令需求的LPN,由第一管理層10將需求的LPN 12的刪除欄位16,開啟刪除旗標為[1],設定需求的LPN 12的相對應PBN 13資料為無效。接著由包含需求的LPN 12的作業單位11找出相對應需求的LTN 21,再利用第二管理層20需求的LTN 21的儲存位址欄位23的實體位址PBNa,取出相對應作業單位11的管理資料,檢查對應至需求LTN 21的LPN 12的刪除旗標是否全部開啟?如果全部開啟刪除旗標,則將需求的LTN 21的刪除位元欄位24開啟刪除旗標為[1],設定相對應作業單位11每一LPN 12全部開啟刪除旗標,不記錄更新需求的LPN 12,且不備份需求的LPN 12,僅備份第二管理層20。如果檢查對應至需求的LTN 21的LPN 12的刪除旗標未全部開啟刪除旗標,則記錄更新需求的LPN 12,且進行備份需求的LPN 12。
本發明對於例如更新格式(FORMAT)等大量連續的刪除命命,舉例說明如圖3中,刪除命命需要刪除第b個作業單位11的1024個LPN 12時,將LPNb0001至LPNb1024的刪除欄位16,一一開啟刪除旗標為[1],再由第b個作業單位11找出相對應的LTN2,在圖4中,由LTN2的儲存位址欄位23的實體位址PBNa5,取出相對應第b個作業單位11的管理資料,檢查對應至LTN2的每一個LPN 12的刪除旗標全部開啟,將LTN2的刪除位元欄位24開啟刪除旗標為[1],設定相對應第b個作業單位11每一LPN 12全部開啟刪除旗標,不記錄更新且不備份第b個作業單位11每一LPN 12,僅備份第二管理 層20利,用更新一個LTN2,取代備份更新的第b個作業單位11中1024個LPN 12的刪除狀態,因此大幅減少備份資料。
如圖5所示,為本發明固態硬碟執行刪除命令的方法的流程圖。本發明固態硬碟執行刪除命令的方法的詳細步驟說明如下:在步驟S1,首先由固態硬碟接收刪除命令;步驟S2,根據刪除命令搜尋第一管理層的需求LPN,更新需求LPN的刪除欄位,開啟刪除旗標;接著步驟S3,由需求LPN的作業單位找出第二管理層相對應需求LTN;在步驟S4,檢查對應至需求LTN的LPN的刪除旗標是否全部開啟?如果未全部開啟刪除旗標,則至步驟S5,記錄更新需求LPN,然後直接至步驟S8,如果檢查對應至需求LTN的LPN的刪除旗標全部開啟刪除旗標,則至步驟S6,則將需求LTN開啟刪除旗標;在步驟S7,不記錄更新需求LPN;最後在步驟S8,備份第二管理層及記錄更新的LPN。
請再參考圖2至圖4,本發明固態硬碟再開機時,本發明根據第二管理層20的LTN 21開啟刪除旗標的刪除位元欄位24,找尋第一管理層10相對應的LPN 12,對LPN 12未開啟刪除旗標的刪除欄位16,開啟刪除旗標,以維持第一管理層10的正確性。
如圖6所示,為本發明固態硬碟執行刪除命令方法的開機流程圖。本發明開機的詳細步驟說明如下:步驟S10,固態硬碟重新開機時;步驟S11,以第二管理層中開啟刪除旗標的LTN,找尋第一管理層相對應的LPN;步驟S12,對相對應LPN未開啟刪除旗標的刪除欄位,開啟刪除旗標。
因此,本發明固態硬碟執行刪除命令的方法,在執行刪除命令時,對第一管理層的需求邏輯實體對照單元更新開啟刪除旗標,並藉由 檢查檢查對應至第二管理層的需求邏輯轉換單元的邏輯實體對照單元全部開啟刪除旗標時,開啟需求邏輯轉換單元的刪除旗標,且不記錄更新需求邏輯實體對照單元,減少備份邏輯實體對照單元更新部分,達到快速執行刪除命令的目的。本發明並可藉由全部備份第二管理層,在開機時根據備份第二管理層的開啟刪除旗標的刪除位元欄位,將相對應作業單位中的邏輯實體對照單元的刪除欄位開啟刪除旗標,達到維持第一管理層正確性的目的。
以上所述者,僅為用以方便說明本發明之較佳實施例,本發明之範圍不限於該等較佳實施例,凡依本發明所做的任何變更,於不脫離本發明之精神下,皆屬本發明申請專利之範圍。
Claims (10)
- 一種固態硬碟執行刪除命令的方法,其步驟包含:接收刪除命令;根據刪除命令搜尋第一管理層的需求邏輯實體對照單元(LPN),更新需求邏輯實體對照單元(LPN)的刪除欄位,開啟刪除旗標;由需求邏輯實體對照單元(LPN)的作業單位找出相對應第二管理層的需求邏輯轉換單元(LTN);檢查對應至需求邏輯轉換單元(LTN)的邏輯實體對照單元(LPN)的刪除旗標全部開啟刪除旗標;將需求邏輯轉換單元(LTN)開啟刪除旗標;不記錄更新需求邏輯實體對照單元(LPN);備份第二管理層。
- 如申請專利範圍第1項所述之固態硬碟執行刪除命令的方法,其中檢查對應至需求邏輯轉換單元(LTN)的邏輯實體對照單元(LPN)的刪除旗標未全部開啟刪除旗標,記錄更新需求邏輯實體對照單元(LPN),進行備份記錄更新的邏輯實體對照單元(LPN)。
- 如申請專利範圍第1項所述之固態硬碟執行刪除命令的方法,其中該第一管理層包含複數個作業單位,每一個作業單位包含複數個邏輯實體對照單元(LPN),邏輯實體對照單元(LPN)對應至固態硬碟的快閃記憶體陣列中的一個實體區塊單元(PBN),記錄該實體區塊單元(PBN)的實體位址與刪除旗標。
- 如申請專利範圍第3項所述之固態硬碟執行刪除命令的方法,其中該第一 管理層包含以邏輯實體對照單元(LPN)為索引的一層索引欄位,記載實體位址的實體區塊單元欄位,及標示刪除旗標的刪除欄位。
- 如申請專利範圍第3項所述之固態硬碟執行刪除命令的方法,其中該第二管理層針對第一管理層的每一個作業單位,設置相對應的邏輯轉換單元(LTN),記錄該作業單位的實體位址與刪除旗標。
- 如申請專利範圍第5項所述之固態硬碟執行刪除命令的方法,其中該第二管理層包含以邏輯轉換單元(LTN)作為索引二層索引欄位,記載相對應作業單位的實體位址的儲存位址欄位,及標示刪除旗標的刪除位元欄位。
- 如申請專利範圍第5項所述之固態硬碟執行刪除命令的方法,其中該刪除旗標利用[1]代表開啟刪除旗標,表示紀錄的資料為無效,刪除旗標[0]代表關閉刪除旗標,表示紀錄的資料為有效。
- 如申請專利範圍第1項所述之固態硬碟執行刪除命令的方法,其中該固態硬碟根據刪除命令需求的邏輯實體對照單元(LPN),由第一管理層包含需求邏輯實體對照單元(LPN)的作業單位找出相對應的需求邏輯實體對照單元(LPN)。
- 如申請專利範圍第1項所述之固態硬碟執行刪除命令的方法,其中該固態硬碟重新開機時,根據備份的第二管理層中開啟刪除旗標的邏輯轉換單元(LTN),找尋第一管理層相對應的邏輯實體對照單元(LPN),對未開啟刪除旗標的相對應邏輯實體對照單元(LPN),開啟刪除旗標。
- 如申請專利範圍第1項所述之固態硬碟執行刪除命令的方法,其中該第一管理層及第二管理層的管理資料儲存在固態硬碟的緩衝記憶體,且定期的將第一管理層記錄更新部分及第二管理層,備份到固態硬碟的快閃記憶體 陣列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106117082A TW201901417A (zh) | 2017-05-22 | 2017-05-22 | 固態硬碟執行刪除命令的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW106117082A TW201901417A (zh) | 2017-05-22 | 2017-05-22 | 固態硬碟執行刪除命令的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201901417A true TW201901417A (zh) | 2019-01-01 |
Family
ID=65803269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW106117082A TW201901417A (zh) | 2017-05-22 | 2017-05-22 | 固態硬碟執行刪除命令的方法 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TW201901417A (zh) |
-
2017
- 2017-05-22 TW TW106117082A patent/TW201901417A/zh unknown
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10860217B2 (en) | System and method of management of multi-tier storage systems | |
US11782632B2 (en) | Selective erasure of data in a SSD | |
US9164887B2 (en) | Power-failure recovery device and method for flash memory | |
US9684663B2 (en) | SWAT command and API for atomic swap and trim of LBAs | |
US8756458B2 (en) | Mount-time reconciliation of data availability | |
US10877898B2 (en) | Method and system for enhancing flash translation layer mapping flexibility for performance and lifespan improvements | |
JP2018152127A (ja) | 注釈付きアトミック書き込み操作を行う方法および装置 | |
US20100070729A1 (en) | System and method of managing metadata | |
US9798673B2 (en) | Paging enablement of storage translation metadata | |
US20180150390A1 (en) | Data Storage Device and Operating Method Therefor | |
KR20170038853A (ko) | 호스트-관리 비휘발성 메모리 | |
US10942811B2 (en) | Data processing method for solid state drive | |
CN111026325B (zh) | 闪存控制器、闪存控制器的控制方法及相关的电子装置 | |
JP7475989B2 (ja) | メモリシステムおよび制御方法 | |
US20210042050A1 (en) | Method and apparatus for rebuilding memory mapping tables | |
US11372774B2 (en) | Method and system for a solid state drive with on-chip memory integration | |
US9329994B2 (en) | Memory system | |
CN107562639B (zh) | 擦除块读请求处理方法与装置 | |
TW201901417A (zh) | 固態硬碟執行刪除命令的方法 | |
US10732875B2 (en) | Data processing method for solid state drive | |
TW201901434A (zh) | 固態硬碟執行刪除命令後回收垃圾的方法 | |
JP5751488B2 (ja) | ファイル管理装置 | |
TW202001576A (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
US20140310502A1 (en) | Memory management apparatus and memory management method thereof |