TWI459393B - 用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置 - Google Patents
用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置 Download PDFInfo
- Publication number
- TWI459393B TWI459393B TW100101974A TW100101974A TWI459393B TW I459393 B TWI459393 B TW I459393B TW 100101974 A TW100101974 A TW 100101974A TW 100101974 A TW100101974 A TW 100101974A TW I459393 B TWI459393 B TW I459393B
- Authority
- TW
- Taiwan
- Prior art keywords
- physical
- sector
- data
- pages
- write
- 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/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
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/80—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout
- G11C29/816—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout
- G11C29/82—Masking faults in memories by using spares or by reconfiguring using programmable devices with improved layout for an application-specific layout for EEPROMs
-
- 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/7202—Allocation control and policies
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0409—Online test
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0411—Online error correction
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明是有關於一種資料寫入方法,且特別是有關於一種能夠重新使用具大量壞實體區塊之非揮發性記憶體模組的資料寫入方法及使用此方法的記憶體控制器與記憶體儲存裝置。
由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,最適於作為電子產品的儲存媒體。固態硬碟(Solid State Drive,SSD)就是一種以NAND型快閃記憶體模組作為儲存媒體的儲存裝置。由於快閃記憶體體積小容量大,所以已廣泛用於個人重要資料的儲存。因此,近年快閃記憶體產業成為電子產業中相當熱門的一環。
一般來說,在可複寫式非揮發性記憶體儲存裝置中,可複寫式非揮發性記憶體模組的實體區塊會由記憶體控制器邏輯地分組為資料區(data area)、閒置區(free area)、系統區(system area)與取代區(replacement area)。
歸類為資料區的實體區塊中會儲存由寫入指令所寫入的有效資料,而閒置區中的實體區塊是用以在執行寫入指令時替換資料區中的實體區塊。具體來說,當可複寫式非揮發性記憶體儲存裝置接受到主機系統的寫入指令而欲更新資料區之實體區塊上的資料時,可複寫式非揮發性記憶體儲存裝置會從閒置區中提取實體區塊並且將在資料區中欲更新之實體區塊中的有效舊資料與欲寫入的新資料寫入至從閒置區中提取的實體區塊,將已寫入新資料的實體區塊關聯為資料區,並且將原本資料區的實體區塊進行抹除並關聯為閒置區。為了能夠讓主機系統能夠順利地存取以輪替方式儲存資料的實體區塊,可複寫式非揮發性記憶體儲存裝置會配置邏輯扇區以供主機系統進行存取,其中邏輯扇區會分組為多個邏輯頁面並且邏輯頁面會被分組為多個邏輯區塊。特別是,可複寫式非揮發性記憶體儲存裝置會建立邏輯區塊-實體區塊對映表(logical block-physical block mapping table),並且在此表中記錄與更新邏輯區塊與資料區的實體區塊之間的對映關係來反映實體區塊的輪替。所以主機系統僅需要針對所提供邏輯扇區進行存取而可複寫式非揮發性記憶體儲存裝置會依據邏輯區塊-實體區塊對映表來對所對映的實體區塊進行讀取或寫入資料。
系統區的實體區塊是用以儲存可複寫式非揮發性記憶體儲存裝置的相關重要資訊,而取代區的實體區塊是用以取代系統區、資料區或閒置區中已損壞的實體區塊(即,壞實體區塊)。具體來說,在目前的區塊管理技術中,當寫入至一個實體區塊內的一個實體頁面或一個實體扇區的資料存在無法藉由錯誤檢查與校正程序校正的錯誤位元時,此實體區塊會被標記為壞實體區塊,並且記憶體控制器會從取代區中提取一個實體區塊中來取代此壞實體區塊。並且,當可複寫式非揮發性記憶體模組中正常的實體區塊的不足夠來執行以上述輪替方式的寫入時,可複寫式非揮發性記憶體儲存裝置將無法被用來寫入資料。
由於製程上的限制,可複寫式非揮發性記憶體模組的實體區塊中會有部分實體扇區因生產瑕疵而無法正常儲存資料,由此被識別為壞實體區塊而不再使用。特別是,當壞實體區塊的數目過多而造成可複寫式非揮發性記憶體儲存裝置無法運作時,此可複寫式非揮發性記憶體模組將被判定為不良品,而無法被使用。然而,事實上,在此些被判定為壞實體區塊中仍有許多正常的儲存空間可用於儲存資料。基此,如果能夠有效地使用此些具缺陷的實體區塊,將可使原本在製造過程中被視為不良品的可複寫式非揮發性記憶體模組重新被使用。
本發明提供一種資料寫入方法及使用此方法的記憶體控制器與記憶體儲存裝置,其能夠有效地使用實體區塊中的正常儲存空間。
本發明範例實施例提出一種資料寫入方法,用於一可複寫式非揮發性記憶體模組,其中此可複寫式非揮發性記憶體模組具有資料區及備用區,資料區用以儲存資料,備用區用以寫入資料並與資料區替換,其中備用區具有多個實體寫入單元並且每一實體寫入單元包括一資料位元區及一冗餘位元區,資料位元區包含多個實體寫入區段。本資料寫入方法包括:識別每一實體寫入單元的實體寫入區段之中的至少一實體寫入區段為一不使用區段;以及將多筆區段資料寫入至此些實體寫入單元之中,其中各實體寫入單元的不使用區段不被用來寫入此些區段資料。
在本發明之一實施例中,上述之資料寫入方法更包括:測試此些實體寫入單元的實體寫入區段以產生一損壞區段分佈表;根據此損壞區段分佈表決定每一實體寫入單元的實體寫入區段之中的不使用區段;以及使用此些實體寫入單元的其中一個實體寫入單元來儲存一壞區段資訊,其中此壞區段資訊包括關於每一實體寫入單元的實體寫入區段之中的不使用區段的資訊。在此,上述之識別每一實體寫入單元的實體寫入區段之中的不使用區段的步驟包括:根據此壞區段資訊來識別每一實體寫入單元的實體寫入區段之中的不使用區段。
在本發明之一實施例中,上述之測試此些實體寫入單元的實體寫入區段以產生上述之損壞區段分佈表的步驟包括:將一測試資料寫入至此些實體寫入單元之中的多個測試實體寫入單元的每一實體寫入區段中;藉由一錯誤檢查與校正程序識別寫入此測試資料的實體寫入區段之中的多個損壞實體寫入區段;以及統計在此些測試實體寫入單元中的此些損壞實體寫入區段的一分佈狀態以產生上述損壞區段分佈表。
在本發明之一實施例中,上述之資料寫入方法更包括:配置多個邏輯寫入單元以映射部分的上述實體寫入單元,其中每一邏輯寫入單元的容量等於每一實體寫入單元的容量減去每一實體寫入單元的不使用區段的容量。
本發明範例實施例提出一種資料寫入方法,用於可複寫式非揮發性記憶體模組,其中此可複寫式非揮發性記憶體模組具有多個實體區塊,每一實體區塊具有多個實體頁面,每一實體頁面包括一資料位元區與一冗餘位元區並且每一資料位元區包括多個實體扇區。本資料寫入方法包括識別每一實體頁面的資料位元區的實體扇區之中的至少一不使用扇區;以及以每一實體頁面為單位將多個扇區資料寫入至此些實體頁面之中的一第一實體頁面中,其中此第一實體頁面的資料位元區的實體扇區之中的至少一不使用扇區不會被用來寫入此些扇區資料。
在本發明之一實施例中,上述之資料寫入方法更包括:測試此些實體區塊的實體頁面以產生一損壞扇區分佈表;根據此損壞扇區分佈表決定每一實體頁面的資料位元區的實體扇區之中的不使用扇區;以及使用此些實體區塊的其中一個實體區塊來儲存一壞扇區資訊,其中此壞扇區資訊包括關於每一實體頁面的資料位元區的實體扇區之中的不使用扇區的資訊。此外上述之識別每一實體頁面的資料位元區的實體扇區之中的不使用扇區的步驟包括:根據此壞扇區資訊來識別每一實體頁面的資料位元區的實體扇區之中的不使用扇區。
在本發明之一實施例中,上述之測試此些實體區塊的實體頁面以產生損壞扇區分佈表的步驟包括:將一測試資料寫入至此些實體頁面之中的多個測試實體頁面的每一實體扇區中;藉由一錯誤檢查與校正程序識別寫入此測試資料的實體扇區之中的多個損壞實體扇區;以及統計在此些測試實體頁面中的此些損壞實體扇區的一分佈狀態以產生上述損壞扇區分佈表。
在本發明之一實施例中,上述之根據損壞扇區分佈表決定每一實體頁面的實體扇區之中的不使用扇區的步驟包括:根據上述之損壞扇區分佈表以多種寫入測試分別地以每一實體頁面為單位將測試資料寫入至此些實體區塊的實體頁面中,藉由錯誤檢查與校正程序分別地識別在此些寫入測試中此些實體區塊之中的多個壞實體區塊;分別地根據所識別的壞實體區塊計算對應此些寫入測試的多個可用容量;以及根據此些可用容量決定每一實體頁面的實體扇區之中的不使用扇區,其中在每一寫入測試中測試資料被寫入至此些實體區塊的實體頁面的部分實體扇區中。
在本發明之一實施例中,上述之根據可用容量決定每一實體頁面的資料位元區的實體扇區之中的不使用扇區的步驟包括:根據此些可用容量之中的一最大可用容量來決定每一實體頁面的實體扇區之中的不使用扇區。
在本發明之一實施例中,上述之資料寫入方法更包括:配置多個邏輯頁面以映射部分的實體頁面,其中上述之扇區資料屬於此些邏輯頁面之中的一第一邏輯頁面,此第一邏輯頁面的容量等於上述第一實體頁面的容量減去第一實體頁面的不使用扇區的容量。
在本發明之一實施例中,上述之資料寫入方法更包括從主機系統中接收至少一資料以及將此資料整理為上述之扇區資料。
本發明範例實施例提出一種記憶體控制器,用於控制可複寫式非揮發性記憶體模組,其中此可複寫式非揮發性記憶體模組具有多個實體區塊,每一實體區塊具有多個實體頁面,每一實體頁面包括一資料位元區與一冗餘位元區並且每一資料位元區包括多個實體扇區。本記憶體控制器包括主機介面、記憶體介面與記憶體管理電路。主機介面用以耦接至主機系統,記憶體介面用以耦接至可複寫式非揮發性記憶體模組並且記憶體管理電路耦接至主機介面與記憶體介面。在此,記憶體管理電路用以識別每一實體頁面的資料位元區的實體扇區之中的至少一不使用扇區,並且以每一實體頁面為單位將多個扇區資料寫入至此些實體頁面之中的第一實體頁面中,其中此第一實體頁面的資料位元區的實體扇區之中的不使用扇區不會被用來寫入此些扇區資料。
在本發明之一實施例中,上述之記憶體管理電路測試此些實體區塊的實體頁面以產生一損壞扇區分佈表,並且根據此損壞扇區分佈表決定每一實體頁面的資料位元區的實體扇區之中的不使用扇區。此外,記憶體管理電路使用此些實體區塊的其中一個實體區塊來儲存一壞扇區資訊,並且根據此壞扇區資訊來識別每一實體頁面的資料位元區的實體扇區之中的不使用扇區,其中此壞扇區資訊包括關於每一實體頁面的資料位元區的實體扇區之中的不使用扇區的資訊。
在本發明之一實施例中,上述之記憶體控制器更包括一錯誤檢查與校正電路。在此,記憶體管理模組將測試資料寫入至此些實體頁面之中的多個測試實體頁面的每一實體扇區中,並且透過錯誤檢查與校正電路識別寫入此測試資料的實體扇區之中的多個損壞實體扇區。此外,記憶體管理電路統計在此些測試實體頁面中的損壞實體扇區的一分佈狀態,以產生損壞扇區分佈表。
在本發明之一實施例中,上述之記憶體管理電路根據上述損壞扇區分佈表以多種寫入測試分別地以每一實體頁面為單位將測試資料寫入至此些實體區塊的實體頁面中,其中在每一寫入測試中測試資料被寫入至此些實體區塊的實體頁面的部分實體扇區中。此外,記憶體管理電路透過錯誤檢查與校正電路分別地識別在對應此些寫入測試中的多個壞實體區塊,分別地根據所識別的壞實體區塊計算對應此些寫入測試的可用容量,以及根據此些可用容量決定每一實體頁面的資料位元區的實體扇區之中的不使用扇區。
在本發明之一實施例中,上述之記憶體管理電路根據此些可用容量之中的一最大可用容量來決定每一實體頁面的資料位元區的實體扇區之中的不使用扇區。
在本發明之一實施例中,上述之記憶體管理電路配置多個邏輯頁面以映射部分的實體頁面,其中上述扇區資料屬於此些邏輯頁面之中的一第一邏輯頁面,此第一邏輯頁面的容量等於上述第一實體頁面的容量減去第一實體頁面的不使用扇區的容量。
在本發明之一實施例中,上述之記憶體管理電路從主機系統中接收至少一資料並且將此整理為上述扇區資料。
本發明範例實施例提出一種記憶體儲存裝置,包括連接器、可複寫式非揮發性記憶體模組與記憶體控制器。連接器用以耦接至一主機系統。可複寫式非揮發性記憶體模組具有多個實體區塊,其中每一實體區塊具有多個實體頁面,每一實體頁面包括一資料位元區與一冗餘位元區並且每一資料位元區包括多個實體扇區。記憶體控制器耦接至連接器與可複寫式非揮發性記憶體模組,並且用以識別每一實體頁面的資料位元區的實體扇區之中的至少一不使用扇區。此外,記憶體控制器更用以以每一實體頁面為單位將多個扇區資料寫入至此些實體頁面之中的一第一實體頁面中,其中此第一實體頁面的資料位元區的實體扇區之中的不使用扇區不會被用來寫入此些扇區資料。
在本發明之一實施例中,上述之記憶體控制器用以測試此些實體區塊的實體頁面以產生一損壞扇區分佈表,並且根據此損壞扇區分佈表決定每一實體頁面的資料位元區的實體扇區之中的不使用扇區。此外,記憶體控制器更用以使用此些實體區塊的其中一個實體區塊來儲存一壞扇區資訊,並且根據此壞扇區資訊來識別每一實體頁面的資料位元區的實體扇區之中的不使用扇區,其中此壞扇區資訊包括關於每一實體頁面的資料位元區的實體扇區之中的不使用扇區的資訊。
在本發明之一實施例中,上述之記憶體控制器包括一錯誤檢查與校正電路。在此,記憶體控制器將測試資料寫入至此些實體頁面之中的多個測試實體頁面的每一實體扇區中,並且透過此錯誤檢查與校正電路識別寫入測試資料的實體扇區之中的多個損壞實體扇區。此外,記憶體控制器統計在此些測試實體頁面中的損壞實體扇區的一分佈狀態,以產生損壞扇區分佈表。
在本發明之一實施例中,上述之記憶體控制器根據此損壞扇區分佈表以多種寫入測試分別地以每一實體頁面為單位將測試資料寫入至此些實體區塊的實體頁面中,其中在每一寫入測試中測試資料被寫入至此些實體區塊的實體頁面的部分實體扇區中。此外,記憶體控制器透過上述錯誤檢查與校正電路分別地識別對應在此些寫入測試中的多個壞實體區塊,分別地根據所識別的壞實體區塊計算對應此些寫入測試的多個可用容量,並且根據此些可用容量決定每一實體頁面的資料位元區的實體扇區之中的不使用扇區。
在本發明之一實施例中,上述之記憶體控制器根據此些可用容量之中的一最大可用容量來決定每一實體頁面的實體扇區之中的不使用扇區。
在本發明之一實施例中,上述之記憶體控制器配置多個邏輯頁面以映射部分的實體頁面,其中此些扇區資料屬於此些邏輯頁面之中的一第一邏輯頁面,此第一邏輯頁面的容量等於上述第一實體頁面的容量減去第一實體頁面的不使用扇區的容量。
在本發明之一實施例中,上述之記憶體控制器從主機系統中接收至少一資料並且將此資料整理為上述扇區資料。
基於上述,本發明範例實施例的資料寫入方法及使用此方法的記憶體控制器與記憶體儲存裝置能夠有效地使用可複寫式揮發性記憶體模組中正常的實體扇區。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
在可複寫式非揮發性記憶體模組的管理中,可複寫式非揮發性記憶體模組的實體寫入單元會被區分為是屬於資料區或備用區,其中資料區的實體寫入單元用以儲存資料,而備用區的實體寫入單元用以寫入資料並與資料區替換。此外,每一實體寫入單元包括資料位元區及冗餘位元區,其中資料位元區包含多個實體寫入區段。在本發明的資料寫入方法中,每一實體寫入單元的實體寫入區段之中的至少一不使用實體寫入區段(簡稱為不使用區段)會被識別,並且當寫入區段資料至每一實體寫入單元時,每一實體寫入單元的不使用區段不被用來寫入此些區段資料。基此,配置給主機系統所存取之每一邏輯寫入單元的容量是等於每一實體寫入單元的容量減去每一實體寫入單元的不使用區段的容量。
具體來說,在本發明的資料寫入方法中,測試資料會被寫入至此些實體寫入單元之中的多個測試實體寫入單元之資料位元區的每一實體寫入區段中。之後,寫入此測試資料的實體寫入區段之中的損壞實體寫入區段會藉由錯誤檢查與校正程序來被識別並且在此些測試實體寫入單元中的此些損壞實體寫入區段的一分佈狀態會被統計以產生損壞區段分佈表。然後,會根據此損壞區段分佈表來決定每一實體寫入單元的實體寫入區段之中的不使用區段。在本範例實施例中,每一實體寫入單元的實體寫入區段之中的不使用區段都會相同,亦即,在方便管理的考量下,部份實體寫入單元的不使用區段可以是良好的實體寫入區段,但不被用於寫於有效資料,並且關於每一實體寫入單元的實體寫入區段之中的不使用區段的壞區段資訊會被儲存在其中一個實體寫入單元中。基此,每當執行寫入指令時,每一實體寫入單元中的不使用區段就可根據所儲存之壞區段資訊被跳過,而不用來寫入區段資訊。基此,能夠較有效地使用可複寫式揮發性記憶體模組中至少部份仍正常的實體寫入區段來儲存資料。
在本發明中,實體(邏輯)寫入單元可為實體(邏輯)區塊、實體(邏輯)頁面或其他適當的單位,其中資料位元區可為單一頁面中之資料位元區(data bit area)或由數個頁面之資料位元區組合而成,並且冗餘位元區亦可為單一頁面中之冗餘位元區(redundant bit area)或由數個頁面之冗餘位元區組合而成。為了方便更具體地描述本發明,以下將一範例實施例及其圖式來作說明,其中在此範例實施例中,實體寫入單元為對應可複寫式非揮發性記憶體模組的實體頁面,實體寫入區段對應可複寫式非揮發性記憶體模組的實體扇區,並且區段資料為扇區資料,但不應以此為限。
圖1A是根據本發明範例實施例所繪示的主機系統與記憶體儲存裝置。
請參照圖1A,主機系統1000一般包括電腦1100與輸入/輸出(input/output,I/O)裝置1106。電腦1100包括微處理器1102、隨機存取記憶體(random access memory,RAM)1104、系統匯流排1108與資料傳輸介面1110。輸入/輸出裝置1106包括如圖1B的滑鼠1202、鍵盤1204、顯示器1206與印表機1208。必須瞭解的是,圖1B所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可更包括其他裝置。
在本發明實施例中,記憶體儲存裝置100是透過資料傳輸介面1110與主機系統1000的其他元件耦接。藉由微處理器1102、隨機存取記憶體1104與輸入/輸出裝置1106的運作可將資料寫入至記憶體儲存裝置100或從記憶體儲存裝置100中讀取資料。例如,記憶體儲存裝置100可以是如圖1B所示的隨身碟1212、記憶卡1214或固態硬碟(Solid State Drive,SSD)1216等的可複寫式非揮發性記憶體儲存裝置。
一般而言,主機系統1000為可實質地與記憶體儲存裝置100配合以儲存資料的任意系統。雖然在本範例實施例中,主機系統1000是以電腦系統來作說明,然而,在本發明另一範例實施例中主機系統1000可以是數位相機、攝影機、通信裝置、音訊播放器或視訊播放器等系統。例如,在主機系統為數位相機(攝影機)1310時,可複寫式非揮發性記憶體儲存裝置則為其所使用的SD卡1312、MMC卡1314、記憶棒(memory stick)1316、CF卡1318或嵌入式儲存裝置1320(如圖1C所示)。嵌入式儲存裝置1320包括嵌入式多媒體卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒體卡是直接耦接於主機系統的基板上。
圖2是繪示圖1A所示的記憶體儲存裝置的概要方塊圖。
請參照圖2,記憶體儲存裝置100包括連接器102、記憶體控制器104與可複寫式非揮發性記憶體模組106。
在本範例實施例中,連接器102是相容於序列先進附件(Serial Advanced Technology Attachment,SATA)標準。然而,必須瞭解的是,本發明不限於此,連接器102亦可以是符合電氣和電子工程師協會(Institute of Electrical and Electronic Engineers,IEEE) 1394標準、高速周邊零件連接介面(Peripheral Component Interconnect Express,PCI Express)標準、通用序列匯流排(Universal Serial Bus,USB)標準、安全數位(Secure Digital,SD)介面標準、記憶棒(Memory Stick,MS)介面標準、多媒體儲存卡(Multi Media Card,MMC)介面標準、小型快閃(Compact Flash,CF)介面標準、整合式驅動電子介面(Integrated Device Electronics,IDE)標準或其他適合的標準。
記憶體控制器104用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統1000的指令在可複寫式非揮發性記憶體模組106中進行資料的寫入、讀取與抹除等運作。
可複寫式非揮發性記憶體模組106是耦接至記憶體控制器104,並且用以儲存主機系統1000所寫入之資料。可複寫式非揮發性記憶體模組106具有多個實體區塊(即,實體區塊304(0)~304(R))。在本範例實施例中,例如,R為(2048-1)。也就是說,可複寫式非揮發性記憶體模組106具有2048個實體區塊。然而,必須瞭解的是,本發明不限於此,在本發明另一範例實施例中,R可以是大於0的任意數目。在此,此些實體區塊可屬於同一個記憶體晶粒(die)或者屬於不同的記憶體晶粒。
圖3是根據本發明範例實施例所繪示的實體區塊的資料位元區的示意圖。由於每一實體區塊的結構是相同的,在此,僅繪示實體區塊304(0)來進行說明。
請參照圖3,實體區塊304(0)具有依序排列的實體頁面PP(0)~實體頁面PP(127),並且每一實體頁面具有依序排列的實體扇區PS(0)~實體扇區PS(7),其中屬於同一個實體區塊之實體頁面可被獨立地寫入且被同時地抹除。更詳細來說,實體區塊為抹除之最小單位。亦即,每一實體區塊含有最小數目之一併被抹除之記憶胞。實體頁面為程式化的最小單元。即,實體頁面為寫入資料的最小單元。然而,必須瞭解的是,在本發明另一範例實施例中,寫入資料的最小單位亦可以是實體扇區或其他大小。每一實體扇區包括使用者資料(user data)位元區與冗餘(redundancy)位元區。使用者資料位元區用以儲存使用者的資料,而冗餘位元區用以儲存系統的資料(例如,錯誤校正碼)。例如,每一實體扇區的使用主資料位元區的容量為1千位元組(Kilobyte,K),基此,每一個實體頁面可儲存8K的使用者資料。
儘管在本發明範例實施例中,每一實體區塊是由128個實體頁面所組成。然而,必須瞭解的是,本發明不限於此,每一實體區塊是可由64個實體頁面、256個實體頁面或其他任意個實體頁面所組成。類似地,儘管在本範例實施例中,每一實體頁面是由8個實體扇區所組成,但本發明不限於此。
例如,可複寫式非揮發性記憶體模組106為多階記憶胞(Multi Level Cell,MLC)NAND快閃記憶體模組。然而,本發明不限於此,可複寫式非揮發性記憶體模組106亦可是單階記憶胞(Single Level Cell,SLC)NAND快閃記憶體模組、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
圖4是根據本發明範例實施例所繪示之記憶體控制器的概要方塊圖。
請參照圖4,記憶體控制器104包括記憶體管理電路202、主機介面204、記憶體介面206與錯誤校正電路208。
記憶體管理電路202用以控制記憶體控制器104的整體運作。具體來說,記憶體管理電路202具有多個控制指令,並且在記憶體儲存裝置100運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。
在本範例實施例中,記憶體管理電路202的控制指令是以韌體型式來實作。例如,記憶體管理電路202具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置100運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在本發明另一範例實施例中,記憶體管理電路202的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組106的特定區域(例如,非揮發性記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路202具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有驅動碼,並且當記憶體控制器104被致能時,微處理器單元會先執行此驅動碼段來將儲存於可複寫式非揮發性記憶體模組106中之控制指令載入至記憶體管理電路202的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。此外,在本發明另一範例實施例中,記憶體管理電路202的控制指令亦可以一硬體型式來實作。
主機介面204是耦接至記憶體管理電路202並且用以接收與識別主機系統1000所傳送的指令與資料。也就是說,主機系統1000所傳送的指令與資料會透過主機介面204來傳送至記憶體管理電路202。在本範例實施例中,主機介面204是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面204亦可以是相容於PATA標準、IEEE 1394標準、PCI Express標準、USB標準、SD標準、MS標準、MMC標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面206是耦接至記憶體管理電路202並且用以存取可複寫式非揮發性記憶體模組106。也就是說,欲寫入至可複寫式非揮發性記憶體模組106的資料會經由記憶體介面206轉換為可複寫式非揮發性記憶體模組106所能接受的格式。
錯誤校正電路208是耦接至記憶體管理電路202並且用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,在執行寫入指令時,錯誤校正電路208會為欲寫入之資料產生對應的錯誤校正碼,並且記憶體管理電路202會將此資料與對應的錯誤校正碼寫入至可複寫式非揮發性記憶體模組106中。之後,當記憶體管理電路202從可複寫式非揮發性記憶體模組106中讀取資料時會同時讀取此資料對應的錯誤校正碼,並且錯誤校正電路208會依據此錯誤校正碼對所讀取的資料執行錯誤檢查與校正程序。值得一提的是,錯誤校正電路208能夠校正之錯誤位元的數目會與所產生之錯誤校正碼的長度成正比。也就是說,當錯誤校正電路208被設計能夠校正之錯誤位元的數目越多時,則需要越多儲存空間來儲存所產生之錯誤校正碼。如上所述,用以儲存錯誤校正碼之冗餘位元區的容量是固定的(根據不同種類之可複寫式非揮發性記憶體模組而不同)。因此,實作於錯誤校正電路208中的錯誤校正演算法會受限於可複寫式非揮發性記憶體模組106的類型。例如,在本範例實施例中,錯誤校正電路208最多能夠校正40個錯誤位元。也就是說,只要發生在所讀取之資料上的錯誤位元的數目不超過40,錯誤校正電路208皆能夠順利地將錯誤位元更正。
在本發明一範例實施例中,記憶體控制器104還包括緩衝記憶體252。緩衝記憶體252是耦接至記憶體管理電路202並且用以暫存來自於主機系統1000的資料與指令或來自於可複寫式非揮發性記憶體模組106的資料。
在本發明一範例實施例中,記憶體控制器104還包括電源管理電路254。電源管理電路254是耦接至記憶體管理電路202並且用以控制記憶體儲存裝置100的電源。
圖5是根據本發明範例實施例所繪示之管理可複寫式非揮發性記憶體模組的實體區塊的示意圖。
必須瞭解的是,在此描述非揮發性記憶體模組106之實體區塊的運作時,以“提取”、“交換”、“分組”、“輪替”等詞來操作實體區塊是邏輯上的概念。也就是說,記憶體模組106之實體區塊的實際位置並未更動,而是邏輯上對非揮發性記憶體模組106的實體區塊進行操作。
請參照圖4,記憶體管理電路202會將非揮發性記憶體模組106的實體區塊304(0)~304(R)邏輯地分組為資料區402、閒置區404、系統區406與取代區408。
資料區402與閒置區404的實體區塊是用以儲存來自於主機系統1000的資料。具體來說,資料區402是已儲存資料的實體區塊,而閒置區404的實體區塊是用以替換資料區402的實體區塊。因此,閒置區404的實體區塊為空或可使用的實體區塊,即無記錄資料或標記為已沒用的無效資料。也就是說,在備用區中的實體區塊已被執行抹除運作,或者當備用區中的實體區塊被提取用於儲存資料之前所提取之實體區塊會被執行抹除運作。因此,備用區的實體區塊為可被使用的實體區塊。
邏輯上屬於系統區406的實體區塊是用以記錄系統資料,其中此系統資料包括關於記憶體晶片的製造商與型號、記憶體晶片的實體區塊數、每一實體區塊的實體頁面數等。
邏輯上屬於取代區408中的實體區塊是替代實體區塊。例如,非揮發性記憶體模組106於出廠時會預留4%的實體區塊作為更換使用。也就是說,當資料區402、閒置區404與系統區406中的實體區塊損毀時,預留於取代區408中的實體區塊是用以取代損壞的實體區塊(即,壞實體區塊(bad block))。因此,倘若取代區408中仍存有正常之實體區塊且發生實體區塊損毀時,記憶體管理電路202會從取代區408中提取正常的實體區塊來更換損毀的實體區塊。倘若取代區408中無正常之實體區塊且發生實體區塊損毀時,則記憶體管理電路202會將整個非揮發性記憶體儲存裝置100宣告為寫入保護(write protect)狀態,而無法再寫入資料。
特別是,資料區402、閒置區404、系統區406與取代區408之實體區塊的數量會依據不同的記憶體規格而有所不同。此外,必須瞭解的是,在非揮發性記憶體儲存裝置100的運作中,實體區塊關聯至資料區402、閒置區404、系統區406與取代區408的分組關係會動態地變動。例如,當備用區中的實體區塊損壞而被取代區的實體區塊取代時,則原本取代區的實體區塊會被關聯至備用區。
特別是,在本範例實施例中,記憶體管理電路202會識別實體區塊中的不使用扇區(un-used sector)並且在以實體頁面單位寫入資料至非揮發性記憶體模組106時跳過所識別的不使用扇區,亦即不將由主機端接收欲寫入非揮發性記憶體模組106的資料儲存在不使用扇區中。
具體來說,非揮發性記憶體模組106中的其中一個實體區塊會儲存壞扇區資訊,並且此壞扇區資訊會記錄關於在非揮發性記憶體模組106中不被允許使用之扇區(即,不使用扇區)的資訊。例如,倘若壞扇區資訊中記錄實體扇區PS(5)為不使用扇區時,記憶體管理電路202不會使用實體扇區PS(5)來寫入有效資料。也就是說,在非揮發性記憶體模組106中所有實體頁面的實體扇區PS(5)皆不會被用來儲存有效資料。其中,在本範例實施例中,記憶體管理電路202可在判斷要寫入的扇區為不使用扇區時,跳過該扇區不去寫入該筆資料,或者在該不使用扇區另填入一無效資料。
例如,當記憶體控制器104欲將多個扇區資料(即,資料量為一個實體扇區的資料)寫入至實體區塊304(0)的實體頁面PP(0)時,記憶體管理電路202會將此些扇區資料依序寫入至從實體頁面PP(0)的實體扇區PS(0)、實體扇區PS(1)、實體扇區PS(2)、實體扇區PS(3)、實體扇區PS(4)、實體扇區PS(6)與實體扇區PS(7)。例如,記憶體控制器104會使用含有跳過指令的程式化指令將扇區資料寫入至實體頁面PP(0)中。
圖6是根據本發明範例實施例所繪示之程式化指令的範例。
請參照圖6,假設扇區資料SD(0)~SD(6)欲被寫入至實體區塊304(0)的實體頁面PP(0)之實體扇區PS(0)~PS(3)及PS(5)~PS(6),即跳過其實體扇區PS(4)不寫。記憶體控制器104的記憶體管理電路202會對可複寫式非揮發性記憶體模組106下達由“指令W1”、“實體位址”、“資料”、“指令W2”與“指令W3”等字串所組成的指令。
具體來說,記憶體管理電路202藉由“指令W1”指示可複寫式非揮發性記憶體模組106準備輸入欲程式化的串流資料,藉由“304(0)PP(0)PS(0)”指示可複寫式非揮發性記憶體模組106欲開始程式化的位址為實體區塊304(0)的實體頁面PP(0)的實體扇區PS(0),藉由“SD(0)~SD(4)”指示可複寫式非揮發性記憶體模組106欲程式化的扇區資料SD(0)~SD(4),即扇區資料SD(0)~SD(4)會被寫入實體扇區PS(0)~PS(4),藉由“指令W2”指示可複寫式非揮發性記憶體模組106跳至另一個實體位址,藉由“304(0)PP(0)PS(6)”指示可複寫式非揮發性記憶體模組106跳至實體區塊304(0)的實體頁面PP(0)的實體扇區PS(6)來程式化資料,藉由“SD(5)~SD(6)”指示可複寫式非揮發性記憶體模組106欲程式化的扇區資料SD(5)~SD(6),即扇區資料SD(5)~SD(6)會被寫入實體扇區PS(6)~PS(7),以及藉由“指令W3”指示可複寫式非揮發性記憶體模組106開始執行程式化。基此,非揮發性記憶體模組106就會根據此程式化指令將扇區資料程式化至實體區塊304(0)的實體頁面PP(0)中,並且跳過實體扇區PS(5)。
值得一提的是,如上所述,資料區402與閒置區404的實體區塊是以輪替方式來儲存主機系統1000所寫入之資料。在本範例實施例中,記憶體管理電路202會配置邏輯扇區給主機系統1000以利於在以上述輪替方式來儲存資料之實體區塊中進行資料存取。特別是,記憶體管理電路202會將所提供的邏輯位址(在此,亦稱為邏輯扇區)分組成多個邏輯頁面並且此些邏輯頁面會被分組為多個邏輯區塊。此外,記憶體管理電路202會維護邏輯區塊-實體區塊映射表(logical block-physical block mapping table),以記錄用以儲存屬於此些邏輯區塊之資料的實體區塊和此些邏輯區塊的映射關係。
圖7是根據本發明範例實施例所繪示之邏輯區塊與實體區塊的映射示意圖。
請參照圖7,邏輯區塊510(0)~510(H)是映射至資料區402的實體區塊。例如,當非揮發性記憶體儲存裝置100被主機系統1000的作業系統以檔案系統(例如,FAT 32)格式化時,邏輯區塊510(0)~510(H)分別地映射至資料區402的實體區塊304(0)~304(D)。也就是說,一個邏輯區塊會映射資料區402中的一個實體區塊。之後,當閒置區404的實體區塊被提取來寫入資料以替換資料區的實體區塊時,邏輯區塊-實體區塊映射表中的映射關係會被更新。例如,當邏輯區塊510(0)是映射至實體區塊304(0)的映射狀態並且記憶體控制器104從主機系統1000中接收到寫入指令而欲寫入資料至屬於邏輯區塊510(0)的邏輯扇區時,記憶體管理電路202會依據邏輯區塊-實體區塊映射表識別邏輯區塊510(0)目前是映射至實體區塊304(0)並且從備用區404中提取實體區塊304(D+1)作為替換實體區塊來輪替實體區塊304(0)。例如,記憶體管理電路202會將實體區塊304(0)中對應邏輯區塊510(0)的有效資料以及欲寫入之新資料寫入至實體區塊304(D+1)中,將實體區塊304(0)抹除並關聯至備用區404,並且在邏輯區塊-實體區塊映射表中將邏輯區塊510(0)重新映射至304(D+1),由此將實體區塊304(D+1)關聯至資料區402。
在本範例實施例中,當配置邏輯扇區並且將邏輯扇區分組為映射實體頁面的邏輯頁面時,記憶體管理電路202不會配置對應的邏輯扇區給不使用之實體扇區。基此,每一個邏輯頁面的容量會小於其所映射之實體頁面的容量。也就是說,邏輯頁面的容量等於實體頁面的容量減去不使用扇區的容量。
圖8根據本發明範例實施例所繪示之邏輯區塊之邏輯頁面與實體區塊之實體頁面的資料位元區的映射範例示意圖。在此假設邏輯區塊510(0)目前是映射實體區塊304(0)並且以邏輯區塊510(0)與實體區塊304(0)為例進行說明頁面的映射方式。相同的映射方式適用於本範例實施例中所有邏輯區塊之邏輯頁面與實體區塊之實體頁面的映射。
請參照圖8,倘若壞扇區資訊中記錄實體扇區PS(5)為不使用扇區(如虛線所示)時,記憶體管理電路202僅會在將7個邏輯扇區分組為1個邏輯頁面。因此,在邏輯區塊510(0)內每一邏輯頁面會包含邏輯扇區LS(0)~LS(6)。並且,在邏輯頁面之邏輯扇區與實體頁面之實體扇區的映射關係中,邏輯扇區LS(0)是映射實體扇區PS(0);邏輯扇區LS(1)是映射實體扇區PS(2);邏輯扇區LS(3)是映射實體扇區PS(3);邏輯扇區LS(4)是映射實體扇區PS(4);邏輯扇區LS(5)是映射實體扇區PS(6)並且邏輯扇區LS(6)是映射實體扇區PS(7)。也就是說,主機系統1000欲儲存至邏輯扇區LS(5)的資料會被寫入至實體扇區PS(6)中並且主機系統1000欲儲存至邏輯扇區LS(6)的資料會被寫入至實體扇區PS(7)中,由此跳過實體扇區PS(5)。
圖9是根據本發明範例實施例所繪示之資料寫入方法的流程圖,其繪示寫入資料至實體頁面(以下稱為第一實體頁面)的步驟。
請參照圖9,在步驟S901中,記憶體管理電路202會接收來自於主機系統1000的寫入指令與欲寫入之資料。在此,寫入指令會包含欲寫入之邏輯扇區並且記憶體管理電路202繪示別此些邏輯扇區所屬之邏輯頁面(以下稱為第一邏輯頁面)。並且,在步驟S903中,記憶體管理電路202會將此資料整理成多個扇區資料。例如,記憶體管理電路202會將此資料整理成符合預設之錯誤校正碼框的扇區資料。
之後,在步驟S905中,記憶體管理電路202會識別每一實體頁面的資料位元區中不使用之實體扇區(即,不使用扇區)。
然後,在步驟S907中,記憶體管理電路202會以每一實體頁面為單位將多個扇區資料寫入至實體頁面(以下稱為第一實體頁面)中。特別是,在步驟S907中,扇區資料不會被寫入至第一實體頁面中的不使用扇區中。例如,如圖6與圖8所示,記憶體管理電路202會根據第一邏輯頁面與第一實體頁面之間的映射關係使用指令W2來跳過不使用扇區,以將扇區資料以實體頁面為單位寫入至實體區塊中。
如上所述,在記憶體儲存裝置100運作,記憶體控制器104的記憶體管理電路202會根據所儲存之壞扇區資訊來識別不使用扇區並且據此在以實體頁面為單位寫入資料時跳過不使用扇區。以下將根據本發明一範例實施例描述壞扇區資訊之建立,然而,必須瞭解的是,以下僅為一個範例,本發明不限於此。
在記憶體儲存裝置100出廠並且進行開卡時,記憶體管理電路202會測試非揮發性記憶體模組106的實體區塊的實體頁面以產生一損壞扇區分佈表。具體來說,記憶體管理電路202會將測試資料寫入之測試實體頁面的實體扇區中。例如,測試實體頁面可以為非揮發性記憶體模組106的所有實體頁面或者以抽樣方式隨機挑選之部分實體頁面。
之後,記憶體管理電路202會從測試實體頁面的實體扇區中讀取所寫入之資料,並且錯誤校正電路208會對從每一實體扇區中所讀出之資料進行錯誤檢查與校正程序以判斷是否發生無法校正之錯誤位元。當所讀取之資料發生無法錯誤校正之錯誤位元時,記憶體管理電路202會再次寫入測試資料來確認實體扇區是否存有缺陷。
例如,在程式化資料時,鄰近的實體扇區可能會受到干擾。因此,當儲存於實體扇區S(0)與實體扇區S(1)中,記憶體管理電路202會僅在實體扇區S(0)中寫入測試資料來判斷儲存於實體扇區S(0)中的資料是否發生無法校正的錯誤位元,並且僅在實體扇區S(1)中寫入測試資料來判斷儲存於實體扇區S(1)中的資料是否發生無法校正的錯誤位元,由此,確認實體扇區S(0)與實體扇區S(1)是否皆存有缺陷。
在經過上述測試及再次測試程序後,當所讀取之資料仍發生無法錯誤校正之錯誤位元時,用以儲存此資料之實體扇區會被標記為損壞實體扇區。然後,記憶體管理電路202會統計在此些測試實體頁面中損壞實體扇區的分佈狀態,以產生損壞扇區分佈表。
在本範例實施例中,記憶體管理電路202根據此損壞扇區分佈表執行多種寫入測試,以決定不使用扇區。
具體來說,如前所述,在非揮發性記憶體模組之壞實體區塊管理中,當儲存於實體區塊中之資料發生無法校正之錯誤位元時,此實體區塊會被標記壞實體區塊,而不會再被使用。在此,記憶體管理電路202根據損壞扇區分佈表以試誤法(try and error)來選擇地使用每一個實體頁面中的部分實體扇區來寫入資料,由此決定不使用扇區。
例如,假設記憶體管理電路202僅使用每一實體頁面的實體扇區PS(0)、PS(1)、PS(2)、PS(3)、PS(4)、PS(6)與PS(7)來寫入測試資料並且因此有50個實體區塊會因此被判定為壞實體區塊時,由此而獲得僅使用每一實體頁面的實體扇區PS(0)、PS(1)、PS(2)、PS(3)、PS(4)、PS(6)與PS(7)的情況下可複寫式非揮發性記憶體模組106之資料位元區的可用容量等於447552K(即,2k(位元組)×7/8)×128(頁面)×(2048-50)區塊)。其中,此範例是適用於具有2k頁面,2048區塊的儲存裝置。
例如,假設記憶體管理電路202僅使用每一實體頁面的實體扇區PS(1)、PS(2)、PS(3)、PS(4)、PS(6)與PS(7)來寫入測試資料並且有40個實體區塊會因此被判定為壞實體區塊時,由此而獲得僅使用每一實體頁面的實體扇區PS(1)、PS(2)、PS(3)、PS(4)、PS(6)與PS(7)的情況下可複寫式非揮發性記憶體模組106之資料位元區的可用容量等於383616K(即,2k(位元組)×6/8)×128(頁面)×(2048-50)區塊)。
基此,記憶體管理電路202可計算出各種寫入測試所對應的可用容量。例如,記憶體管理電路202可選擇對應最大可用容量之寫入方式並且由此決定不使用扇區。
在本發明範例實施例中,記憶體管理電路202會使用非揮發性記憶體模組106中的其中一個實體區塊來儲存關於不使用扇區的資訊,以作為壞扇區資訊。例如,此儲存此壞扇區資訊之實體區塊為系統區406的實體區塊。或者,記憶體管理電路202亦可使用閒置區404的其中一個實體區塊來儲存此壞扇區資料並且將此實體區塊標記為壞實體區塊,以避免被其他資料所覆寫。
圖10是繪示本發明範例實施例之資料寫入方法中決定不使用扇區的流程圖。
請參照圖10,在步驟S1001中,測試資料會被寫入至可複寫式非揮發性記憶體模組106的多個測試實體頁面的每一實體扇區中。如上所述,測試實體頁面可以是可複寫式非揮發性記憶體模組106的所有實體頁面或部分的實體頁面。
然後,在步驟S1003中,寫入測試資料的實體扇區之中的多個損壞實體扇區會藉由錯誤檢查與校正程序被識別。並且,在步驟S1005中,在測試實體頁面中的損壞實體扇區的分佈狀態會被統計,以產生對應的損壞扇區分佈表。
之後,在步驟S1007中,測試資料會以多種寫入測試分別地以每一實體頁面為單位被寫入至實體區塊的實體頁面中。並且,在步驟S1009中,對應各種寫入測試之壞實體區塊之數目會藉由錯誤檢查與校正程序分別地被識別。
然後,在步驟S1011中,對應各種寫入測試之可用容量會被計算,並且每一實體頁面的資料位元區中的不使用扇區會根據所計算之可用容量來被決定。例如,所計算之可用容量之中的最大可用容量會被識別並且由此決定每一實體頁面的不使用扇區。
綜上所述,本發明範例實施例的資料寫入方法及使用此方法的記憶體控制器與記憶體儲存裝置能夠有效地使用可複寫式非發性記憶體模組之正常儲存空間,由此重新利用已視為不良品可複寫式非發性記憶體模組。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
1000...主機系統
1100...電腦
1102...微處理器
1104...隨機存取記憶體
1106...輸入/輸出裝置
1108...系統匯流排
1110...資料傳輸介面
1202...滑鼠
1204...鍵盤
1206...顯示器
1208...印表機
1212...隨身碟
1214...記憶卡
1216...固態硬碟
1310...數位相機
1312...SD卡
1314...MMC卡
1316...記憶棒
1318...CF卡
1320...嵌入式儲存裝置
100...記憶體儲存裝置
102...連接器
104...記憶體控制器
106...可複寫式非揮發性記憶體模組
202...記憶體管理電路
204...主機介面
206...記憶體介面
208...錯誤校正電路
252...緩衝記憶體
254...電源管理電路
304(0)~304(R)...實體區塊
PP(0)~PP(127)...實體頁面
PS(0)~PS(7)...實體扇區
402...資料區
404...閒置區
406...系統區
408...取代區
W1、W2、W3...指令
SD(0)~SD(6)...扇區資料
510(0)~510(H)...邏輯區塊
LP(0)~LP(127)...邏輯頁面
LS(0)~LS(7)...邏輯扇區
S901、S903、S905、S907...資料寫入的步驟
S1001、S1003、S1005、S1007、S1009、S1011...決定不使用扇區的步驟
圖1A是根據本發明範例實施例所繪示的主機系統與記憶體儲存裝置。
圖1B是根據本發明範例實施例所繪示的電腦、輸入/輸出裝置與記憶體儲存裝置的示意圖。
圖1C是根據本發明另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖2是繪示圖1A所示的記憶體儲存裝置的概要方塊圖。
圖3是根據本發明範例實施例所繪示之實體區塊的資料位元區的示意圖。
圖4是根據本發明範例實施例所繪示之記憶體控制器的概要方塊圖。
圖5是根據本發明範例實施例所繪示之管理可複寫式非揮發性記憶體模組的實體區塊的示意圖。
圖6是根據本發明範例實施例所繪示之程式化指令的範例示意圖。
圖7是根據本發明範例實施例所繪示之邏輯區塊與實體區塊的映射示意圖。
圖8根據本發明範例實施例所繪示之邏輯區塊之邏輯頁面與實體區塊之實體頁面的資料位元區的映射範例示意圖。
圖9是根據本發明範例實施例所繪示之資料寫入方法的流程圖。
圖10是繪示本發明範例實施例之資料寫入方法中決定不使用扇區的流程圖。
S901、S903、S905、S907...資料寫入的步驟
Claims (25)
- 一種資料寫入方法,用於一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組具有一資料區及一備用區,該資料區用以儲存資料,該備用區用以寫入資料並與該資料區替換,該備用區具有多個實體寫入單元,該資料寫入方法包括:將每一該些實體寫入單元劃分為一資料位元區與一冗餘位元區,其中每一該些資料位元區包括多個實體寫入區段;識別每一該些實體寫入單元的該些實體寫入區段之中的至少一實體寫入區段為至少一不使用區段,其中在該些實體寫入單元的其中一個實體寫入單元中的至少一個不使用區段是好的實體寫入區段;以及將多筆區段資料寫入至該些實體寫入單元之中,其中各該實體寫入單元的該至少一不使用區段不被用來寫入該些區段資料。
- 如申請專利範圍第1項所述之資料寫入方法,更包括:測試該些實體寫入單元的該些實體寫入區段以產生一損壞區段分佈表;根據該損壞區段分佈表決定每一該些實體寫入單元的該些實體寫入區段之中的該至少一不使用區段;以及使用該些實體寫入單元的其中一個實體寫入單元來儲存一壞區段資訊,其中該壞區段資訊包括關於每一該些實體寫入單元的該些實體寫入區段之中的該至少一不使用 區段的資訊,其中識別每一該些實體寫入單元的該些實體寫入區段之中的該至少一不使用區段的步驟包括:根據該壞區段資訊來識別每一該些實體寫入單元的該些實體寫入區段之中的該至少一不使用區段。
- 如申請專利範圍第2項所述之資料寫入方法,其中測試該些實體寫入單元的該些實體寫入區段以產生該損壞區段分佈表的步驟包括:將一測試資料寫入至該些實體寫入單元之中的多個測試實體寫入單元的每一該些實體寫入區段中;藉由一錯誤檢查與校正程序識別寫入該測試資料的該些實體寫入區段之中的多個損壞實體寫入區段;以及統計在該些測試實體寫入單元中的該些損壞實體寫入區段的一分佈狀態以產生該損壞區段分佈表。
- 如申請專利範圍第1項所述之資料寫入方法,更包括:配置多個邏輯寫入單元以映射部分的該些實體寫入單元,其中每一該些邏輯寫入單元的一容量等於每一該些實體寫入單元的一容量減去每一該些第一實體寫入單元的該至少一不使用區段的一容量。
- 一種資料寫入方法,用於一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組具有多個實體區塊,每一該些實體區塊具有多個實體頁面,該資料寫 入方法包括:將每一該些實體頁面劃分為一資料位元區與一冗餘位元區,其中每一該些資料位元區包括多個實體扇區;識別每一該些實體頁面的該資料位元區的該些實體扇區之中的至少一個實體扇區為至少一不使用扇區,其中在該些實體扇區的其中一個實體扇區中的至少一個不使用扇區是好的實體扇區;以及以每一該些實體頁面為單位將多個扇區資料寫入至該些實體頁面之中的一第一實體頁面中,其中該第一實體頁面的該些實體扇區之中的該至少一不使用扇區不會被用來寫入該些扇區資料。
- 如申請專利範圍第5項所述之資料寫入方法,更包括:測試該些實體區塊的該些實體頁面以產生一損壞扇區分佈表;根據該損壞扇區分佈表決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區;以及使用該些實體區塊的其中一個實體區塊來儲存一壞扇區資訊,其中該壞扇區資訊包括關於每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區的資訊,其中識別每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區的步驟包括:根據該壞扇區資訊來識別每一該些實體頁面的該資 料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第6項所述之資料寫入方法,其中測試該些實體區塊的該些實體頁面以產生該損壞扇區分佈表的步驟包括:將一測試資料寫入至該些實體頁面之中的多個測試實體頁面的每一該些實體扇區中;藉由一錯誤檢查與校正程序識別寫入該測試資料的該些實體扇區之中的多個損壞實體扇區;以及統計在該些測試實體頁面中的該些損壞實體扇區的一分佈狀態以產生該損壞扇區分佈表。
- 如申請專利範圍第7項所述之資料寫入方法,其中根據該損壞扇區分佈表決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區的步驟包括:根據該損壞扇區分佈表以多種寫入測試分別地以每一該些實體頁面為單位將該測試資料寫入至該些實體區塊的該些實體頁面中,其中在每一該些寫入測試中該測試資料被寫入至該些實體區塊的該些實體頁面的部分實體扇區中;藉由該錯誤檢查與校正程序分別地識別在該些寫入測試中該些實體區塊之中的多個壞實體區塊;分別地根據所識別的該些壞實體區塊計算對應該些寫入測試的多個可用容量;以及根據該些可用容量決定每一該些實體頁面的該些實 體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第8項所述之資料寫入方法,其中根據該些可用容量決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區的步驟包括:根據該些可用容量之中的一最大可用容量來決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第5項所述之資料寫入方法,更包括:配置多個邏輯頁面以映射部分的該些實體頁面,其中該些扇區資料屬於該些邏輯頁面之中的一第一邏輯頁面,該第一邏輯頁面的一容量等於該第一實體頁面的一容量減去該第一實體頁面的該至少一不使用扇區的一容量。
- 如申請專利範圍第5項所述之資料寫入方法,更包括從一主機系統中接收至少一資料以及將該至少一資料整理為該些扇區資料。
- 一種記憶體控制器,用於控制一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組具有多個實體區塊,每一該些實體區塊具有多個實體頁面,該記憶體控制器包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該可複寫式非揮發性記憶體模組:以及 一記憶體管理電路,耦接至該主機介面與該記憶體介面,並且用以將每一該些實體寫入單元劃分為一資料位元區與一冗餘位元區,其中每一該些資料位元區包括多個實體寫入區段,其中該記憶體管理電路更用以識別每一該些實體頁面的該資料位元區的該些實體扇區之中的至少一個實體扇區為至少一不使用扇區,其中在該些實體扇區的其中一個實體扇區中的至少一個不使用扇區是好的實體扇區,其中該記憶體管理電路更用以以每一該些實體頁面為單位將多個扇區資料寫入至該些實體頁面之中的一第一實體頁面中,其中該第一實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區不會被用來寫入該些扇區資料。
- 如申請專利範圍第12項所述之記憶體控制器,其中該記憶體管理電路測試該些實體區塊的該些實體頁面以產生一損壞扇區分佈表,其中該記憶體管理電路根據該損壞扇區分佈表決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區,其中該記憶體管理電路使用該些實體區塊的其中一個實體區塊來儲存一壞扇區資訊,其中該壞扇區資訊包括關於每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區的資訊,其中該記憶體管理電路根據該壞扇區資訊來識別每 一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第13項所述之記憶體控制器,更包括一錯誤檢查與校正電路,其中該記憶體管理電路將一測試資料寫入至該些實體頁面之中的多個測試實體頁面的每一該些實體扇區中,其中該記憶體管理電路透過該錯誤檢查與校正電路識別寫入該測試資料的該些實體扇區之中的多個損壞實體扇區,其中該記憶體管理電路統計在該些測試實體頁面中的該些損壞實體扇區的一分佈狀態以產生該損壞扇區分佈表。
- 如申請專利範圍第14項所述之記憶體控制器,其中該記憶體管理電路用以根據該損壞扇區分佈表以多種寫入測試分別地以每一該些實體頁面為單位將該測試資料寫入至該些實體區塊的該些實體頁面中,其中在每一該些寫入測試中該測試資料被寫入至該些實體區塊的該些實體頁面的部分實體扇區中,其中該記憶體管理電路透過該錯誤檢查與校正電路分別地識別在該些寫入測試中該些實體區塊之中的多個壞實體區塊,其中該記憶體管理電路分別地根據所識別的該些壞實體區塊計算對應該些寫入測試的多個可用容量,其中該記憶體管理電路根據該些可用容量決定每一 該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第15項所述之記憶體控制器,其中該記憶體管理電路根據該些可用容量之中的一最大可用容量來決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第12項所述之記憶體控制器,其中該記憶體管理電路配置多個邏輯頁面以映射部分的該些實體頁面,其中該些扇區資料屬於該些邏輯頁面之中的一第一邏輯頁面,該第一邏輯頁面的一容量等於該第一實體頁面的一容量減去該第一實體頁面的該至少一不使用扇區的一容量。
- 如申請專利範圍第12項所述之記憶體控制器,其中該記憶體管理電路從該主機系統中接收至少一資料並且將該至少一資料整理為該些扇區資料。
- 一種記憶體儲存裝置,包括:一連接器,用以耦接至一主機系統;一可複寫式非揮發性記憶體模組,具有多個實體區塊,其中每一該些實體區塊具有多個實體頁面;以及一記憶體控制器,耦接至該連接器與該可複寫式非揮發性記憶體模組,且用以將每一該些實體寫入單元劃分為一資料位元區與一冗餘位元區,其中每一該些資料位元區包括多個實體寫入區段, 其中該記憶體控制器更用以識別每一該些實體頁面的該資料位元區的該些實體扇區之中的至少一個實體扇區為至少一不使用扇區,其中在該些實體扇區的其中一個實體扇區中的至少一個不使用扇區是好的實體扇區,其中該記憶體控制器更用以以每一該些實體頁面為單位將多個扇區資料寫入至該些實體頁面之中的一第一實體頁面中,其中該第一實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區不會被用來寫入該些扇區資料。
- 如申請專利範圍第19項所述之記憶體儲存裝置,其中該記憶體控制器用以測試該些實體區塊的該些實體頁面以產生一損壞扇區分佈表,其中該記憶體控制器更用以根據該損壞扇區分佈表決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區,其中該記憶體控制器更用以使用該些實體區塊的其中一個實體區塊來儲存一壞扇區資訊,其中該壞扇區資訊包括關於每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區的資訊,其中該記憶體控制器根據該壞扇區資訊來識別每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第20項所述之記憶體儲存裝置,其中該記憶體控制器包括一錯誤檢查與校正電路, 其中該記憶體控制器將一測試資料寫入至該些實體頁面之中的多個測試實體頁面的每一該些實體扇區中,其中該記憶體控制器透過該錯誤檢查與校正電路識別寫入該測試資料的該些實體扇區之中的多個損壞實體扇區,其中該記憶體控制器統計在該些測試實體頁面中的該些損壞實體扇區的一分佈狀態以產生該損壞扇區分佈表。
- 如申請專利範圍第21項所述之記憶體儲存裝置,其中該記憶體控制器根據該損壞扇區分佈表以多種寫入測試分別地以每一該些實體頁面為單位將該測試資料寫入至該些實體區塊的該些實體頁面中,其中在每一該些寫入測試中該測試資料被寫入至該些實體區塊的該些實體頁面的部分實體扇區中,其中該記憶體控制器透過該錯誤檢查與校正電路分別地識別在該些寫入測試中該些實體區塊之中的多個壞實體區塊,其中該記憶體控制器分別地根據所識別的該些壞實體區塊計算對應該些寫入測試的多個可用容量,其中該記憶體控制器根據該些可用容量決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第22項所述之記憶體儲存裝置,其中該記憶體控制器根據該些可用容量之中的一最大 可用容量來決定每一該些實體頁面的該資料位元區的該些實體扇區之中的該至少一不使用扇區。
- 如申請專利範圍第19項所述之記憶體儲存裝置,其中該記憶體控制器配置多個邏輯頁面以映射部分的該些實體頁面,其中該些扇區資料屬於該些邏輯頁面之中的一第一邏輯頁面,該第一邏輯頁面的一容量等於該第一實體頁面的一容量減去該第一實體頁面的該至少一不使用扇區的一容量。
- 如申請專利範圍第19項所述之記憶體儲存裝置,其中該記憶體控制器從該主機系統中接收至少一資料並且將該至少一資料整理為該些扇區資料。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100101974A TWI459393B (zh) | 2011-01-19 | 2011-01-19 | 用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置 |
US13/091,155 US8667348B2 (en) | 2011-01-19 | 2011-04-21 | Data writing method for non-volatile memory module and memory controller and memory storage apparatus using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW100101974A TWI459393B (zh) | 2011-01-19 | 2011-01-19 | 用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201232550A TW201232550A (en) | 2012-08-01 |
TWI459393B true TWI459393B (zh) | 2014-11-01 |
Family
ID=46491678
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW100101974A TWI459393B (zh) | 2011-01-19 | 2011-01-19 | 用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8667348B2 (zh) |
TW (1) | TWI459393B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI550625B (zh) * | 2015-05-26 | 2016-09-21 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI443512B (zh) * | 2011-07-13 | 2014-07-01 | Phison Electronics Corp | 區塊管理方法、記憶體控制器與記憶體儲存裝置 |
JP5965076B2 (ja) * | 2012-09-25 | 2016-08-03 | ヒューレット−パッカード デベロップメント カンパニー エル.ピー.Hewlett‐Packard Development Company, L.P. | 訂正不能メモリエラー処理方法及びその可読媒体 |
US8947961B2 (en) * | 2013-03-12 | 2015-02-03 | Macronix International Co., Ltd. | Management of non-volatile memory |
US9513815B2 (en) * | 2013-12-19 | 2016-12-06 | Macronix International Co., Ltd. | Memory management based on usage specifications |
JP6102800B2 (ja) * | 2014-03-04 | 2017-03-29 | ソニー株式会社 | メモリコントローラ、記憶装置、情報処理システム、および、それらにおける制御方法。 |
CN107025941A (zh) * | 2016-01-29 | 2017-08-08 | 瑞昱半导体股份有限公司 | 固态硬盘控制电路 |
TWI689816B (zh) * | 2018-03-06 | 2020-04-01 | 群聯電子股份有限公司 | 區塊管理方法、記憶體控制電路單元與記憶體儲存裝置 |
JP2023001573A (ja) * | 2021-06-21 | 2023-01-06 | キオクシア株式会社 | メモリシステムおよび制御方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070109856A1 (en) * | 2005-11-08 | 2007-05-17 | Stmicroelectronics S.R.I | Method of managing fails in a non-volatile memory device and relative memory device |
US20080052015A1 (en) * | 2006-04-06 | 2008-02-28 | Advantest Corporation | Test apparatus and test method |
US20090040825A1 (en) * | 2007-08-08 | 2009-02-12 | Atmel Corporation | Novel row redundancy scheme in a multichip integrated memory |
US20090137070A1 (en) * | 2007-11-23 | 2009-05-28 | Kingston Technology Company | Manufacturing Method for Partially-Good Memory Modules with Defect Table in EEPROM |
US20090287956A1 (en) * | 2008-05-16 | 2009-11-19 | David Flynn | Apparatus, system, and method for detecting and replacing failed data storage |
US20100107022A1 (en) * | 2008-10-26 | 2010-04-29 | Aldo Bottelli | Bad page marking strategy for fast readout in memory |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW463175B (en) * | 2000-03-01 | 2001-11-11 | Winbond Electronics Corp | Memory processing method and system |
US7162668B2 (en) * | 2001-04-19 | 2007-01-09 | Micron Technology, Inc. | Memory with element redundancy |
KR101095639B1 (ko) * | 2006-12-26 | 2011-12-19 | 가부시키가이샤 어드밴티스트 | 시험 장치 및 시험 방법 |
US7949913B2 (en) * | 2007-08-14 | 2011-05-24 | Dell Products L.P. | Method for creating a memory defect map and optimizing performance using the memory defect map |
US20110002169A1 (en) * | 2009-07-06 | 2011-01-06 | Yan Li | Bad Column Management with Bit Information in Non-Volatile Memory Systems |
US8495423B2 (en) * | 2009-08-11 | 2013-07-23 | International Business Machines Corporation | Flash-based memory system with robust backup and restart features and removable modules |
-
2011
- 2011-01-19 TW TW100101974A patent/TWI459393B/zh active
- 2011-04-21 US US13/091,155 patent/US8667348B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070109856A1 (en) * | 2005-11-08 | 2007-05-17 | Stmicroelectronics S.R.I | Method of managing fails in a non-volatile memory device and relative memory device |
US20080052015A1 (en) * | 2006-04-06 | 2008-02-28 | Advantest Corporation | Test apparatus and test method |
US20090040825A1 (en) * | 2007-08-08 | 2009-02-12 | Atmel Corporation | Novel row redundancy scheme in a multichip integrated memory |
US20090137070A1 (en) * | 2007-11-23 | 2009-05-28 | Kingston Technology Company | Manufacturing Method for Partially-Good Memory Modules with Defect Table in EEPROM |
US20090287956A1 (en) * | 2008-05-16 | 2009-11-19 | David Flynn | Apparatus, system, and method for detecting and replacing failed data storage |
US20100107022A1 (en) * | 2008-10-26 | 2010-04-29 | Aldo Bottelli | Bad page marking strategy for fast readout in memory |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI550625B (zh) * | 2015-05-26 | 2016-09-21 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
Also Published As
Publication number | Publication date |
---|---|
US20120185740A1 (en) | 2012-07-19 |
TW201232550A (en) | 2012-08-01 |
US8667348B2 (en) | 2014-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI527037B (zh) | 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI459393B (zh) | 用於非揮發性記憶體的資料寫入方法、控制器與儲存裝置 | |
US8892814B2 (en) | Data storing method, and memory controller and memory storage apparatus using the same | |
US9201785B2 (en) | Data writing method, memory controller and memory storage apparatus | |
TWI443512B (zh) | 區塊管理方法、記憶體控制器與記憶體儲存裝置 | |
TWI490871B (zh) | 防止讀取干擾的方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI480733B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI479314B (zh) | 系統資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
TWI423026B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI442230B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI476590B (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
US10564862B2 (en) | Wear leveling method, memory control circuit unit and memory storage apparatus | |
US9720609B1 (en) | Data protecting method, memory control circuit unit and memory storage device | |
TWI548991B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TW201606503A (zh) | 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置 | |
CN103678162B (zh) | 系统数据储存方法、存储器控制器与存储器储存装置 | |
US8966344B2 (en) | Data protecting method, memory controller and memory storage device | |
TWI509615B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
TWI616807B (zh) | 資料寫入方法以及儲存控制器 | |
US9778862B2 (en) | Data storing method for preventing data losing during flush operation, memory control circuit unit and memory storage apparatus | |
TWI501244B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TW201413450A (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
CN113138720B (zh) | 数据存储方法、存储器控制电路单元以及存储器存储装置 | |
US20210073117A1 (en) | Data managing method, memory controlling circuit unit and memory storage device | |
CN102623052B (zh) | 用于非易失性存储器的数据写入方法与系统及控制器 |