TWI592801B - 資料儲存裝置及其資料維護方法 - Google Patents

資料儲存裝置及其資料維護方法 Download PDF

Info

Publication number
TWI592801B
TWI592801B TW105122007A TW105122007A TWI592801B TW I592801 B TWI592801 B TW I592801B TW 105122007 A TW105122007 A TW 105122007A TW 105122007 A TW105122007 A TW 105122007A TW I592801 B TWI592801 B TW I592801B
Authority
TW
Taiwan
Prior art keywords
block
page
data
pages
backup
Prior art date
Application number
TW105122007A
Other languages
English (en)
Other versions
TW201717024A (zh
Inventor
柯冠宇
Original Assignee
慧榮科技股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 慧榮科技股份有限公司 filed Critical 慧榮科技股份有限公司
Priority to CN201610768284.8A priority Critical patent/CN106708754B/zh
Priority to US15/345,785 priority patent/US9747173B2/en
Publication of TW201717024A publication Critical patent/TW201717024A/zh
Application granted granted Critical
Publication of TWI592801B publication Critical patent/TWI592801B/zh
Priority to US15/660,029 priority patent/US9852032B2/en

Links

Description

資料儲存裝置及其資料維護方法
本發明係關於一種資料儲存裝置,特別係關於在斷電事件後對資料進行維護之資料儲存裝置。
快閃記憶體為一種普遍的非揮發性資料儲存裝置,係以電性方式抹除與程式化。以非及閘型的快閃記憶體(即NAND FLASH)為例,常用作記憶卡(memory card)、通用序列匯流排閃存裝置(USB flash device)、固態硬碟(SSD)、嵌入式快閃記憶體模組(eMMC)…等使用。
快閃記憶體(如,NAND FLASH)的儲存陣列包括複數個區塊(blocks),其中浮置閘極電晶體可用以構成快閃記憶體。浮置閘極電晶體中之浮置閘極,可捕捉的電荷以儲存資料。然而,在寫入的過程中,非預期之斷電事件發生會損壞正在寫入之頁面的資料。因此,如何在斷電事件發生後對資料進行維護是一個重要的課題。
本發明所提供之資料儲存裝置以及資料維護方法可在斷電事件後將可能受損壞的資料重寫至相同的區塊中。
本發明提供一種資料儲存裝置包括一快閃記憶體以及一控制器。快閃記憶體包括複數區塊,每一區塊包括複數 頁面。控制器在資料儲存裝置自一斷電事件中回復時,在區塊中選擇在斷電事件之前最後一個進行寫入之一第一區塊,並且將第一區塊中之複數第一頁面中之資料寫入第一區塊中第一頁面外之其他複數第二頁面。
在一實施例中,第一區塊更包括複數字元線,並且第一區塊為一二階儲存單元區塊(MLC block),其中第一區塊之每一字元線用以控制第一區塊中之兩個頁面。在資料儲存裝置自斷電事件中回復時,控制器更用以在第一區塊之頁面中選擇在斷電事件之前最後一個被寫入之頁面以作為一基準頁面,並且根據字元線中用以控制基準頁面之一第一字元線決定第一頁面。第一頁面為被第一字元線以及排列於第一字元線前方之至少一第二字元線所控制之複數第三頁面中具有有效資料的頁面。又一實施例中,控制器更用以將冗餘資料(dummy data)寫入第三頁面中不具有有效資料之頁面。
另一實施例中,控制器更用以判斷一備份區塊中是否具有第一頁面之備份,並且將第一頁面中在備份區塊不具有備份者之資料寫入備份區塊。另外,控制器更用以根據儲存於備份區塊中相應於第一頁面之資料,對第二頁面進行寫入以將第一頁面之資料寫入第二頁面,其中備份區塊之資料保護能力高於第一區塊。另外,一實施例中,第一區塊為一二階儲存單元區塊(MLC block),並且備份區塊為一單階儲存單元區塊(SLC block)。
本發明另提供一種資料維護方法適用於具有一快閃記憶體之一資料儲存裝置,其中快閃記憶體包括複數區塊, 並且每一區塊包括複數頁面。資料維護方法包括:在資料儲存裝置自一斷電事件中回復時,在區塊中選擇在斷電事件之前最後一個進行寫入之一第一區塊;以及將第一區塊中之複數第一頁面中之資料寫入第一區塊中第一頁面外之其他複數第二頁面。
在一實施例中,第一區塊更包括複數字元線,並且第一區塊為一二階儲存單元區塊(MLC block),其中第一區塊之每一字元線用以控制第一區塊中之兩個頁面。其中,資料維護方法更包括:在第一區塊之頁面中,選擇在斷電事件之前最後一個進行寫入之頁面以作為一基準頁面;以及根據字元線中用以控制基準頁面之一第一字元線決定第一頁面,其中第一頁面為被第一字元線以及排列於第一字元線前方之至少一第二字元線所控制之複數第三頁面中具有有效資料的頁面。另外,資料維護方法更包括將冗餘資料(dummy data)寫入第三頁面中不具有有效資料之頁面。
又另一實施例中,資料維護方法更包括:判斷一備份區塊中是否具有第一頁面之備份;以及將第一頁面中在備份區塊不具有備份者之資料寫入備份區塊。上述將第一區塊中之第一頁面中之資料寫入第一區塊中第一頁面外之其他第二頁面的步驟更包括:根據儲存於備份區塊中相應於第一頁面之資料,對第二頁面進行寫入以將第一頁面之資料寫入第二頁面,其中備份區塊之資料保護能力高於第一區塊。
100‧‧‧電子系統
120‧‧‧主機
140‧‧‧資料儲存裝置
160‧‧‧控制器
162‧‧‧運算單元
164‧‧‧永久記憶體
166‧‧‧隨機存取記憶體
180‧‧‧快閃記憶體
LSB‧‧‧強頁面
MSB‧‧‧弱頁面
WL0~WLM‧‧‧字元線
Or_P0~Or_PM‧‧‧原始頁面
P0~PN、P0~PX‧‧‧頁面
B1‧‧‧區塊
BU_B‧‧‧備份區塊
POR‧‧‧斷電事件
S600~S604、S700~S716‧‧‧步驟
第1圖為本發明所提供之一電子系統之一種實施例的方塊圖。
第2圖為本發明所提供之一區塊之一種實施例的方塊圖。
第3圖為本發明所提供之一資料搬移的示意圖。
第4圖為本發明所提供之另一資料搬移的示意圖。
第5圖為本發明所提供另之一資料搬移的示意圖。
第6圖為本發明所提供之一資料維護方法之一種實施例的流程圖。
第7圖為本發明所提供之另一資料維護方法之另一種實施例的流程圖。
以下將詳細討論本發明各種實施例之裝置及使用方法。然而值得注意的是,本發明所提供之許多可行的發明概念可實施在各種特定範圍中。這些特定實施例僅用於舉例說明本發明之裝置及使用方法,但非用於限定本發明之範圍。
第1圖為本發明所提供之一電子系統之一種實施例的方塊圖。電子系統100包括一主機120以及一資料儲存裝置140。資料儲存裝置140包括一快閃記憶體180以及一控制器160,且可根據主機120所下達的命令操作。控制器160包括一運算單元162、一永久記憶體(如,唯讀記憶體ROM)164以及隨機存取記憶體(RAM)166。永久記憶體164與所載之程式碼、資料組成韌體(firmware),由運算單元162執行,使控制器160基於該韌體控制該快閃記憶體180。隨機存取記憶體(RAM)166用以載入程式碼與參數以提供控制器160根據所載入的程式碼與 參數動作。
快閃記憶體180包括複數區塊,每一區塊包括複數頁面。值得注意的是,快閃記憶體180以區塊為最小單位進行抹除,並且頁面為最小單位進行寫入。另外,快閃記憶體180更包括彼此相鄰的複數字元線與複數位元線,其中每一字元線用以控制至少一頁面,以選擇所欲讀取之頁面。舉例而言,當快閃記憶體180中之區塊係為單階儲存單元(Single-Level Cell,SLC)時,一條字元線用以控制一個頁面。當快閃記憶體180中之區塊係為多階儲存單元(Multi-Level Cell,MLC)時,一條字元線用以控制一強頁面LSB(strong page)以及一弱頁面MSB(weak page)。當快閃記憶體180中之區塊係為三階儲存單元(Triple-Level Cell,TLC)時,一條字元線用以控制一強頁面LSB(strong page)、一中頁面CSB(middle page)以及一弱頁面MSB(weak page),但本發明不限於此。詳細而言,當快閃記憶體180中之區塊係為多階儲存單元時,區塊中由一條字元線所控制之一個頁面可被程式化(program)為一個強頁面LSB(strong page)以及一個弱頁面MSB(weak page)。當快閃記憶體180中之區塊係為三階儲存單元時,區塊中由一條字元線所控制之一個頁面可被程式化(program)為一個強頁面LSB(strong page)、一個中頁面CSB(middle page)以及一個弱頁面MSB(weak page)。
當控制器160再對快閃記憶體180進行寫入並且資料儲存裝置140經歷了一斷電事件後,控制器160會檢查在斷電事件發生時正在進行寫入之一特定頁面的資料是否被破壞。在 某些狀況下,雖然控制器160可成功的自特定頁面讀取資料,但特定頁面中之資料已由於遭受斷電事件的攻擊而變得不穩定。換言之,在一段時間後,控制器160再對特定頁面進行讀取時,特定頁面中之資料則可能無法被成功讀取。值得注意的是,在本發明中,只要可經由錯誤校正或者重複讀取修復錯誤位元之資料,皆是可被成功讀取之資料。因此,在某時些實施例中,控制器160會在自斷電事件回覆後,將成功讀取之特定頁面的資料寫入另一個區塊中,已確保資料的穩定性。然而,上述方法會消耗較多的區塊,也會增加區塊之抹除次數。
有鑑於此,本發明提出一實施例,以改善上述問題。在本實施例中,在資料儲存裝置140自一斷電事件中回復時,控制器160在區塊中選擇在斷電事件之前最後一個進行寫入之一第一區塊,並且將第一區塊中之複數第一頁面中之資料寫入第一區塊中第一頁面外之其他複數第二頁面。如上所述,控制器160將第一頁面之資料寫入同一個第一區塊中之第二頁面,以減少區塊的消耗。
值得注意的是,在一實施例中,快閃記憶體180具有一備份區塊,其中備份區塊之資料保護能力高於第一區塊B1。在控制器160對快閃記憶體180進行寫入時,會將資料寫在備份區塊上,再寫入區塊中。因此,在本實施例中,在將第一頁面中之資料寫入第二頁面前,控制器160更用以判斷備份區塊中是否具有第一頁面之備份,將第一頁面中在備份區塊不具有備份者之資料寫入備份區塊,並且根據儲存於備份區塊中相應於第一頁面之資料,對第二頁面進行寫入以將第一頁面之資 料寫入第二頁面。如上所述,控制器160藉由先將資料寫在備份區塊來保護資料,並且預防接續的其他斷電事件發生。
在一實施例中,快閃記憶體中之區塊大部份(第一區塊)為一二階儲存單元區塊(MLC block),並且快閃記憶體180具有操作為單階儲存單元區塊(SLC block)之備份區塊,其中單階儲存單元區塊之資料保護能力高於二階儲存單元區塊,但本發明不限於此。在其他實施例中,第一區塊可為多階儲存單元區塊(TLC block),備份區塊為可為單階儲存單元區塊或者二階儲存單元區塊,並且備份區塊的數量可為一個以上。在本實施例中,為了找出不穩定的第一頁面,控制器160更用以在第一區塊B1之頁面中選擇在斷電事件之前最後一個被寫入之頁面以作為一基準頁面,並且根據字元線中用以控制基準頁面之一第一字元線決定第一頁面。詳細而言,第一頁面為被第一字元線以及排列於第一字元線前方之至少一第二字元線所控制之複數第三頁面中具有有效資料的頁面。又另一實施例中,控制器160更用以將冗餘資料(dummy data)寫入第三頁面中不具有有效資料之頁面,以穩定第一區塊,其中冗餘資料可為一既定之無效資料或者隨機之資料,不具有任何意義。
詳細而言,如第2圖所示,區塊B1具有原始頁面Or_P0~Or_PM,並且原始頁面Or_P0~Or_PM分別由字元線WL0~WLM所控制。在本實施例中,區塊B1為多階儲存單元。因此,控制器160可將每一原始頁面Or_P0~Or_PM程式化為一個強頁面LSB以及一個弱頁面MSB,其中程式化為兩個頁面(強頁面LSB以及一個弱頁面MSB)之原始頁面相較於原本被操作 為單階儲存單元之原始頁面的容量大兩倍。值得注意的是,在一實施例中,基於特定的快閃記憶體特性,控制器160會依照一既定順序對原始頁面Or_P0~Or_PM進行程式化(Program)以構成頁面P0~PN,其中既定順序為:先對原始頁面Or_P0中之強頁面LSB進行寫入(Program)以構成頁面P0,接著對原始頁面Or_P1中之強頁面LSB進行寫入以構成頁面P1,接著對原始頁面Or_P0中之弱頁面MSB進行寫入以構成頁面P2,接著對原始頁面Or_P2中之強頁面LSB進行寫入以構成頁面P3,接著對原始頁面Or_P1中之弱頁面MSB進行寫入以構成頁面P4,依此類推。因此,對於控制器160而言,區塊B1中之頁面P0~PN的排列順序則如第2圖所示。值得注意的是,頁面P0~PN之數量為原始頁面Or_P0~Or_PM的兩倍,但本發明不限於此。
第3圖為本發明所提供之一資料搬移的示意圖。在發生斷電事件前,控制器160依序將資料DATA0~DATA10分別寫入區塊B0中之頁面P0~P10中,其中區塊B0為如第2圖所示之二階儲存單元區塊(MLC block)。為了防止在對區塊B1中之弱頁面MSB進行寫入的過程中會損壞被同個字元線所控制之強頁面LSB,控制器160會將強頁面LSB之資料先寫入備份區塊BU_B,在寫入強頁面LSB。因此,備份區塊BU_B中之頁面P0~P5依序具有資料DATA0、資料DATA1、資料DATA3、資料DATA5、資料DATA7以及資料DATA9,如第3圖之部分(A)所示。在控制器160正在將資料DATA10寫入區塊B1之頁面P10時,發生一斷電事件POR。接著,在資料儲存裝置140自斷電事件中回復時,控制器160在快閃記憶體之區塊中選擇在斷電事件之前最後一 個進行寫入之區塊B1做為第一區塊。接著,控制器160在第一區塊B1之頁面P0~PN中,選擇在斷電事件之前最後一個進行寫入之頁面P10以作為一基準頁面,自字元線WL0~WLM中選擇用以控制基準頁面P10之字元線WL4做為第一字元線,並且選擇被第一字元線WL4以及排列於第一字元線前方之兩個字元線WL2~WL3(第二字元線)所控制之複數頁面P3、P5~P8以及P10中具有有效資料的頁面作為第一頁面。如上所述,第一頁面為頁面P3、P5~P8以及P10。接著,控制器160判斷備份區塊BU_B中是否具有第一頁面P3、P5~P8、P10之備份。在本實施例中,備份區塊BU_B僅具有第一頁面P3之資料DATA3、第一頁面P5之資料DATA5以及第一頁面P7之資料DATA7,備份區塊BU_B沒有第一頁面P6之資料DATA6、第一頁面P8之資料DATA8以及第一頁面P10之資料DATA10。因此,控制器160接著將第一頁面P6、P8以及P10之資料DATA6、DATA8以及DATA10分別寫入備份區塊BU_B之頁面P6~P10中,如第3圖之部分(B)所示。由於被第一字元線WL4以及第二字元線WL2~WL3所控制之頁面P3、P5~P8以及P10中都具有有效資料。因此,控制器160不用將冗餘資料(dummy data)寫入區塊B1中。接著,控制器160根據儲存於備份區塊BU_B中相應於第一頁面P3、P5~P8、P10之資料DATA3、DATA5~DATA8、DATA10,將第一頁面P3、P5~P8、P10之資料DATA3、DATA5~DATA8、DATA10寫入第一區塊B1之第二頁面P11~P16中,如第3圖之部分(C)所示。
第4圖為本發明所提供之另一資料搬移的示意圖。詳細而言,在發生斷電事件前,控制器160依序將資料 DATA0~DATA10分別寫入區塊B0中之頁面P0~P10中,其中區塊B0為如第2圖所示之二階儲存單元區塊(MLC block)。為了防止在對區塊B1中之弱頁面MSB進行寫入的過程中會損壞被同個字元線所控制之強頁面LSB,控制器160會將強頁面LSB之資料先寫入備份區塊BU_B,在寫入強頁面LSB。然而,由於寫入的規則,某些強頁面沒有被備份於備份區塊BU_B中。因此,在本實施例中,備份區塊BU_B中之頁面P0~P4依序具有資料DATA0、資料DATA1、資料DATA3、資料DATA7以及資料DATA9,如第4圖之部分(A)所示。在控制器160正在將資料DATA10寫入區塊B1之頁面P10時,發生一斷電事件POR。接著,在資料儲存裝置140自斷電事件中回復時,控制器160根據上述規則,選擇頁面P3、P5~P8以及P10作為第一頁面。接著,控制器160判斷備份區塊BU_B中是否具有第一頁面P3、P5~P8、P10之備份。在本實施例中,備份區塊BU_B僅具有第一頁面P3之資料DATA3以及第一頁面P7之資料DATA7,備份區塊BU_B沒有第一頁面P5之資料DATA5、第一頁面P6之資料DATA6、第一頁面P8之資料DATA8以及第一頁面P10之資料DATA10。因此,控制器160接著將第一頁面P5、P6、P8以及P10之資料DATA5、DATA6、DATA8以及DATA10分別寫入備份區塊BU_B之頁面P5~P8中,如第4圖之部分(B)所示。由於被第一字元線WL4以及第二字元線WL2~WL3所控制之頁面P3、P5~P8以及P10中都具有有效資料。因此,控制器160不用將冗餘資料(dummy data)寫入區塊B1中。接著,控制器160根據儲存於備份區塊BU_B中相應於第一頁面P3、P5~P8、P10之資料DATA3、 DATA5~DATA8、DATA10,將第一頁面P3、P5~P8、P10之資料DATA3、DATA5~DATA8、DATA10寫入第一區塊B1之第二頁面P11~P16中,如第4圖之部分(C)所示。
第5圖為本發明所提供之另一資料搬移的示意圖。在發生斷電事件前,控制器160依序將資料DATA0~DATA7分別寫入區塊B0中之頁面P0~P7中,其中區塊B0為如第2圖所示之二階儲存單元區塊(MLC block)。為了防止在對區塊B1中之弱頁面MSB進行寫入的過程中會損壞被同個字元線所控制之強頁面LSB,控制器160會將強頁面LSB之資料先寫入備份區塊BU_B,在寫入強頁面LSB。然而,基於特定之寫入規則,某些強頁面LSB可能不會備份在備份區塊BU_B中,例如頁面P5之資料DATA5。在本實施例中,備份區塊BU_B中之頁面P0~P5依序具有資料DATA0、資料DATA1、資料DATA3以及資料DATA7,如第5圖之部分(A)所示。在控制器160正在將資料DATA7寫入區塊B1之頁面P7時,發生一斷電事件POR。接著,在資料儲存裝置140自斷電事件中回復時,控制器160在快閃記憶體之區塊中選擇在斷電事件之前最後一個進行寫入之區塊B1做為第一區塊。接著,控制器160在第一區塊B1之頁面P0~PN中,選擇在斷電事件之前最後一個進行寫入之頁面P7以作為一基準頁面,自字元線WL0~WLM中選擇用以控制基準頁面P7之字元線WL4做為第一字元線,並且選擇被第一字元線WL4以及排列於第一字元線前方之兩個字元線WL2~WL3(第二字元線)所控制之複數頁面P3、P5~P8以及P10中具有有效資料的頁面作為第一頁面。在本實施例中,頁面P3、P5~P8以及P10中僅有頁 面P3以及P5~P7具有有效資料,其中頁面P8以及P10不具有有效資料。如上所述,第一頁面為頁面P3以及P5~P7。接著,控制器160判斷備份區塊BU_B中是否具有第一頁面P3以及P5~P7之備份。在本實施例中,備份區塊BU_B僅具有第一頁面P3之資料DATA3以及第一頁面P7之資料DATA7,備份區塊BU_B沒有第一頁面P5之資料DATA5以及第一頁面P6之資料DATA6。因此,控制器160接著將第一頁面P5以及P6之資料DATA5以及DATA6分別寫入備份區塊BU_B之頁面P4~P5中,如第5圖之部分(B)所示。由於被第一字元線WL4以及第二字元線WL2~WL3所控制之頁面P3、P5~P7以及P10中頁面P8以及P10不具有有效資料。因此,控制器160將冗餘資料(dummy data)寫入區塊B1之頁面P8以及P10,以避免有效資料被寫入遭受斷電攻擊後不穩定之頁面P8以及P10,如第5圖部分(C)所示。接著,控制器160根據儲存於備份區塊BU_B中相應於第一頁面P3以及P5~P7之資料DATA3、DATA5~DATA7,將第一頁面P3、P5~P7之資料DATA3、DATA5~DATA7寫入第一區塊B1之第二頁面P9、P11~P13中,如第5圖之部分(D)所示。
第6圖為本發明所提供之一資料維護方法之一種實施例的流程圖。資料維護方法適用於第1圖之資料儲存裝置。流程開始於步驟S600。
在步驟S600中,資料儲存裝置140自一斷電事件中回復。詳細而言,斷電事件可為任何導致資料儲存裝置140失去操作電壓而無法進行操作之事件。
接著,在步驟S602中,控制器160在快閃記憶體180 所具有之區塊中選擇在斷電事件之前最後一個進行寫入之一第一區塊。換言之,控制器160在快閃記憶體180所具有之區塊中找出在斷電事件之前最後一個進行寫入之區塊。
接著,在步驟S604中,控制器160將第一區塊中之複數第一頁面中之資料寫入第一區塊中第一頁面外之其他複數第二頁面。換言之,在步驟S604中,由於第一區塊是在斷電事件發生時正在被進行寫入之區塊,故控制器160將第一區塊中原本所具有之有效資料(第一頁面之資料),寫入其他不具有有效資料的頁面(第二頁面),以避免資料被儲存於不穩定的頁面中。流程結束於步驟S604。值得注意的是,在其他實施例中,在步驟S604中可包括上述備份區塊之實施例,或者包括亢餘資料寫入之實施例,本發明不限於此。
第7圖為本發明所提供之另一資料維護方法之一種實施例的流程圖。資料維護方法適用於第1圖所示之資料儲存裝置140。流程開始於步驟S700。
在步驟S700中,資料儲存裝置140自一斷電事件中回復。詳細而言,斷電事件可為任何導致資料儲存裝置140失去操作電壓而無法進行操作之事件。
接著,在步驟S702中,控制器160在快閃記憶體180所具有之區塊中選擇在斷電事件之前最後一個進行寫入之一第一區塊。換言之,控制器160在快閃記憶體180所具有之區塊中找出在斷電事件之前最後一個進行寫入之區塊。
接著,在步驟S704中,控制器160在第一區塊之頁面中選擇在斷電事件之前最後一個被寫入之頁面以作為一基 準頁面。
接著,在步驟S706中,控制器160根據字元線中用以控制基準頁面之一第一字元線決定第一頁面。詳細而言,第一頁面為被第一字元線以及排列於第一字元線前方之至少一第二字元線所控制之複數第三頁面中具有有效資料的頁面。換言之,控制器160選擇被第一字元線以及排列於第一字元線前方之至少一第二字元線所控制之複數第三頁面中具有有效資料的頁面作為第一頁面。
接著,在步驟S708中,控制器160判斷一備份區塊中是否具有第一頁面之備份。當備份區塊中具有所有第一頁面之備份時,流程進行至步驟S712;否則,流程進行至步驟S710。
接著,在步驟S710中,控制器160將在備份區塊不具有備份之第一頁面中之資料寫入備份區塊。
接著,在步驟S712中,控制器160判斷被第一字元線以及排列於第一字元線前方之至少一第二字元線所控制之複數第三頁面是否不具有有效資料。當第三頁面中之任一者不具有有效資料時,流程進行至步驟S714;否則,流程進行至步驟S716。
在步驟S714中,控制器160將冗餘資料(dummy data)寫入第三頁面中不具有有效資料之頁面,以穩定第一區塊。
接著,在步驟S716中,控制器160根據儲存於備份區塊中相應於第一頁面之資料,對第一區塊中之其他複數第二頁面進行寫入以將第一頁面之資料寫入第二頁面。換言之,控制器160讀取備用區塊中第一頁面之資料,並將所讀取之第一 頁面之資料寫入第一區塊中其他不具有有效資料之頁面(第二頁面)。流程結束於步驟S716。
本發明所提供之資料儲存裝置以及資料維護方法可在斷電事件後將可能受損壞的資料重寫至相同的區塊中。在某些實施例中,資料儲存裝置以及資料維護方法亦可藉由備用區塊以及亢餘資料使得有效資料更穩定。
本發明之方法,或特定型態或其部份,可以以程式碼的型態存在。程式碼可儲存於實體媒體,如軟碟、光碟片、硬碟、或是任何其他機器可讀取(如電腦可讀取)儲存媒體,亦或不限於外在形式之電腦程式產品,其中,當程式碼被機器,如電腦載入且執行時,此機器變成用以參與本發明之裝置。程式碼也可透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態進行傳送,其中,當程式碼被機器,如電腦接收、載入且執行時,此機器變成用以參與本發明之裝置。當在一般用途處理單元實作時,程式碼結合處理單元提供一操作類似於應用特定邏輯電路之獨特裝置。
惟以上所述者,僅為本發明之較佳實施例而已,當不能以此限定本發明實施之範圍,即大凡依本發明申請專利範圍及發明說明內容所作之簡單的等效變化與修飾,皆仍屬本發明專利涵蓋之範圍內。另外本發明的任一實施例或申請專利範圍不須達成本發明所揭露之全部目的或優點或特點。此外,摘要部分和標題僅是用來輔助專利文件搜尋之用,並非用來限制本發明之權利範圍。
100‧‧‧電子系統
120‧‧‧主機
140‧‧‧資料儲存裝置
160‧‧‧控制器
162‧‧‧運算單元
164‧‧‧永久記憶體
166‧‧‧隨機存取記憶體
180‧‧‧快閃記憶體

Claims (18)

  1. 一種資料儲存裝置,包括:一快閃記憶體,包括複數區塊,每一該等區塊包括複數頁面;以及一控制器,在該資料儲存裝置自一斷電事件中回復時,在該等區塊中選擇在該斷電事件之前最後一個進行寫入之一第一區塊,並且將該第一區塊中之複數第一頁面中之資料寫入該第一區塊中該等第一頁面外之其他複數第二頁面。
  2. 根據申請專利範圍第1項之資料儲存裝置,其中該第一區塊更包括複數字元線,並且該第一區塊為一二階儲存單元區塊(MLC block),其中該第一區塊之每一該等字元線用以控制該第一區塊中之兩個該等頁面。
  3. 根據申請專利範圍第2項之資料儲存裝置,其中在該資料儲存裝置自該斷電事件中回復時,該控制器更用以在該第一區塊之該等頁面中選擇在該斷電事件之前最後一個被寫入之該頁面以作為一基準頁面,並且根據該等字元線中用以控制該基準頁面之一第一字元線決定該等第一頁面。
  4. 根據申請專利範圍第3項之資料儲存裝置,其中該等第一頁面為被該第一字元線以及排列於該第一字元線前方之至少一第二字元線所控制之複數第三頁面中具有有效資料的頁面。
  5. 根據申請專利範圍第4項之資料儲存裝置,其中該控制器更用以將冗餘資料(dummy data)寫入該等第三頁面中不具有有效資料之頁面。
  6. 根據申請專利範圍第1項之資料儲存裝置,其中該控制器更用以判斷一備份區塊中是否具有該等第一頁面之備份,並且將該等第一頁面中在該備份區塊不具有備份者之資料寫入該備份區塊。
  7. 根據申請專利範圍第6項之資料儲存裝置,其中該控制器更用以根據儲存於該備份區塊中相應於該等第一頁面之資料,對該等第二頁面進行寫入以將該等第一頁面之資料寫入該等第二頁面。
  8. 根據申請專利範圍第6項之資料儲存裝置,其中該備份區塊為單階儲存單元區塊或者二階儲存單元區塊,該第一區塊為多階儲存單元區塊。
  9. 根據申請專利範圍第8項之資料儲存裝置,其中該第一區塊為一二階儲存單元區塊(MLC block),並且該備份區塊為一單階儲存單元區塊(SLC block)。
  10. 一種資料維護方法,適用於具有一快閃記憶體之一資料儲存裝置,其中該等快閃記憶體包括複數區塊,每一該等區塊包括複數頁面,該資料維護方法包括:在該資料儲存裝置自一斷電事件中回復時,在該等區塊中選擇在該斷電事件之前最後一個進行寫入之一第一區塊;以及將該第一區塊中之複數第一頁面中之資料寫入該第一區塊中該等第一頁面外之其他複數第二頁面。
  11. 根據申請專利範圍第10項之資料維護方法,其中該第一區塊更包括複數字元線,並且該第一區塊為一二階儲存單元 區塊(MLC block),其中該第一區塊之每一該等字元線用以控制該第一區塊中之兩個該等頁面。
  12. 根據申請專利範圍第11項之資料維護方法,更包括:在該第一區塊之該等頁面中,選擇在該斷電事件之前最後一個進行寫入之該頁面以作為一基準頁面;以及根據該等字元線中用以控制該基準頁面之一第一字元線決定該等第一頁面。
  13. 根據申請專利範圍第12項之資料維護方法,其中該等第一頁面為被該第一字元線以及排列於該第一字元線前方之至少一第二字元線所控制之複數第三頁面中具有有效資料的頁面。
  14. 根據申請專利範圍第13項之資料維護方法,更包括將冗餘資料(dummy data)寫入該等第三頁面中不具有有效資料之頁面。
  15. 根據申請專利範圍第10項之資料維護方法,更包括:判斷一備份區塊中是否具有該等第一頁面之備份;以及將該等第一頁面中在該備份區塊不具有備份者之資料寫入該備份區塊。
  16. 根據申請專利範圍第15項之資料維護方法,其中上述將該第一區塊中之該等第一頁面中之資料寫入該第一區塊中該等第一頁面外之其他該等第二頁面的步驟更包括:根據儲存於該備份區塊中相應於該等第一頁面之資料,對該等第二頁面進行寫入以將該等第一頁面之資料寫入該等第二頁面。
  17. 根據申請專利範圍第15項之資料維護方法,其中該備份區塊為單階儲存單元區塊或者二階儲存單元區塊,該第一區塊為多階儲存單元區塊。
  18. 根據申請專利範圍第17項之資料維護方法,其中該第一區塊為一二階儲存單元區塊(MLC block),並且該備份區塊為一單階儲存單元區塊(SLC block)。
TW105122007A 2015-11-13 2016-07-13 資料儲存裝置及其資料維護方法 TWI592801B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201610768284.8A CN106708754B (zh) 2015-11-13 2016-08-30 数据储存装置及其数据维护方法
US15/345,785 US9747173B2 (en) 2015-11-13 2016-11-08 Data storage devices and data maintenance methods
US15/660,029 US9852032B2 (en) 2015-11-13 2017-07-26 Data storage devices and data maintenance methods

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US201562254806P 2015-11-13 2015-11-13

Publications (2)

Publication Number Publication Date
TW201717024A TW201717024A (zh) 2017-05-16
TWI592801B true TWI592801B (zh) 2017-07-21

Family

ID=59366966

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105122007A TWI592801B (zh) 2015-11-13 2016-07-13 資料儲存裝置及其資料維護方法

Country Status (1)

Country Link
TW (1) TWI592801B (zh)

Also Published As

Publication number Publication date
TW201717024A (zh) 2017-05-16

Similar Documents

Publication Publication Date Title
US10061512B2 (en) Data storage device and data writing method thereof
CN106708754B (zh) 数据储存装置及其数据维护方法
TWI569273B (zh) 非揮發性記憶體裝置讀取干擾管理方法
US9483212B2 (en) Non-volatile memory devices and control methods therefor
TWI621129B (zh) 資料儲存裝置及其資料寫入方法
US9817725B2 (en) Flash memory controller, data storage device, and flash memory control method with volatile storage restoration
US7751238B2 (en) Memory system protected from errors due to read disturbance and reading method thereof
TWI555023B (zh) 快閃記憶體更新方法以及快閃記憶體控制器
TWI660356B (zh) 資料儲存裝置及其操作方法
TWI569144B (zh) 資料儲存裝置及其斷電事件判斷方法
TWI566252B (zh) 非揮發性記憶體裝置進行耗損管理之方法
US10268546B2 (en) Non-volatile memory devices and controllers
CN111916136A (zh) 存储控制器和存储装置
CN110837340B (zh) 闪存控制器、管理闪存模块的方法及相关的电子装置
TWI727458B (zh) 記憶體裝置及用於控制記憶體裝置之方法
US9430159B2 (en) Non-volatile memory devices and controllers
TWI682275B (zh) 資料儲存裝置及其操作方法
CN108255637B (zh) 数据存储装置及其操作方法
TWI592801B (zh) 資料儲存裝置及其資料維護方法
US10019186B2 (en) Data maintenance method for error control and data storage device using the same
TWI640868B (zh) 資料儲存裝置及其資料寫入方法
KR102246843B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
CN115344418A (zh) 存储器系统及其操作方法
KR20220107733A (ko) 보호모드를 지원하는 비휘발성 메모리 장치 및 그를 포함하는 메모리 시스템
JP2021118011A (ja) 半導体記憶装置及び半導体記憶装置のリフレッシュ方法