TWI718709B - 資料儲存裝置以及非揮發式記憶體控制方法 - Google Patents
資料儲存裝置以及非揮發式記憶體控制方法 Download PDFInfo
- Publication number
- TWI718709B TWI718709B TW108137198A TW108137198A TWI718709B TW I718709 B TWI718709 B TW I718709B TW 108137198 A TW108137198 A TW 108137198A TW 108137198 A TW108137198 A TW 108137198A TW I718709 B TWI718709 B TW I718709B
- Authority
- TW
- Taiwan
- Prior art keywords
- cyclic redundancy
- redundancy check
- check code
- read
- uncorrectable
- Prior art date
Links
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Memory System (AREA)
Abstract
非揮發式記憶體控制之無法校正(UNC)標示。因應一主機下達的一無法校正標示命令,以一循環冗餘校驗(CRC)引擎提供一特定循環冗餘校驗碼,標示該無法校正標示命令所指示的一邏輯位址段為無法校正。後續只要判斷到該特定循環冗餘校驗碼,循環冗餘校驗可略去,直接判定該主機要求讀取的內容已有無法校正(UNC)標示。
Description
本發明係有關於非揮發式記憶體之控制。
非揮發式記憶體有多種形式─例如,快閃記憶體(flash memory)、磁阻式隨機存取記憶體(Magnetoresistive RAM)、鐵電隨機存取記憶體(Ferroelectric RAM)、電阻式隨機存取記憶體(Resistive RAM)、自旋轉移力矩隨機存取記憶體(Spin Transfer Torque-RAM, STT-RAM)…等,用於長時間資料保存,可做為儲存媒體實現一資料儲存裝置。
非揮發式記憶體常見以一揮發式記憶體高速通訊介面(NVMe)與一主機通訊。NVMe提供一無法校正標示命令WriteUNC(write uncorrectable),對指定邏輯位址進行編程,但標註其無法校正(uncorrectable,簡稱UNC),讀取的資料不可信賴。非揮發式記憶體之控制須有能力因應NVMe如此特殊命令。
本案將無法校正(UNC)標示結合至循環冗餘校驗(CRC)。本案以特定值的一特定(固定值)循環冗餘校驗碼實現無法校正標示。後續只要判斷到該特定循環冗餘校驗碼,循環冗餘校驗可略去,直接判定該主機要求讀取的內容已有無法校正標示。
根據本案一種實施方式實現的一種資料儲存裝置,包括:一非揮發式記憶體;以及一控制器。該控制器控制該非揮發式記憶體,且包括一循環冗餘校驗引擎。因應一主機下達的一無法校正標示命令,該控制器操作該循環冗餘校驗引擎提供一特定循環冗餘校驗碼,標示該無法校正標示命令所指示的一邏輯位址段為無法校正。
一種實施方式中,該控制器採用一映射資訊格式進行映射資訊管理,其中是以複數個邏輯位址單元為管理單位。該循環冗餘校驗引擎係以單一個邏輯位址單元為單位,提供該特定循環冗餘校驗碼。該邏輯位址段的所有邏輯位址單元,都同樣是以該特定循環冗餘校驗碼標示為無法校正。
一種實施方式中,該無法校正標示命令的標示單位小於該映射資訊格式的管理單位。
一種實施方式中,對應該邏輯位址段的所有邏輯位址單元,該控制器將該特定循環冗餘校驗碼編程至該非揮發式記憶體,以元資料區儲存。
一種實施方式中,因應該主機的一讀取命令,該控制器自該非揮發式記憶體取得一讀取資料以及一讀取循環冗餘校驗碼。該循環冗餘校驗引擎判定該讀取循環冗餘校驗碼為該特定循環冗餘校驗碼時,該控制器回應該主機,其要求讀取的為無法校正資料。該循環冗餘校驗引擎確定該讀取循環冗餘校驗碼非該特定循環冗餘校驗碼、但沒有通過循環冗餘校驗時,該控制器回傳一循環冗餘校驗失敗信息至該主機。該循環冗餘校驗引擎確定該讀取循環冗餘校驗碼非該特定循環冗餘校驗碼、且通過循環冗餘校驗時,該控制器以該讀取資料回傳該主機。
前述控制器對非揮發式記憶體之操作也可以由其他結構實現。本案更可以前述概念實現非揮發式記憶體的控制方法,包括以下步驟:因應一主機下達的一無法校正標示命令,操作一循環冗餘校驗引擎提供一特定循環冗餘校驗碼;且以該特定循環冗餘校驗碼標示該無法校正標示命令所指示的一邏輯位址段為無法校正。
下文特舉實施例,並配合所附圖示,詳細說明本發明內容。
以下敘述列舉本發明的多種實施例。以下敘述介紹本發明的基本概念,且並非意圖限制本發明內容。實際發明範圍應依照申請專利範圍界定之。
非揮發式記憶體可以是快閃記憶體(Flash Memory)、磁阻式隨機存取記憶體(Magnetoresistive RAM)、鐵電隨機存取記憶體(Ferroelectric RAM)、電阻式記憶體(Resistive RAM,RRAM)、自旋轉移力矩隨機存取記憶體(Spin Transfer Torque-RAM, STT-RAM)…等,提供長時間資料保存之儲存媒體。以下特別以快閃記憶體為例進行討論。
現今資料儲存裝置常以快閃記憶體為儲存媒體,實現記憶卡(Memory Card)、通用序列匯流排閃存裝置(USB Flash Device)、固態硬碟(SSD) …等產品。有一種應用是採多晶片封裝、將快閃記憶體與其控制器包裝在一起─稱為嵌入式快閃記憶體模組(如eMMC)。
以快閃記憶體為儲存媒體的資料儲存裝置可應用於多種電子裝置中。所述電子裝置包括智慧型手機、穿戴裝置、平板電腦、虛擬實境設備…等。電子裝置的運算模塊可視為主機(Host),操作所使用的資料儲存裝置,以存取其中快閃記憶體。
以快閃記憶體為儲存媒體的資料儲存裝置也可用於建構資料中心。例如,伺服器可操作固態硬碟(SSD)陣列形成資料中心。伺服器即可視為主機,操作所連結之固態硬碟,以存取其中快閃記憶體。
快閃記憶體有其特殊的儲存特性,以下敘述之。主機(Host)端是以邏輯位址來區別資料,邏輯位址例如為邏輯區塊位址(LBA),以下將以LBA為例進行說明。至於資料實際儲存在快閃記憶體何處,則是以映射方式管理。
快閃記憶體之物理空間是劃分為複數個區塊(Blocks)配置使用。第1圖圖解快閃記憶體一區塊Blk之結構。區塊Blk包括複數頁面(Pages),例如,頁面0…頁面255。各頁面包括複數個區段(Sectors),例如32個區段,每一區段可儲存512B長度的使用者資料。一次寫入可能涉及多個區段。例如,在4KB資料管理模式下,可將8個區段視為一個資料單元,進行管理。一次寫入可能涵蓋8個區段(4KB)長度。16KB長度的頁面可由四個資料單元(32個區段)所組成。一種實施方式係根據頁編號─由低編號至高編號─循序使用一區塊的儲存空間。特別是,同樣LBA所對應的資料更新並非覆寫至舊資料的儲存空間,新版本的資料須寫入閒置空間(空白的區段)。舊空間的內容則標示為無效。區塊可能僅零星留存有效資料。
由於資料不斷地寫入閒置空間,這導致閒置區塊逐漸消耗。閒置區塊數量不足時(如,低於閥值),垃圾回收(Garbage Collection)需求產生。資料區塊留存的零星有效資料經垃圾回收程序集中到其他區塊(例如:主動區塊)的儲存空間。徒留無效資料的資料區塊則抹除(Erase)而成為閒置區塊,閒置區塊數量因而拉升,確保資料儲存裝置之正常使用。
由前述內容可知,快閃記憶體的空間配置相當複雜。一種實施方式是建立邏輯-實體位址映射表(Logical-to-Physical Addresses Mapping Table,L2P映射表),記錄邏輯位址,例如:邏輯區塊位址(Logical Block Address,LBA),與實體位址之間的映射資訊。
第2圖圖解一種映射資訊所採用的傳統的映射資訊格式200,包括32位元(四位元組),每筆映射資訊對應4KB資料。映射資訊所載的實體位址則為此4KB資料的儲存位置。映射資訊格式200中各位元規劃如下:
l 位元[31]:無法校正標示UNC(Uncorrectable)位元,標示映射資訊所指內容不可靠,例如,當位元[31]的值由”0”變更為”1”時,此實體位址資訊所對應4KB大小的資料皆為UNC。
l 位元[30:29]:映射資訊模式(Pattern Mode)位元,00/01代表後續位元[28:0]標示快閃記憶體的實體位址,10代表後續位元[28:0]標示暫存記憶體的實體位址,11代表後續位元[28:0]為無意義的虛置(Dummy)資料。
l 位元[28:0]:快閃記憶體或暫存記憶體的實體位址,或虛置資料。
由於位元[31]的UNC標示的對象為4KB大小的資料,無法用以標示512B大小的資料,換句話說,這使用無法校正命令(例如:Write UNC命令)使用受限。小於資料管理單位(如,4KB)的UNC標示指令將無法被正確地執行或回應。
因應之,本案將UNC標示結合至循環冗餘校驗碼(CRC)。資料經過CRC編碼後可產生預設大小的CRC,例如:2B大小的CRC。本案選用特定的(固定值,不隨資料變化)CRC值來實現UNC的標示。特別是,CRC編碼的編碼單位可由使用者予以設定,編碼單位可以是512B大小的資料,可以是4KB大小的資料,也可以是其他大小的資料。不論什麼資料量,本案都可以複製此2B大小的特定CRC值對應之。因此,當UNC標示結合至CRC後,UNC標示的使用相較於映射資訊格式200中的位元[31]具有更高的靈活性。小於資料管理單位(如,4KB)的UNC標示指令也可被正確地執行或回應。
舉例來說,映射資訊格式200的位元[31]由”0”變更為”1”時,可將LBA#0~LBA#7的資料一起標示為UNC,卻無法單獨將標示LBA#3標示為UNC。本案提出的技術,除了有能力給予LBA#0…LBA#7的資料特定的CRC值,標註LBA#0~LBA#7全數無法校正,也可單獨給予LBA#3的資料特定的CRC值,單純標註LBA#3無法校正。之後,藉由判斷CRC值是否為特定值即可輕鬆地判斷出LBA#0~LBA#7的資料或僅有LBA#3的資料為無法校正(UNC),達到本發明的目的。
一種實施方式中,特定的CRC值較佳為一般資料經CRC編碼後所不會產生的值,或是虛置資料等特定資料才能產生的值。一旦辨識出此特定的CRC值,即代表讀取命令所欲讀取的內容已被標示為無法校正(UNC)。此特定的CRC值較佳與循環冗餘校驗碼失敗(CRC failed)的CRC值不同,如此一來,循環冗餘校驗碼失敗(CRC failed)得以與UNC區別。
第3圖為方塊圖,根據本案一種實施方式圖解一資料儲存裝置300,包括快閃記憶體302、控制器304以及暫存記憶體306。主機308透過控制器304操作快閃記憶體302。資料儲存裝置300內部也可經控制器304發動快閃記憶體302之最佳化操作;例如,整理快閃記憶體302空間,使其發揮最大儲存效能。控制器304進行運算時是以暫存記憶體306暫存資料。暫存記憶體306可為動態隨機存取記憶體(DRAM)或SRAM。
快閃記憶體302包括複數個區塊。儲存系統資訊的資料區塊稱為系統區塊並置於系統區塊池310中。取自備用區塊池312的備用區塊則作為主動區塊A_Blk,用於編程來自主機308的資料。主動區塊A_Blk不再執行資料編程後變更為資料區塊,推入資料區塊池314。運行一段時間後,因為資料的更新,某些資料區塊可能僅留零星的有效資料。該些資料區塊經由垃圾回收(Garbage Collection)程序處理後變更為備用區塊並推入備用區塊池312。
如圖所示,控制器304是先將資料快取於暫存記憶體306的資料快取空間316,再自資料快取空間316編程至主動區塊A_Blk。控制器304可利用空間318來儲存或更新映射資訊,再將更新後映射資訊編程至系統區塊。第4圖為空間318上關於映射資訊所使用的映射資訊格式400不包括無法校正標示位元。映射資訊格式400完整32位元[31:0]都用於記載實體位址,甚至不包括映射資訊模式(Pattern Mode)位元。其他實施方式也可能只省略無法校正標示位元,但仍有規畫映射資訊模式(Pattern Mode)位元。
第5圖為流程圖,根據本案一種實施方式圖解UNC標示命令的處理流程。
步驟S502,控制器304接收來自主機308的UNC標示命令,其中,UNC標示命令包括目標邏輯位址(如目標邏輯區塊位址,以下稱目標LBA)。控制器304接收來自主機308的UNC標示命令,例如,Write UNC命令,UNC標示命令包括目標LBA,例如:LBA#3。UNC標示命令亦可包括多個目標LBA,並由起始邏輯位址LBA_S以及長度L所表示,例如:起始邏輯位址LBA_S為LBA#0,長度L為8,則多個目標LBA為LBA#0~#7。
步驟S504,控制器304操作CRC引擎320以產生CRC_S。控制器304包括CRC引擎320,控制器304將資料樣板P輸出至CRC引擎320以產生CRC_S,其中,資料樣板P為虛置資料或特定資料,例如:全“0”或全”1”,因此,CRC引擎320所產生的CRC_S為特定的CRC值。
步驟S506,控制器304將CRC_S對應至目標LBA,並將CRC_S編程至主動區塊A_Blk。控制器304將資料樣板P作為目標LBA所對應的資料,將CRC_S作為此資料的CRC,再將資料樣板P以及CRC_S編程至主動區塊A_Blk。目標LBA所對應的資料可編程至主動區塊A_Blk的資料區,CRC_S可編程至主動區塊A_Blk的元資料(Metadata)區。
步驟S508,控制器304更新目標LBA的映射資訊。控制器304以目標LBA在主動區塊A_Blk上的實體位址來更新目標LBA的映射資訊。之後,當主機308欲讀取目標LBA的資料時,控制器304依據映射資訊而從主動區塊A_Blk的元資料(Metadata)區取得CRC_S,則可依據CRC_S回覆此目標LBA為無法校正(UNC),達到本發明的目的。
第6圖為流程圖,根據本案一種實施方式圖解控制器304如何處理來自主機308的讀取命令。
步驟S602,控制器304接收來自主機308的讀取命令,其中,讀取命令包括目標LBA,例如:LBA#3。
步驟S604,控制器304根據目標LBA查詢L2P映射表以取得實體位址。控制器304根據LBA#3來查詢L2P映射表,可以取得儲存LBA#3的資料的實體位址。
步驟S606,控制器304讀取實體位址以取得目標資料D_read以及目標資料D_read的循環冗餘校驗碼CRC_read。控制器304讀取實體位址中的資料區以取得目標資料,讀取實體位址中的元資料區以取得循環冗餘校驗碼CRC_read。
步驟S608,控制器304判斷循環冗餘校驗碼CRC_read是否為CRC_S,如果是則執行步驟S610,如果否則執行步驟S612。
步驟S610,控制器304回傳UNC所對應的預設訊息至主機308,其中,預設訊息例如是目標LBA尚未記錄,或目標LBA已被清除等。
步驟S612,控制器304產生目標資料D_read的目標CRC。控制器304輸出目標資料D_read至CRC引擎320以產生目標CRC。
步驟S614,控制器304比對目標CRC是否等於循環冗餘校驗碼CRC_read,如果是則執行步驟S616,如果否則執行步驟S610。
步驟S616,控制器304回傳目標資料D_read給主機308。由於目標CRC等於循環冗餘校驗碼CRC_read,這表示目標資料D_read為正確,因此,控制器304回傳目標資料D_read給主機308,完成讀取命令的執行。
以上記憶體控制器304對快閃記憶體302之操作設計也可以由其他結構實現。凡是根據前述概念操作快閃記憶體、使無法校正(UNC)標示得以簡單註記以及辨識的技術,都屬於本案欲保護範圍。本案更可以前述概念實現非揮發式記憶體的控制方法。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟悉此項技藝者,在不脫離本發明之精神和範圍內,當可做些許更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
200~映射資訊格式;
300~資料儲存裝置;
302~快閃記憶體;
304~控制器;
306~暫存記憶體;
308~主機;
310~系統區塊池;
312~備用區塊池;
314~資料區塊池;
316~資料快取空間;
318~空間,動態維護映射資訊;
320~循環冗餘校驗引擎;
400~映射資訊格式;
A_Blk~主動區塊;
S502…S506、S602…S616~步驟;
UNC~無法校正標示位元。
第1圖圖解快閃記憶體一區塊Blk之結構;
第2圖圖解傳統技術所使用的一種映射資訊格式200;
第3圖為方塊圖,根據本案一種實施方式圖解一資料儲存裝置300;
第4圖為空間318上關於映射資訊所使用的映射資訊格式400不包括無法校正標示位元;
第5圖為流程圖,根據本案一種實施方式圖解無法校正標示命令(WriteUNC)的處理流程;以及
第6圖為流程圖,根據本案一種實施方式圖解控制器304如何處理主機308的讀取要求。
300~資料儲存裝置;
302~快閃記憶體;
304~控制器;
306~暫存記憶體;
308~主機;
310~系統區塊池;
312~備用區塊池;
314~資料區塊池;
316~資料快取空間;
318~空間,動態維護映射資訊;
320~循環冗餘校驗引擎;
A_Blk~主動區塊。
Claims (14)
- 一種資料儲存裝置,包括: 一非揮發式記憶體;以及 一控制器,控制該非揮發式記憶體,且包括一循環冗餘校驗引擎, 其中: 因應一主機下達的一無法校正標示命令,該控制器操作該循環冗餘校驗引擎提供一特定循環冗餘校驗碼,標示該無法校正標示命令所指示的一邏輯位址段為無法校正。
- 如申請專利範圍第1項所述之資料儲存裝置,其中: 該控制器採用一映射資訊格式進行映射資訊管理,其中是以複數個邏輯位址單元為管理單位; 該循環冗餘校驗引擎係以單一個邏輯位址單元為單位,提供該特定循環冗餘校驗碼;且 該邏輯位址段的所有邏輯位址單元,都同樣是以該特定循環冗餘校驗碼標示為無法校正。
- 如申請專利範圍第2項所述之資料儲存裝置,其中: 該無法校正標示命令的標示單位小於該映射資訊格式的管理單位。
- 如申請專利範圍第3項所述之資料儲存裝置,其中: 對應該邏輯位址段的所有邏輯位址單元,該控制器將該特定循環冗餘校驗碼編程至該非揮發式記憶體,以元資料區儲存。
- 如申請專利範圍第4項所述之資料儲存裝置,其中: 因應該主機的一讀取命令,該控制器自該非揮發式記憶體取得一讀取資料以及一讀取循環冗餘校驗碼;且 該循環冗餘校驗引擎判定該讀取循環冗餘校驗碼為該特定循環冗餘校驗碼時,該控制器回應該主機,其要求讀取的為無法校正資料。
- 如申請專利範圍第5項所述之資料儲存裝置,其中: 該循環冗餘校驗引擎確定該讀取循環冗餘校驗碼非該特定循環冗餘校驗碼、但沒有通過循環冗餘校驗時,該控制器回傳一循環冗餘校驗失敗信息至該主機。
- 如申請專利範圍第6項所述之資料儲存裝置,其中: 該循環冗餘校驗引擎確定該讀取循環冗餘校驗碼非該特定循環冗餘校驗碼、且通過循環冗餘校驗時,該控制器以該讀取資料回傳該主機。
- 一種非揮發式記憶體控制方法,包括: 因應一主機下達的一無法校正標示命令,操作一循環冗餘校驗引擎提供一特定循環冗餘校驗碼;且 以該特定循環冗餘校驗碼標示該無法校正標示命令所指示的一邏輯位址段為無法校正。
- 如申請專利範圍第8項所述之非揮發式記憶體控制方法,更包括: 採用一映射資訊格式進行映射資訊管理,其中是以複數個邏輯位址單元為管理單位; 該循環冗餘校驗引擎係以單一個邏輯位址單元為單位,提供該特定循環冗餘校驗碼;且 該邏輯位址段的所有邏輯位址單元,都同樣是以該特定循環冗餘校驗碼標示為無法校正。
- 如申請專利範圍第9項所述之非揮發式記憶體控制方法,其中: 該無法校正標示命令的標示單位小於該映射資訊格式的管理單位。
- 如申請專利範圍第10項所述之非揮發式記憶體控制方法,更包括: 對應該邏輯位址段的所有邏輯位址單元,將該特定循環冗餘校驗碼編程至該非揮發式記憶體,以元資料區儲存。
- 如申請專利範圍第11項所述之非揮發式記憶體控制方法,更包括: 因應該主機的一讀取命令,自該非揮發式記憶體取得一讀取資料以及一讀取循環冗餘校驗碼;且 在該循環冗餘校驗引擎判定該讀取循環冗餘校驗碼為該特定循環冗餘校驗碼時,回應該主機,其要求讀取的為無法校正資料。
- 如申請專利範圍第12項所述之非揮發式記憶體控制方法,更包括: 在該循環冗餘校驗引擎確定該讀取循環冗餘校驗碼非該特定循環冗餘校驗碼、但沒有通過循環冗餘校驗時,回傳一循環冗餘校驗失敗信息至該主機。
- 如申請專利範圍第13項所述之非揮發式記憶體控制方法,更包括: 在該循環冗餘校驗引擎確定該讀取循環冗餘校驗碼非該特定循環冗餘校驗碼、且通過循環冗餘校驗時,以該讀取資料回傳該主機。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911234168.8A CN112130750B (zh) | 2019-06-25 | 2019-12-05 | 数据储存装置以及非挥发式存储器控制方法 |
US16/786,089 US11218164B2 (en) | 2019-06-25 | 2020-02-10 | Data storage device and non-volatile memory control method |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201962866051P | 2019-06-25 | 2019-06-25 | |
US62/866,051 | 2019-06-25 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202101222A TW202101222A (zh) | 2021-01-01 |
TWI718709B true TWI718709B (zh) | 2021-02-11 |
Family
ID=75234664
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108137199A TWI718710B (zh) | 2019-06-25 | 2019-10-16 | 資料儲存裝置以及非揮發式記憶體控制方法 |
TW108137198A TWI718709B (zh) | 2019-06-25 | 2019-10-16 | 資料儲存裝置以及非揮發式記憶體控制方法 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW108137199A TWI718710B (zh) | 2019-06-25 | 2019-10-16 | 資料儲存裝置以及非揮發式記憶體控制方法 |
Country Status (1)
Country | Link |
---|---|
TW (2) | TWI718710B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI813978B (zh) | 2021-04-16 | 2023-09-01 | 群聯電子股份有限公司 | 快閃記憶體控制方法、快閃記憶體儲存裝置及快閃記憶體控制器 |
TWI805231B (zh) | 2022-02-18 | 2023-06-11 | 慧榮科技股份有限公司 | 資料儲存裝置以及非揮發式記憶體控制方法 |
TWI802279B (zh) | 2022-02-18 | 2023-05-11 | 慧榮科技股份有限公司 | 資料儲存裝置以及非揮發式記憶體控制方法 |
TWI845896B (zh) * | 2022-02-18 | 2024-06-21 | 慧榮科技股份有限公司 | 資料儲存裝置以及非揮發式記憶體控制方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5136592A (en) * | 1989-06-28 | 1992-08-04 | Digital Equipment Corporation | Error detection and correction system for long burst errors |
US20150324252A1 (en) * | 2013-02-28 | 2015-11-12 | Micron Technology, Inc. | Codewords that span pages of memory |
US20160011940A1 (en) * | 2014-07-10 | 2016-01-14 | Samsung Electronics Co., Ltd. | Tiered ecc single-chip and double-chip chipkill scheme |
US20190121755A1 (en) * | 2017-10-20 | 2019-04-25 | Silicon Motion Inc. | Storage device and interface chip thereof |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8621138B2 (en) * | 2007-12-27 | 2013-12-31 | Sandisk Enterprise Ip Llc | Flash storage controller execute loop |
KR101774496B1 (ko) * | 2010-12-08 | 2017-09-05 | 삼성전자주식회사 | 비휘발성 메모리 장치, 이를 포함하는 장치들, 및 이의 동작 방법 |
JP6196199B2 (ja) * | 2014-09-12 | 2017-09-13 | 東芝メモリ株式会社 | 半導体記憶装置 |
TWI661307B (zh) * | 2017-12-06 | 2019-06-01 | 慧榮科技股份有限公司 | 資料儲存裝置、主機裝置、以及資料寫入方法 |
-
2019
- 2019-10-16 TW TW108137199A patent/TWI718710B/zh active
- 2019-10-16 TW TW108137198A patent/TWI718709B/zh active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5136592A (en) * | 1989-06-28 | 1992-08-04 | Digital Equipment Corporation | Error detection and correction system for long burst errors |
US20150324252A1 (en) * | 2013-02-28 | 2015-11-12 | Micron Technology, Inc. | Codewords that span pages of memory |
US20160011940A1 (en) * | 2014-07-10 | 2016-01-14 | Samsung Electronics Co., Ltd. | Tiered ecc single-chip and double-chip chipkill scheme |
US20190121755A1 (en) * | 2017-10-20 | 2019-04-25 | Silicon Motion Inc. | Storage device and interface chip thereof |
Also Published As
Publication number | Publication date |
---|---|
TW202101222A (zh) | 2021-01-01 |
TW202101223A (zh) | 2021-01-01 |
TWI718710B (zh) | 2021-02-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI718709B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
US10657047B2 (en) | Data storage device and method of performing partial garbage collection | |
US10915475B2 (en) | Methods and apparatus for variable size logical page management based on hot and cold data | |
US20190258569A1 (en) | Directed sanitization of memory | |
US10437737B2 (en) | Data storage device | |
US20190102291A1 (en) | Data storage device and method for operating non-volatile memory | |
TWI645289B (zh) | 資料儲存裝置以及非揮發式記憶體操作方法 | |
US11314586B2 (en) | Data storage device and non-volatile memory control method | |
TWI691839B (zh) | 資料管理方法 | |
US20190188130A1 (en) | Data Storage Device and Non-Volatile Memory Control Method | |
US20090327837A1 (en) | NAND error management | |
US10719272B2 (en) | Data storage device and control method for non-volatile memory | |
US10593421B2 (en) | Method and apparatus for logically removing defective pages in non-volatile memory storage device | |
CN109521944B (zh) | 数据储存装置以及数据储存方法 | |
TWI785876B (zh) | 映射資訊記錄方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN112130750B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
TWI724483B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
CN111611178B (zh) | 数据储存装置以及非挥发式存储器控制方法 | |
US11392489B2 (en) | Data storage device and non-volatile memory control method | |
TWI723581B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
JP2012068765A (ja) | メモリコントローラ及びメモリコントローラを備えるフラッシュメモリシステム、並びにフラッシュメモリの制御方法 | |
TWI705328B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 | |
JP2012037971A (ja) | メモリコントローラ及びメモリコントローラを備える不揮発性メモリシステム、並びに不揮発性メモリの制御方法 | |
TWI669610B (zh) | 資料儲存裝置以及非揮發式記憶體控制方法 |