TWI512750B - 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 - Google Patents
資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 Download PDFInfo
- Publication number
- TWI512750B TWI512750B TW103125990A TW103125990A TWI512750B TW I512750 B TWI512750 B TW I512750B TW 103125990 A TW103125990 A TW 103125990A TW 103125990 A TW103125990 A TW 103125990A TW I512750 B TWI512750 B TW I512750B
- Authority
- TW
- Taiwan
- Prior art keywords
- unit
- entity
- stylized
- data
- bit area
- Prior art date
Links
Classifications
-
- 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
- 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/1004—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
-
- 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/1068—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 in sector programmable memories, e.g. flash disk
-
- 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/1072—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 in multilevel memories
-
- 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/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Security & Cryptography (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明是有關於一種資料儲存方法,且特別是有關於一種用於可複寫式非揮發性記憶體的資料儲存方法及使用此方法的記憶體控制電路單元與記憶體儲存裝置。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,因此,近年可複寫式非揮發性記憶體產業成為電子產業中相當熱門的一環。例如,以快閃記憶體作為儲存媒體的固態硬碟(Solid-state drive)已廣泛應用作為電腦主機的硬碟,以提升電腦的存取效能。
由於儲存在可複寫式非揮發性記憶體的資料可能會因各種因素(例如,記憶體胞的漏電、程式化失敗、損毀等)而產生錯誤位元,因此,在記憶體儲存系統中一般會配置錯誤檢查與校正電
路並為所儲存之資料產生錯誤檢查與校正碼以確保資料的正確性。然而,當資料中的錯誤位元數目超過錯誤檢查與校正電路所能偵測與校正的錯誤位元數時,含有錯誤位元的資料就無法被校正,而造成資料遺失。一般來說,當此情況發生時,可根據儲存於可複寫式非揮發性記憶體中對應於所欲校正之資料的同位資訊(Parity)來校正此資料。傳統上,由於此些同位資訊所在的實體程式化單元的資料位元區與冗餘位元區中的資料亦是透過其他受保護的資料所計算出來的,亦即,無法透過冗餘位元區中的資訊得知此些實體程式化單元即是同位資訊所在的實體程式化單元。因此,傳統的方法會將同位資訊放置於固定的位置上。
例如,假設記憶體儲存系統具有八個記憶體晶粒,則使用其中最後一個記憶體晶粒來儲存同位資訊。倘若來自主機系統的資料僅需寫入一個實體程式化單元時,則必須要將其中間的六個記憶體晶粒中相對應的實體程式化單元填上虛構資料(dummy data),以產生欲存放於第八個記憶體晶粒中相對應之實體程式化單元中的同位資訊。也就是說,此種作法將造成記憶體儲存裝置中儲存空間的浪費。基此,如何在避免記憶體儲存裝置中儲存空間的浪費下增加並提升錯誤校正的更正能力與效率是此領域技術人員所致力的目標。
本發明提供一種本發明提供一種資料儲存方法、記憶體
控制電路單元及記憶體儲存裝置,其可以有效地避免記憶體儲存裝置中儲存空間的浪費並且當無法由錯誤檢查與校正碼校正資料的錯誤位元時,可藉由所儲存之同位資訊來更正此資料的錯誤位元,由此提升錯誤校正的能力。
本發明的一範例實施例提供一種用於可複寫式非揮發性記憶體模組的資料儲存方法,所述可複寫式非揮發性記憶體模組包括多個實體抹除單元,且每一實體抹除單元包括多個實體程式化單元,以及其中每一實體程式化單元包括資料位元區與冗餘位元區,本資料儲存方法包括:依據第一資料產生一同位資訊;將所述資料程式化至所述實體程式化單元之中的第一實體程式化單元中;以及將所述同位資訊程式化至所述實體程式化單元之中的至少一第二實體程式化單元中,其中所述至少一第二實體程式化單元是排列於所述第一實體程式化單元之後。在上述將所述資料程式化至所述實體程式化單元之中的所述第一實體程式化單元的步驟包括:將至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區,其中所述至少一標記指示所述同位資訊被程式化至所述至少一第二實體程式化單元中。
在本發明的一實施例中,上述第一資料包括一使用者資料與對應所述使用者資料的一管理資訊,其中所述使用者資料被程式化至所述第一實體程式化單元之中的資料位元區,其中對應所述使用者資料的所述管理資訊被程式化至所述第一實體程式化單元之中的冗餘位元區。
在本發明的一實施例中,上述第一資料包括一使用者資料、對應所述使用者資料的一管理資訊以及對應所述使用者資料的一錯誤檢查與校正碼。其中所述錯誤檢查與校正碼是根據所述使用者資料所產生的。其中所述使用者資料被程式化至所述第一實體程式化單元之中的資料位元區,其中對應所述使用者資料的所述管理資訊被程式化至所述第一實體程式化單元之中的冗餘位元區,其中對應所述使用者資料的所述錯誤檢查與校正碼被程式化至所述第一實體程式化單元之中的冗餘位元區。
在本發明的一實施例中,上述將所述至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區的步驟包括:將第一標記程式化至所述第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,其中所述至少一第二實體程式化單元是排列於所述第一實體程式化單元之中的所述最後一個實體程式化單元之後,其中所述第一標記指示所述至少一第二實體程式化單元儲存所述同位資訊;以及將第二標記程式化至所述實體程式化單元之中的至少一第三實體程式化單元的冗餘位元區,其中所述至少一第三實體程式化單元是排列於所述至少一第二實體程式化單元之後,其中所述第二標記指示所述至少一第二實體程式化單元地儲存所述同位資訊。
在本發明的一實施例中,上述將所述至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區的步驟更包括:建立一同位資訊位址對應表;以及將一第三標記記錄於所述同位資
訊位址對應表,其中所述第三標記指示所述至少一第二實體程式化單元儲存所述同位資訊。
在本發明的一實施例中,上述將所述至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區的步驟包括:計數所述第一實體程式化單元的個數;以及根據所述第一實體程式化單元的個數,在每一所述第一實體程式化單元的冗餘位元區中記錄一標記值,其中記錄在所述第一實體程式化單元中的所述標記值依據所述第一實體程式化單元的排列依序地遞減。
在本發明的一實施例中,上述標記值之中的第一標記值為1,且所述第一標記值被記錄在所述第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區中,且所述至少一第二實體程式化單元是排列在所述第一實體程式化單元之中的所述最後一個實體程式化單元之後,其中所述標記值之中的第二標記值為2,且所述第二標記值被記錄在所述第一實體程式化單元之中相鄰且排列在所述最後一個實體程式化單元之前的實體程式化單元的冗餘位元區中,其中所述標記值之中的第三標記值為3,且所述第三標記值被記錄在所述第一實體程式化單元之中相鄰且排列在記錄所述第二標記值的實體程式化單元之前的實體程式化單元的冗餘位元區中。
在本發明的一實施例中,上述第一資料包括一第二資料以及一錯誤檢查與校正碼,並且上述資料儲存方法,更包括:當無法藉由使用所述錯誤檢查與校正碼來校正所述第二資料時,根
據所述至少一標記獲得記錄所述同位資訊的所述至少一第二實體程式化單元的位址,從所述至少一第二實體程式化單元中讀取所述同位資訊以及依據所讀取的所述同位資訊來校正所述第二資料。
本發明的一範例實施例提供一種用於可複寫式非揮發性記憶體模組的資料儲存方法,所述可複寫式非揮發性記憶體模組包括多個實體抹除單元,且每一實體抹除單元包括多個實體程式化單元,以及其中每一實體程式化單元包括資料位元區與冗餘位元區,本資料儲存方法包括:建立一同位資訊位址對應表;依據第一資料產生一同位資訊;將所述資料程式化至所述實體程式化單元之中的第一實體程式化單元中;將所述同位資訊程式化至所述實體程式化單元之中的至少一第二實體程式化單元中,以及將至少一標記記錄於所述同位資訊位址對應表,其中所述標記指示所述同位資訊被程式化至所述至少一第二實體程式化單元中。
本發明的一範例實施例提出一種用於控制可複寫式非揮發性記憶體模組的記憶體控制電路單元,其中所述可複寫式非揮發性記憶體模組包括多個實體抹除單元,且每一實體抹除單元包括多個實體程式化單元,以及其中每一實體程式化單元包括資料位元區與冗餘位元區。此記憶體控制電路單元包括主機介面、記憶體介面與記憶體管理電路。主機介面用以耦接至主機系統,記憶體介面用以耦接至可複寫式非揮發性記憶體模組,以及記憶體管理電路耦接至主機介面與記憶體介面。記憶體管理電路用以依
據第一資料產生一同位資訊並且將所述第一資料程式化至所述實體程式化單元之中的第一實體程式化單元中,其中所述記憶體管理電路更用以將所述同位資訊程式化至所述實體程式化單元之中的至少一第二實體程式化單元中,其中所述至少一第二實體程式化單元是排列於所述第一實體程式化單元之後。在上述將所述資料程式化至所述實體程式化單元之中的所述第一實體程式化單元的操作中,記憶體管理電路將至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區,其中所述至少一標記指示所述同位資訊被程式化至所述至少一第二實體程式化單元中。
在本發明的一實施例中,上述第一資料包括一使用者資料與對應所述使用者資料的一管理資訊,其中所述使用者資料被程式化至所述第一實體程式化單元之中的資料位元區,其中對應所述使用者資料的所述管理資訊被程式化至所述第一實體程式化單元之中的冗餘位元區。
在本發明的一實施例中,上述第一資料包括一使用者資料、對應所述使用者資料的一管理資訊以及對應所述使用者資料的一錯誤檢查與校正碼。其中所述錯誤檢查與校正碼是根據所述使用者資料所產生的。其中所述使用者資料被程式化至所述第一實體程式化單元之中的資料位元區,其中對應所述使用者資料的所述管理資訊被程式化至所述第一實體程式化單元之中的冗餘位元區,其中對應所述使用者資料的所述錯誤檢查與校正碼被程式化至所述第一實體程式化單元之中的冗餘位元區。
在本發明的一實施例中,上述將所述至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區的操作中,記憶體管理電路將第一標記程式化至所述第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,其中所述至少一第二實體程式化單元是排列於所述第一實體程式化單元之中的所述最後一個實體程式化單元之後,其中所述第一標記指示所述至少一第二實體程式化單元儲存所述同位資訊,其中記憶體管理電路更用以將第二標記程式化至所述實體程式化單元之中的至少一第三實體程式化單元的冗餘位元區,其中所述第三實體程式化單元是排列於所述至少一第二實體程式化單元之後,並且所述第二標記指示所述至少一第二實體程式化單元儲存所述同位資訊。
本發明的一範例實施例提出一種記憶體儲存裝置,其包括連接介面單元、可複寫式非揮發性記憶體模組與記憶體控制電路單元。連接介面單元用以耦接至主機系統。可複寫式非揮發性記憶體模組包括多個實體抹除單元,且每一實體抹除單元包括多個實體程式化單元,其中每一實體程式化單元包括資料位元區與冗餘位元區。記憶體控制電路單元耦接至連接介面單元與可複寫式非揮發性記憶體模組,並且用以依據第一資料產生一同位資訊,並且將所述第一資料程式化至所述實體程式化單元之中的一第一實體程式化單元中。此外,記憶體控制電路單元更用以將所述同位資訊程式化至所述實體程式化單元之中的至少一第二實體程式化單元中,其中所述至少一第二實體程式化單元是排列於所
述第一實體程式化單元之後。在上述將所述第一資料程式化至所述實體程式化單元之中的所述第一實體程式化單元的操作中,記憶體控制電路單元將至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區,其中所述至少一標記指示所述同位資訊被程式化至所述至少一第二實體程式化單元中。
在本發明的一實施例中,上述第一資料包括一使用者資料與對應所述使用者資料的一管理資訊,其中所述使用者資料被程式化至所述第一實體程式化單元之中的資料位元區,其中對應所述使用者資料的所述管理資訊被程式化至所述第一實體程式化單元之中的冗餘位元區。
在本發明的一實施例中,上述第一資料包括一使用者資料、對應所述使用者資料的一管理資訊以及對應所述使用者資料的一錯誤檢查與校正碼。其中所述錯誤檢查與校正碼是根據所述使用者資料所產生的。其中所述使用者資料被程式化至所述第一實體程式化單元之中的資料位元區,其中對應所述使用者資料的所述管理資訊被程式化至所述第一實體程式化單元之中的冗餘位元區,其中對應所述使用者資料的所述錯誤檢查與校正碼被程式化至所述第一實體程式化單元之中的冗餘位元區。
在本發明的一實施例中,上述將所述至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區的操作中,記憶體控制電路單元將一第一標記程式化至所述第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,其中所述至少一第
二實體程式化單元是排列於所述第一實體程式化單元之中的所述最後一個實體程式化單元之後,其中所述第一標記指示所述至少一第二實體程式化單元儲存所述同位資訊,其中記憶體控制電路單元更用以將第二標記程式化至所述實體程式化單元之中的至少一第三實體程式化單元的冗餘位元區,其中所述至少一第三實體程式化單元是排列於所述至少一第二實體程式化單元之後,並且所述第二標記指示所述至少一第二實體程式化單元儲存所述同位資訊。
在本發明的一實施例中,上述將所述至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區的操作中,記憶體控制電路單元建立一同位資訊位址對應表並且將第三標記記錄於所述同位資訊位址對應表,其中所述第三標記指示所述至少一第二實體程式化單元儲存所述同位資訊。
在本發明的一實施例中,上述將所述至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區的操作中,記憶體控制電路單元計數所述第一實體程式化單元的個數,並且根據所述第一實體程式化單元的個數,在每一第一實體程式化單元的冗餘位元區中記錄一標記值,其中記錄在所述第一實體程式化單元中的所述標記值依據所述第一實體程式化單元的排列依序地遞減。
在本發明的一實施例中,上述標記值之中的第一標記值為1,且所述第一標記值被記錄在所述第一實體程式化單元之中的
最後一個實體程式化單元的冗餘位元區中,且所述至少一第二實體程式化單元是排列在所述第一實體程式化單元之中的所述最後一個實體程式化單元之後。其中標記值之中的第二標記值為2,且所述第二標記值被記錄在所述第一實體程式化單元之中相鄰且排列在所述最後一個實體程式化單元之前的實體程式化單元的冗餘位元區中。其中所述標記值之中的第三標記值為3,且所述第三標記值被記錄在所述第一實體程式化單元之中相鄰且排列在記錄所述第二標記值的實體程式化單元之前的實體程式化單元的冗餘位元區中。
在本發明的一實施例中,上述第一資料包括一第二資料以及一錯誤檢查與校正碼,當無法藉由使用所述錯誤檢查與校正碼來校正所述第二資料時,記憶體控制電路單元更用以根據所述至少一標記獲得記錄所述同位資訊的所述至少一第二實體程式化單元的位址,從所述至少一第二實體程式化單元中讀取所述同位資訊以及依據所讀取的所述同位資訊來校正所述第二資料。
基於上述,當從可複寫式非揮發性記憶體模組中讀取的資料位元存在錯誤時,本發明的一範例實施例可以根據記錄於實體程式化單元中的至少一標記,快速地獲得同位資訊所在的實體程式化單元位址。據此,本發明範例實施例提出的資料儲存方法、記憶體控制電路單元與記憶體儲存裝置可有效地增加錯誤校正的更正能力與效率。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉
實施例,並配合所附圖式作詳細說明如下。
1000‧‧‧主機系統
1100‧‧‧電腦
1102‧‧‧微處理器
1104‧‧‧隨機存取記憶體(RAM)
1106‧‧‧輸入/輸出裝置
1108‧‧‧系統匯流排
1110‧‧‧資料傳輸介面
1202‧‧‧滑鼠
1204‧‧‧鍵盤
1206‧‧‧顯示器
1208‧‧‧印表機
1212‧‧‧隨身碟
1214‧‧‧記憶卡
1216‧‧‧固態硬碟
1310‧‧‧數位相機
1312‧‧‧SD卡
1314‧‧‧MMC卡
1316‧‧‧記憶棒
1318‧‧‧CF卡
1320‧‧‧嵌入式儲存裝置
100‧‧‧記憶體儲存裝置
102‧‧‧連接介面單元
104‧‧‧記憶體控制電路單元
106‧‧‧可複寫式非揮發性記憶體模組
410(0)-410(N)‧‧‧實體抹除單元
202‧‧‧記憶體管理電路
204‧‧‧主機介面
206‧‧‧記憶體介面
208‧‧‧緩衝記憶體
210‧‧‧電源管理電路
212‧‧‧錯誤檢查與校正電路
502‧‧‧資料區
504‧‧‧閒置區
506‧‧‧系統區
508‧‧‧取代區
510(0)-510(D)‧‧‧邏輯位址
520‧‧‧資料位元區
540‧‧‧冗餘位元區
542‧‧‧第一記錄區
544‧‧‧第二記錄區
800、110‧‧‧同位資訊位址對應表
602、702、802‧‧‧第一實體程式化單元
604、704、804‧‧‧第二實體程式化單元
606、706、806‧‧‧第三實體程式化單元
808‧‧‧第四實體程式化單元
810‧‧‧第五實體程式化單元
812‧‧‧第六實體程式化單元
900‧‧‧排序
S701、S703、S705、S707、S1201、S1203、S1205、S1207、S1209‧‧‧資料儲存方法的步驟
圖1A是根據本發明第一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖1B是根據本發明之第一範例實施例所繪示的電腦、輸入/輸出裝置與記憶體儲存裝置的示意圖。
圖1C是根據本發明第一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖2是繪示圖1A所示的記憶體儲存裝置的概要方塊圖。
圖3是根據本發明第一範例實施例所繪示之記憶體控制電路單元的概要方塊圖。
圖4A與圖4B是根據第一範例實施例所繪示之管理實體抹除單元的範例示意圖。
圖5A至圖5B是根據本發明第一範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼以及用以記錄同位資訊的至少一標記寫入至實體程式化單元的範例。
圖6是根據本發明第一範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼以及用以記錄同位資訊的至少一標記寫入至實體程式化單元的另一個範例。
圖7是根據本發明的第一範例實施例所繪示的資料儲存方法
的流程圖。
圖8A至圖8B是根據本發明第二範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼以及用以記錄同位資訊的至少一標記寫入至實體程式化單元的範例。
圖9是根據本發明第三範例實施例所繪示的根據寫入資料欲寫入之每一實體程式化單元的個數將其排列與記錄標記值的範例。
圖10是根據本發明第三範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼與用以記錄同位資訊的至少一標記寫入至實體程式化單元的另一範例。
圖11是根據本發明第四範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼程式化至實體程式化單元以及將用以記錄同位資訊的至少一標記記錄於同位資訊位址對應表的範例。
圖12是根據本發明的第四範例實施例所繪示的資料儲存方法的流程圖。
[第一範例實施例]
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫
入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖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可以是數位相機、攝影機、通信裝置、音訊播放器或視訊播放器等系統。例如,在主機系統為圖1C中的數位相機
(攝影機)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亦可以是符合並列先進附件(Parallel Advanced Technology Attachment,PATA)標準、電氣和電子工程師協會(Institute of Electrical and Electronic Engineers,IEEE)1394標準、高速周邊零件連接介面(Peripheral Component Interconnect Express,PCI Express)標準、通用序列匯流排(Universal Serial Bus,USB)標準、超高速一代(Ultra High Speed-I,UHS-I)介面標準、超高速二代(Ultra High Speed-II,UHS-II)介面標準、安全數位(Secure Digital,SD)介面標準、記憶棒(Memory Stick,MS)介面標準、多媒體儲存卡(Multi Media Card,MMC)介面標準、小型快閃(Compact Flash,CF)介面標準、整合式驅動電子介面(Integrated Device Electronics,IDE)標準或其他適合
的標準。在本範例實施例中,連接器可與記憶體控制電路單元封裝在一個晶片中,或佈設於一包含記憶體控制電路單元之晶片外。
記憶體控制電路單元104用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統1000的指令在可複寫式非揮發性記憶體模組106中進行資料的寫入、讀取、抹除與合併等運作。
可複寫式非揮發性記憶體模組106是耦接至記憶體控制電路單元104,並且用以儲存主機系統1000所寫入之資料。可複寫式非揮發性記憶體模組106具有實體抹除單元410(0)-410(R)。例如,實體抹除單元410(0)-410(R)可屬於同一個記憶體晶粒(die)或者屬於不同的記憶體晶粒。每一實體抹除單元分別具有複數個實體程式化單元,其中屬於同一個實體抹除單元之實體程式化單元可被獨立地寫入且被同時地抹除。此外,每一實體抹除單元可由64個實體程式化單元、256個實體程式化單元或其他任意個實體程式化單元所組成。
更詳細來說,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。每一實體程式化單元通常包括資料位元區與冗餘位元區。資料位元區包含多個實體存取位址用以儲存使用者的資料,而冗餘位元區用以儲存系統的資料(例如,控制資訊與錯誤更正碼)。在本範例實施例中,每一個實體程式化單元的資料位元區
中會包含4個實體存取位址,且一個實體存取位址的大小為512位元組(byte)。然而,在其他範例實施例中,資料位元區中也可包含數目更多或更少的實體存取位址,本發明並不限制實體存取位址的大小以及個數。例如,在一範例實施例中,實體抹除單元為實體抹除單元,並且實體程式化單元為實體程式化單元或實體扇區,但本發明不以此為限。
在本範例實施例中,可複寫式非揮發性記憶體模組106為多階記憶胞(Multi Level Cell,MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個位元資料的快閃記憶體模組)。然而,本發明不限於此,可複寫式非揮發性記憶體模組106亦可是單階記憶胞(Single Level Cell,SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個位元資料的快閃記憶體模組)、複數階記憶胞(Trinary Level Cell,TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個位元資料的快閃記憶體模組)、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
圖3是根據本發明第一範例實施例所繪示之記憶體控制電路單元的概要方塊圖。
請參照圖3,記憶體控制電路單元104包括記憶體管理電路202、主機介面204與記憶體介面206。
記憶體管理電路202用以控制記憶體控制電路單元104的整體運作。具體來說,記憶體管理電路202具有多個控制指令,並且在記憶體儲存裝置100運作時,此些控制指令會被執行以進
行資料的寫入、讀取與抹除等運作。
在本範例實施例中,記憶體管理電路202的控制指令是以韌體型式來實作。例如,記憶體管理電路202具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置100運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在本發明另一範例實施例中,記憶體管理電路202的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組106的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路202具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有驅動碼,並且當記憶體控制電路單元104被致能時,微處理器單元會先執行此驅動碼段來將儲存於可複寫式非揮發性記憶體模組106中之控制指令載入至記憶體管理電路202的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。
主機介面204是耦接至記憶體管理電路202並且用以耦接至連接介面單元102,以接收與識別主機系統1000所傳送的指令與資料。也就是說,主機系統1000所傳送的指令與資料會透過主機介面204來傳送至記憶體管理電路202。在本範例實施例中,主機介面204是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面204亦可以是相容於PATA標準、IEEE 1394
標準、PCI Express標準、USB標準、UHS-I介面標準、UHS-II介面標準、SD標準、MS標準、MMC標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面206是耦接至記憶體管理電路202並且用以存取可複寫式非揮發性記憶體模組106。也就是說,欲寫入至可複寫式非揮發性記憶體模組106的資料會經由記憶體介面206轉換為可複寫式非揮發性記憶體模組106所能接受的格式。
在本發明一範例實施例中,記憶體控制電路單元104還包括緩衝記憶體208、電源管理電路210與錯誤檢查與校正電路212。
緩衝記憶體208是耦接至記憶體管理電路202並且用以暫存來自於主機系統1000的資料與指令或來自於可複寫式非揮發性記憶體模組106的資料。
電源管理電路210是耦接至記憶體管理電路202並且用以控制記憶體儲存裝置100的電源。
錯誤檢查與校正電路212是耦接至記憶體管理電路202並且用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,當記憶體管理電路202從主機系統1000中接收到寫入指令時,錯誤檢查與校正電路212會為對應此寫入指令的資料產生對應的錯誤檢查與校正碼(Error Checking and Correcting Code,ECC Code),並且記憶體管理電路202會將對應此寫入指令的資料與對應的錯誤檢查與校正碼寫入至可複寫式非揮發性記憶體模組106
中。之後,當記憶體管理電路202從可複寫式非揮發性記憶體模組106中讀取資料時會同時讀取此資料對應的錯誤檢查與校正碼,並且錯誤檢查與校正電路212會依據此錯誤檢查與校正碼對所讀取的資料執行錯誤檢查與校正程序。
圖4A與圖4B是根據第一範例實施例所繪示之管理實體抹除單元的範例示意圖。
必須瞭解的是,在此描述可複寫式非揮發性記憶體模組106之實體抹除單元的運作時,以“提取”、“分組”、“劃分”、“關聯”等詞來操作實體抹除單元是邏輯上的概念。也就是說,可複寫式非揮發性記憶體模組之實體抹除單元的實際位置並未更動,而是邏輯上對可複寫式非揮發性記憶體模組的實體抹除單元進行操作。
請參照圖4A,記憶體控制電路單元104(或記憶體管理電路202)會將實體抹除單元410(0)~410-(N)邏輯地分組為資料區502、閒置區504、系統區506與取代區508。
邏輯上屬於資料區502與閒置區504的實體抹除單元是用以儲存來自於主機系統1000的資料。具體來說,資料區502的實體抹除單元是被視為已儲存資料的實體抹除單元,而閒置區504的實體抹除單元是用以替換資料區502的實體抹除單元。也就是說,當從主機系統1000接收到寫入指令與欲寫入之資料時,記憶體管理電路202會從閒置區504中提取實體抹除單元,並且將資料寫入至所提取的實體抹除單元中,以替換資料區502的實體抹
除單元。
邏輯上屬於系統區506的實體抹除單元是用以記錄系統資料。例如,系統資料包括關於可複寫式非揮發性記憶體模組的製造商與型號、可複寫式非揮發性記憶體模組的實體抹除單元數、每一實體抹除單元的實體程式化單元數等。
邏輯上屬於取代區508中的實體抹除單元是用於壞實體抹除單元取代程序,以取代損壞的實體抹除單元。具體來說,倘若取代區508中仍存有正常之實體抹除單元並且資料區502的實體抹除單元損壞時,記憶體管理電路202會從取代區508中提取正常的實體抹除單元來更換損壞的實體抹除單元。
特別是,資料區502、閒置區504、系統區506與取代區508之實體抹除單元的數量會依據不同的記憶體規格而有所不同。此外,必須瞭解的是,在記憶體儲存裝置100的運作中,實體抹除單元關聯至資料區502、閒置區504、系統區506與取代區508的分組關係會動態地變動。例如,當閒置區504中的實體抹除單元損壞而被取代區508的實體抹除單元取代時,則原本取代區508的實體抹除單元會被關聯至閒置區504。
請參照圖4B,如上所述,資料區502、閒置區504的實體抹除單元是以輪替方式來儲存主機系統1000所寫入之資料。在本範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)會配置邏輯位址510(0)~510(D)給主機系統1000,以映射至資料區502中部份的實體抹除單元414(0)~410(F-1),以利於在以上述輪
替方式來儲存資料之實體抹除單元中進行資料存取。特別是,主機系統1000會透過邏輯位址510(0)-510(D)來存取資料區502中的資料。此外,記憶體控制電路單元104(或記憶體管理電路202)會建立邏輯位址-實體抹除單元映射表(logical address-physical erasing unit mapping table),以記錄邏輯位址與實體抹除單元之間的映射關係。此邏輯位址-實體抹除單元映射表還可以例如是記錄邏輯位址與實體程式化單元、邏輯程式化單元與實體程式化單元及/或邏輯程式化單元與實體抹除單元之間的映射關係等各種邏輯與實體的對應關係,本發明不加以限制。
圖5A至圖5B是根據本發明第一範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼以及用以記錄同位資訊的至少一標記寫入至實體程式化單元的範例。
請參照圖5A,在本範例實施例中,每一實體程式化單元會包括資料位元區520與冗餘位元區540。其中,冗餘位元區540包括第一記錄區542及第二記錄區544。舉例來說,當一個實體程式化單元的容量為8千位元組(Kilobyte,KB)時,冗餘位元區540的容量有22位元組。
具體而言,當主機系統1000傳送寫入指令與對應此寫入指令的第一使用者資料D1給記憶體儲存裝置100時,記憶體控制電路單元104(或記憶體管理電路202)會判斷第一使用者資料D1的大小,並且根據第一使用者資料D1的大小獲得寫入此第一使用者資料D1所需之實體程式化單元的數目。在此,假設需兩個實體
程式化單元來寫入此第一使用者資料D1。因此,如圖5A所示,記憶體控制電路單元104(或記憶體管理電路202)會產生對應第一使用者資料D1-1與D1-2的錯誤檢查與校正碼ECC1-1與ECC1-2以及對應第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2(例如,實體程式化單元的好壞標記等),並且自閒置區504提取實體抹除單元410(F)作為替換實體抹除單元。之後,記憶體控制電路單元104(或記憶體管理電路202)會將此些第一使用者資料、對應此些第一使用者資料的管理資訊,以及對應此些第一使用者資料的多個錯誤檢查與校正碼依序地寫入至實體抹除單元410(F)的第0個與第1個實體程式化單元中。在此假設此些第一使用者資料所寫入的實體程式化單元為第一實體程式化單元602,也就是說,第一使用者資料D1-1與D1-2是被程式化至第一實體程式化單元602的資料位元區520中,且對應此些第一使用者資料的錯誤檢查與校正碼ECC1-1與ECC1-2是被程式化至第一實體程式化單元602中冗餘位元區540的第二記錄區544。特別是,當主機系統1000欲從記憶體儲存裝置100中讀取第一使用者資料D1時,記憶體控制電路單元104(或記憶體管理電路202)會從第一實體程式化單元602中讀取錯誤檢查與校正碼ECC1-1與ECC1-2,並且錯誤檢查與校正電路212會分別地依據錯誤檢查與校正碼ECC1-1與ECC1-2,來對第一使用者資料D1-1與D1-2進行錯誤檢查與校正程序。基此,在錯誤檢查與校正電路212的錯誤校正能力範圍內,錯誤檢查與校正電路212可校正資料中的錯誤位元,由此確保資
料的正確性。
在本範例實施例中,假設一第一資料包括第一使用者資料以及對應第一使用者資料的管理資訊,因此,當記憶體儲存裝置100接收到上述第一使用者資料並且產生對應第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2後,記憶體控制電路單元104(或記憶體管理電路202)會依據此第一資料(即,第一使用者資料D1-1與D1-2與對應於第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2)產生一同位資訊P。此外,在另一範例實施例中,第一資料包括使用者資料、對應該使用者資料的管理資訊以及對應使用者資料的錯誤檢查與校正碼,也就是說,記憶體控制電路單元104(或記憶體管理電路202)會根據整個實體程式化單元來產生同位資訊,例如,記憶體控制電路單元104(或記憶體管理電路202)會依據第一使用者資料D1-1與D1-2、對應第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2以及對應第一使用者資料D1-1與D1-2的錯誤檢查與校正碼ECC1-1與ECC1-2來產生同位資訊。值得一提的是,在本範例實施例中,第一資料為兩筆第一使用者資料以及對應此些第一使用者資料的管理資訊所組成(即,第一使用者資料D1-1與D1-2與對應於第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2),然而,本發明並不加以限制第一資料的大小,例如,在另一範例實施例中,第一資料可為一筆或多筆第一使用者資料以及對應第一使用者資料的管理資訊所組成,亦或是由一筆或多筆第一使用者資料、對應第一使用者資料
的管理資訊以及對應第一使用者資料的錯誤檢查與校正碼所組成。值得注意的是,本發明並不限制同位資訊之產生時間點與產生方式,具體而言,在本範例實施例中,所產生的同位資訊可以是奇偶校正碼(parity checking code)、通道編碼(channel coding)或是其他類型。例如,漢明碼(hamming code)、低密度奇偶檢查碼(low density parity check code,LDPC code)、渦旋碼(turbo code)或里德-所羅門碼(Reed-solomon code,RS code)。特別是,在另一範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)亦可以使用互斥(XOR)運算來為第一資料產生的同位資訊。
請再參照圖5A,記憶體控制電路單元104(或記憶體管理電路202)會將同位資訊P程式化至實體抹除單元410(F)的實體程式化單元之中的第2個實體程式化單元(即,第二實體程式化單元604)。值得一提的是,在上述將第一使用者資料、對應第一使用者資料的管理資訊與對應第一使用者資料的錯誤檢查與校正碼程式化至實體程式化單元之中的第一實體程式化單元602的操作中,記憶體控制電路單元104(或記憶體管理電路202)會將至少一標記程式化至實體抹除單元410(F)的第1個實體程式化單元之冗餘位元區的第一記錄區542(即,圖5A中所示第一標記M1),並且此第一標記M1會指示同位資訊P被程式化至實體抹除單元410(F)的第二實體程式化單元604中。
特別是,第二實體程式化單元604是排列於第一實體程式化單元602之中的最後一個實體程式化單元之後,並且第一標
記M1會指示第二實體程式化單元604儲存同位資訊P。
請參照圖5B,當主機系統1000傳送另一個寫入指令與對應此寫入指令的第二使用者資料D2給記憶體儲存裝置100時,記憶體控制電路單元104(或記憶體管理電路202)亦會判斷第二使用者資料D2的大小,並且根據第二使用者資料D2的大小獲得寫入此第二使用者資料D2所需之實體程式化單元的數目。在此,假設需一個實體程式化單元來寫入此第二使用者資料D2。因此,如圖5B所示,記憶體管理電路202會產生對應第二使用者資料D2的錯誤檢查與校正碼ECC2以及對應第二使用者資料D2的管理資訊S2。之後,記憶體控制電路單元104(或記憶體管理電路202)會將此第二使用者資料、對應此第二使用者資料的管理資訊,以及對應此第二使用者資料的錯誤檢查與校正碼寫入至實體抹除單元410(F)的第3個實體程式化單元(即,第三實體程式化單元606)中。在記憶體控制電路單元104(或記憶體管理電路202)將對應此第二使用者資料D2的管理資訊S2寫入至實體抹除單元410(F)的第三實體程式化單元606中的同時,記憶體控制電路單元104(或記憶體管理電路202)會將一第二標記M2程式化至第三實體程式化單元606之冗餘位元區540的第一記錄區542中,其中第三實體程式化單元606是排列於第二實體程式化單元604之後,並且第二標記M2亦會指示第二實體程式化單元604儲存同位資訊P。
此後,當記憶體控制電路單元104(或記憶體管理電路202)接收到主機系統1000所傳送之欲讀取上述第一使用者資料D1的
讀取指令時,記憶體控制電路單元104(或錯誤檢查與校正電路212)會依據所讀取的錯誤檢查與校正碼對所讀取的第一使用者資料D1-1與D1-2進行上述的錯誤檢查與校正程序。舉例而言,在本發明範例實施例中,上述第一資料包括一第二資料以及一錯誤檢查與校正碼,其中第二資料可僅包括第一使用者資料,亦或是同時包括第一使用者資料與對應第一使用者資料的管理資訊,而錯誤檢查與校正碼即為對應第一使用者資料的錯誤檢查與校正碼。當無法藉由使用對應第一使用者資料的錯誤檢查與校正碼來校正所述第二資料時,記憶體控制電路單元104(或記憶體管理電路202)會根據上述至少一標記獲得記錄同位資訊的至少一第二實體程式化單元的位址,並從至少一第二實體程式化單元中讀取同位資訊以及依據所讀取的該同位資訊來校正第二資料。例如,倘若無法藉由使用第一使用者資料D1-1與D1-2的錯誤檢查與校正碼(即,ECC1、ECC2)來校正第一使用者資料D1-1與D1-2時,記憶體控制電路單元104(或記憶體管理電路202)會根據上述的至少一標記來獲得記錄同位資訊P的第二實體程式化單元604的位址,並從第二實體程式化單元604中讀取此同位資訊P以及依據所讀取的第一同位資訊P來校正第一使用者資料D1。例如,當無法藉由使用第一使用者資料D1-1的錯誤檢查與校正碼ECC1來校正第一使用者資料D1-1時,記憶體控制電路單元104(或記憶體管理電路202)會先從第一實體程式化單元602中鄰近於第一使用者資料D1-1所在的第0個實體程式化單元的實體程式化單元(例如,實體
抹除單元410(F)的第1個實體程式化單元)中獲得第一標記M1,並由此來識別儲存同位資訊P的位址。在另一範例實施例中,倘若無法藉由使用第一使用者資料D1-2的錯誤檢查與校正碼ECC2來校正第一使用者資料D1-2且無法從對應於第一使用者資料D1-2的冗餘位元區的第一記錄區獲得第一標記值M1時,記憶體控制電路單元104(或記憶體管理電路202)則會從鄰近於第一使用者資料D1-2所在的第1個實體程式化單元的實體程式化單元(例如,實體抹除單元410(F)的第0個實體程式化單元、第二實體程式化單元604與第三實體程式化單元606)中尋找以獲得位於第三實體程式化單元606中的第二標記M2,並由此來識別儲存有同位資訊P的實體程式化單元的位址。
在本範例實施例中,可複寫式非揮發性記憶體模組106為多階記憶胞MLC NAND型快閃記憶體模組,因此,每一記憶胞可儲存多個位元。具體來說,在對SLC NAND型快閃記憶體模組的記憶胞進行程式化時僅能執行單階的程式化,因此每一記憶胞僅能儲存一個位元。而MLC NAND型快閃記憶體模組之實體抹除單元的程式化可分為多階段。例如,以2層記憶胞為例,實體程式化單元的程式化可分為2階段。第一階段是下實體程式化單元的寫入部分,其物理特性類似於單階記憶胞SLC NAND快閃記憶體,在完成第一階段之後才會程式化上實體程式化單元,其中下實體程式化單元的寫入速度會快於上實體程式化單元。因此,每一實體抹除單元的實體程式化單元可區分為慢速實體程式化單元
(即,上實體程式化單元)與快速實體程式化單元(即,下實體程式化單元)。
圖6是根據本發明第一範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼以及用以記錄同位資訊的至少一標記寫入至實體程式化單元的另一個範例。
在另一範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)也可以將第一使用者資料D1-1與D1-2、對應第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2以及錯誤檢查與校正碼ECC1-1與ECC1-2程式化至實體程式化單元之中的多個實體程式化單元中。例如,記憶體控制電路單元104(或記憶體管理電路202)會將第一使用者資料D1-1與D1-2、對應第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2以及對應第一使用者資料D1-1與D1-2的錯誤檢查與校正碼ECC1-1與ECC1-2僅程式化至第一實體程式化單元702中的快速實體程式化單元。因此,如圖6所示,記憶體控制電路單元104(或記憶體管理電路202)會將第一使用者資料D1-1、管理資訊S1-1以及錯誤檢查與校正碼ECC1-1程式化至實體抹除單元410(F)的第0個實體程式化單元,並且將第一使用者資料D1-2、管理資訊S1-2、第一標記M1以及錯誤檢查與校正碼ECC1-2程式化至實體抹除單元410(F)的第2個實體程式化單元。此外,記憶體控制電路單元104(或記憶體管理電路202)會產生對應於第一使用者資料D1-1、D1-2與對應於第一使用者資料D1-1、D1-2之管理資訊S1-1、S1-2的同位資訊P,
並且將此同位資訊P寫入至第二實體程式化單元704中的快速實體程式化單元(即,實體抹除單元410(F)的第4個實體程式化單元)。之後,當主機系統1000傳送另一個寫入指令與對應此寫入指令的第二使用者資料D2給記憶體儲存裝置100時,記憶體控制電路單元104(或記憶體管理電路202)會將其所產生之對應第二使用者資料D2的錯誤檢查與校正碼ECC2、對應第二使用者資料D2的管理資訊S2以及一第二標記M2寫入至實體抹除單元410(F)的第三實體程式化單元706中的快速實體程式化單元(即,實體抹除單元410(F)的第6個實體程式化單元)。在此,相同於圖5A與圖5B所示的範例,第一標記M1與第二標記M2皆會指示第二實體程式化單元704中的快速實體程式化單元儲存有同位資訊P。
也就是說,在本範例實施例中,倘若無法藉由使用第一使用者資料D1-1的錯誤檢查與校正碼ECC1來校正第一使用者資料D1-1時,記憶體控制電路單元104(或記憶體管理電路202)會先從第一實體程式化單元702中接近於第一使用者資料D1-1所在的第0個實體程式化單元的快速實體程式化單元(例如,實體抹除單元410(F)的第2個實體程式化單元)中獲得第一標記M1,並由此來識別儲存同位資訊P的位址。在另一範例實施例中,倘若無法藉由使用第一使用者資料D1-2的錯誤檢查與校正碼ECC1-2來校正第一使用者資料D1-2且無法從對應於第一使用者資料D1-2的冗餘位元區的第一記錄區獲得第一標記值M1時,記憶體控制電路單元104(或記憶體管理電路202)則會從接近於第一使用者資料
D1-2所在的第2個實體程式化單元的快速實體程式化單元(例如,實體抹除單元410(F)的第0個實體程式化單元、實體抹除單元410(F)的第4個實體程式化單元與實體抹除單元410(F)的第6個實體程式化單元)中尋找以獲得位於第三實體程式化單元706的快速實體程式化單元中的第二標記M2,並由此來識別儲存同位資訊P的位址。
值得一提的是,在此範例實施例中,由於用以記錄同位資訊所屬之實體程式化單元位址的實體程式化單元會分別是位於同位資訊所屬之實體程式化單元的之前與之後的實體程式化單元,因此,倘若當用以記錄同位資訊所屬之實體程式化單元位址的實體程式化單元中的其中一個損壞時(即,實體抹除單元中資料位元區所記錄之資料與冗餘位元區所記錄的標記及錯誤檢查與校正碼遺失或損壞時),記憶體控制電路單元104(或記憶體管理電路202)可更藉由相鄰於或接近於此筆所讀取之資料的另一個實體程式化單元來識別出同位資訊所屬之實體程式化單元的位址。據此,在資料無法透過錯誤檢查與校正碼來校正時,藉由實體程式化單元中所儲存的標記可有效地識別出儲存此筆資料之同位資訊的位址並且獲取此同位資訊,由此使用所獲取的同位資訊來校正資料中的錯誤位元。
圖7是根據本發明的第一範例實施例所繪示的資料儲存方法的流程圖。
請參照圖7,在步驟S701中,記憶體控制電路單元(或記
憶體管理電路)會依據一第一資料產生一同位資訊。在步驟S703中,記憶體控制電路單元(或記憶體管理電路)會將第一資料程式化至第一實體程式化單元。接著,在步驟S705中,記憶體控制電路單元(或記憶體管理電路)會將至少一標記程式化至所述第一實體程式化單元之中的冗餘位元區,並且在步驟S707中,記憶體控制電路單元(或記憶體管理電路)將所述同位資訊程式化至排列於所述第一實體程式化單元之後的至少一第二體程式化單元中,其中上述至少一標記會指示所述同位資訊被程式化至所述至少一第二實體程式化單元中。
[第二範例實施例]
本發明第二範例實施例的記憶體儲存裝置與主機系統本質上是相同於第一範例實施例的記憶體儲存裝置與主機系統,其中差異在於第二範例實施例的記憶體控制電路單元(或記憶體管理電路)會建立一同位資訊位址對應表,並且同時使用實體程式化單元與同位資訊位址對應表來記錄一個同位資訊所屬之實體程式化單元位址。以下將使用圖1A、圖2與圖3的裝置結構來描述第二範例實施例與第一範例實施例的差異部份。
圖8A與圖8B是根據本發明第二範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼以及用以記錄同位資訊的至少一標記寫入至實體程式化單元的範例。
請參照圖8A與圖8B,其中圖8A所示之將第一使用者資料、對應於第一使用者資料的錯誤檢查與校正碼、用以記錄同位
資訊之位址的第一標記以及對應於第一使用者資料及其管理資訊的同位資訊寫入至實體程式化單元的方法是相同於圖5A所示之方法,在此不再重複。其不同之處在於,在本範例實施例中,在將第一使用者資料D1-1與D1-2以及對應第一使用者資料D1-1與D1-2的錯誤檢查與校正碼ECC1-1與ECC1-2程式化至實體程式化單元之中的第一實體程式化單元602,並且將對應第一使用者資料D1-1與D1-2與第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2的同位資訊P程式化至實體程式化單元之中的第二實體程式化單元604的操作中,記憶體控制電路單元104(或記憶體管理電路202)會建立一同位資訊位址對應表800(如圖8B所示)。例如,同位資訊位址對應表800會被儲存在緩衝記憶體208或隨機存取記憶體1104中。特別是,記憶體控制電路單元104(或記憶體管理電路202)會將第三標記M3記錄於同位資訊位址對應表800中,其中第三標記M3亦會指示第二實體程式化單元604儲存有同位資訊P。
在本範例實施例中,在圖8A中所示將第一使用者資料D1-1與D1-2以及對應第一使用者資料D1-1與D1-2的錯誤檢查與校正碼ECC1-1與ECC1-2程式化至實體程式化單元之中的第一實體程式化單元602,並且將對應第一使用者資料D1-1與D1-2與其管理資訊S1-1與S1-2的同位資訊P程式化至實體程式化單元之中的第二實體程式化單元604的操作之後,主機系統1000又再傳送另一個寫入指令與對應此寫入指令的第二使用者資料D2
給記憶體儲存裝置100。此時,倘若在記憶體控制電路單元104(或記憶體管理電路202)將此第二使用者資料、對應此第二使用者資料的管理資訊、指示同位資訊P位於第二實體程式化單元604的第三標記M3以及對應此第二使用者資料的錯誤檢查與校正碼寫入第三實體程式化單元606之前,主機系統1000或記憶體儲存裝置100發生斷電時,會造成用以記錄同位資訊P所在位址的第三標記M3無法被寫入第三實體程式化單元606,或是造成第一實體程式化單元602中的資料遺失或損壞。
在上述排列於第二實體程式化單元604之後的第三實體程式化單元606為空實體單元或因斷電所造成的第一實體程式化單元602中的資料遺失或損壞的情況下,並且當記憶體控制電路單元104(或記憶體管理電路202)接收到主機系統1000所傳送之欲讀取上述第一使用者資料D1-1與D1-2的讀取指令時,記憶體管理電路202(或錯誤檢查與校正電路212)會依據所讀取的錯誤檢查與校正碼對所讀取的第一使用者資料D1-1與D1-2進行上述的錯誤檢查與校正程序。倘若無法藉由使用第一使用者資料D1-1與D1-2的錯誤檢查與校正碼(即,ECC1-1、ECC1-2)來校正第一使用者資料D1-1與D1-2時,記憶體控制電路單元104(或記憶體管理電路202)會更用以根據上述的至少一標記來獲得記錄同位資訊P的第二實體程式化單元604的位址,並從第二實體程式化單元604中讀取此同位資訊P以及依據所讀取的同位資訊P來校正第一使用者資料D1-1與D1-2。舉例而言,記憶體管理電路202會先判
斷所讀取之實體抹除單元410(F)中對應於第一使用者資料D1-2的冗餘位元區的第一記錄區是否具有第一標記M1,倘若此第一標記M1存在並且可藉由其得知同位資訊P所在的位址,則記憶體控制電路單元104(或記憶體管理電路202)會根據此同位資訊P來校正第一使用者資料D1-1或D1-2。反之,倘若第一標記M1不存在亦或是記錄此第一標記M1之冗餘位元區損壞,則記憶體管理電路202會讀取上述同位資訊位址對應表800並且根據同位資訊位址對應表800中的第三標記M3獲得同位資訊P所在的實體程式化單元的位址。
[第三範例實施例]
本發明第三範例實施例的記憶體儲存裝置與主機系統本質上是相同於第一範例實施例的記憶體儲存裝置與主機系統,其中差異在於第三範例實施例的記憶體控制電路單元(或記憶體管理電路)會根據每一筆寫入資料所需寫入的實體程式化單元的個數將標記值記錄於此些實體程式化單元中,並且透過此些標記值來獲得同位資訊所屬之實體程式化單元位址。以下將使用圖1A、圖2與圖3的裝置結構來描述第三範例實施例與第一範例實施例的差異部份。
相同於第一範例實施例,當主機系統1000傳送寫入指令與對應此寫入指令的第一使用者資料D1給記憶體儲存裝置100時,記憶體控制電路單元104(或記憶體管理電路202)會判斷第一使用者資料D1的大小,並且根據第一使用者資料D1的大小獲得
寫入此第一使用者資料D1所需之實體程式化單元的數目。在此,假設需四個實體程式化單元來寫入此第一使用者資料D1。在此範例中,記憶體控制電路單元104(或記憶體管理電路202)會產生對應第一使用者資料D1-1~D1-4的錯誤檢查與校正碼ECC1-1~ECC1-4以及對應第一使用者資料D1-1~D1-4的管理資訊S1-1~S1-4。特別是,記憶體控制電路單元104(或記憶體管理電路202)在接收到上述第一使用者資料D1時,並不會立刻將此第一使用者資料D1寫入至實體抹除單元中。舉例而言,記憶體控制電路單元104(或記憶體管理電路202)會繼續等待主機系統1000傳送其他寫入指令與對應此些指令的第二使用者資料D2與第三使用者資料D3給記憶體儲存裝置100,並且計數此第二使用者資料D2與第三使用者資料D3所需寫入之實體程式化單元的個數。在此假設本範例實施例中的記憶體控制電路單元104(或記憶體管理電路202)會在寫入每三個實體程式化單元後,對此三個實體程式化單元中的資料產生一個同位資訊。在此範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)會判斷寫入第二使用者資料D2與第三使用者資料D3所需之實體程式化單元的個數皆為兩個,並且記憶體控制電路單元104(或記憶體管理電路202)還會根據每一筆資料所需寫入之實體程式化單元的個數以及每一筆資料被接收的先後順序,將欲寫入每一實體程式化單元的此些資料如圖9中排序900所示的順序來排序。
在另一範例實施例中,也可以在寫入三個以上或三個以
下的實體程式化單元後,對此三個以上或三個以下的實體程式化單元中的資料產生一個同位資訊,本發明不加以限制。此外,記憶體控制電路單元104(或記憶體管理電路202)等待主機系統1000所傳送之其他寫入指令與對應此些指令的資料筆數亦不限於三筆。
圖9是根據本發明第三範例實施例所繪示的根據寫入資料欲寫入之每一實體程式化單元的個數將其排列與記錄標記值的範例,且圖10是根據本發明第三範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼與用以記錄同位資訊的至少一標記寫入至實體程式化單元的另一範例。
請參照圖9,如上所述,由於記憶體控制電路單元104(或記憶體管理電路202)會在寫入每三個實體程式化單元後,對每三個實體程式化單元中的資料產生一個同位資訊,因此記憶體控制電路單元104(或記憶體管理電路202)會進一步地根據排序900為欲寫入每一實體程式化單元的此些資料記錄一標記值。具體而言,第一使用者資料D1-1的標記值會被記錄為3,第一使用者資料D1-2的標記值會被記錄為2,第一使用者資料D1-3的標記值會被記錄為1,第一使用者資料D1-4的標記值會被記錄為3,以及第二使用者資料D2-1的標記值會被記錄為2且第二使用者資料D2-2的標記值會被記錄為1。特別是,其餘的第三使用者資料D3所需寫入的實體程式化單元僅有兩個,因此,記憶體管理電路202會將第三使用者資料D3-1的標記值會被記錄為2並且將第三使用
者資料D3-2的標記值會被記錄為1。
之後,記憶體控制電路單元104(或記憶體管理電路202)會自閒置區504提取實體抹除單元410(F+1)作為替換實體抹除單元,並且根據圖9中所示的排序,將此些資料、對應此些資料的管理資訊,以及對應此些資料的多個錯誤檢查與校正碼依序地寫入至實體抹除單元410(F+1)。
請參照圖10,記憶體控制電路單元104(或記憶體管理電路202)會將第一使用者資料D1-1~D1-3與對應此些第一使用者資料的管理資訊S1-1~S1-3,以及對應此些第一使用者資料的多個錯誤檢查與校正碼ECC1-1~ECC1-3依序地寫入至實體抹除單元410(F+1)的第0個至第2個實體程式化單元中,其中在記憶體控制電路單元104(或記憶體管理電路202)將對應第一使用者資料D1-1~D1-3的管理資訊S1-1~S1-3寫入實體抹除單元410(F+1)中第0個至第2個實體程式化單元之冗餘位元區中第一記錄區的同時,記憶體控制電路單元104(或記憶體管理電路202)還會根據先前為第一使用者資料D1-1~D1-3所記錄的標記值,在對應於第一使用者資料D1-1~D1-3之實體程式化單元的冗餘位元區的第一記錄區中記錄此些標記值。此外,記憶體控制電路單元104(或記憶體管理電路202)會產生對應於第一使用者資料D1-1~D1-3與對應於第一使用者資料D1-1~D1-3之管理資訊S1-1~S1-3的第一同位資訊P1。舉例來說,在此假設第一使用者資料D1-1~D1-3所寫入的實體抹除單元410(F+1)中第0個至第2個實體程式化單元為第
一實體程式化單元802,則記憶體管理電路202會將應於第一使用者資料D1-1~D1-3及其管理資訊S1-1~S1-3的同位資訊P1寫入至實體抹除單元410(F+1)中第3個實體程式化單元,在此假設實體抹除單元410(F+1)中的第3個實體程式化單元為第二實體程式化單元804,亦即,記憶體控制電路單元104(或記憶體管理電路202)會將對應於第一使用者資料D1-1~D1-3及其管理資訊S1-1~S1-3的第一同位資訊P1寫入排列在第一實體程式化單元802之中的最後一個實體程式化單元(即,實體抹除單元410(F+1)中的第2個實體程式化單元)之後的第二實體程式化單元804。並且,以此類推,記憶體控制電路單元104(或記憶體管理電路202)會根據圖9中的排序900接續地以第一使用者資料D1-4、第二使用者資料D2-1與第二使用者資料D2-2為一組,將對應此欲寫入三個實體程式化單元中之資料的三個管理資訊、三個錯誤檢查與校正碼以及同位資訊分別且依序地寫入實體抹除單元410(F+1)中的第三實體程式化單元806與第四實體程式化單元808中。特別是,由於其餘的第三使用者資料D3欲寫入的實體程式化單元的個數為2,因此記憶體控制電路單元104(或記憶體管理電路202)僅會以第三使用者資料D3-1與第三使用者資料D3-2為一組,並且將對應此欲寫入兩個實體程式化單元中之資料的兩個管理資訊、兩個錯誤檢查與校正碼以及同位資訊分別且依序地寫入實體抹除單元410(F+1)中的第五實體程式化單元810與第六實體程式化單元812中。
具體而言,分別位於實體抹除單元410(F+1)的第一實體
程式化單元802、第三實體程式化單元806與第五實體程式化單元810中的第一標記值為1,第二標記值為2以及第三標記值為3。請再參照圖10,第一標記值會被記錄在第一實體程式化單元802之中的最後一個實體程式化單元(即,實體抹除單元410(F+1)中的第2個實體程式化單元)中冗餘位元區的第一記錄區,第二標記值會被記錄在第一實體程式化單元802之中相鄰且排列在最後一個實體程式化單元之前的實體程式化單元(即,實體抹除單元410(F+1)中的第1個實體程式化單元)的冗餘位元區中,以及第三標記值會被記錄在第一實體程式化單元802之中相鄰且排列在記錄第二標記值的實體程式化單元之前的實體程式化單元(即,實體抹除單元410(F+1)中的第0個實體程式化單元)的冗餘位元區中。並且,以此類推,第三實體程式化單元806中的標記值會以圖10中所示的排列方式排序。值得一提的是,第三使用者資料D3僅須寫入兩個實體程式化單元,因此,第五實體程式化單元810中僅會有第一標記值與第二標記值。
之後,倘若記憶體控制電路單元104(或記憶體管理電路202)接收到主機系統1000所傳送之欲讀取上述第一使用者資料D1的讀取指令時,記憶體管理電路202(或錯誤檢查與校正電路212)會依據所讀取的錯誤檢查與校正碼對所讀取的第一使用者資料D1進行上述的錯誤檢查與校正程序。倘若無法藉由使用第一使用者資料D1-1~D1-4的錯誤檢查與校正碼(即,ECC1-1~ECC1-4)來校正第一使用者資料D1-1~D1-4時,記憶體控制電路單元
104(或記憶體管理電路202)會根據上述的至少一個標記值來獲得記錄第一同位資訊P1與第二同位資訊P2的實體程式化單元的位址。在此假設當無法藉由使用第一使用者資料D1-2的錯誤檢查與校正碼ECC1-2來校正第一使用者資料D1-2且無法從對應於第一使用者資料D1-2的冗餘位元區的第一記錄區獲得第二標記值時,記憶體控制電路單元104(或記憶體管理電路202)會從第一實體程式化單元802中鄰近於第一使用者資料D1-2所在的第1個實體程式化單元的實體程式化單元(例如,實體抹除單元410(F+1)的第0個或第2個實體程式化單元)中獲得至少一個標記值。在此假設記憶體控制電路單元104(或記憶體管理電路202)是從第一實體程式化單元802中的第2個實體程式化單元獲得其冗餘位元區的標記值為1,則記憶體控制電路單元104(或記憶體管理電路202)會判斷對應於第一使用者資料D1-1~D1-3的第一同位資訊P1所在的位址即為相鄰於第一實體程式化單元802之中的最後一個實體程式化單元的實體程式化單元(亦即,第二實體程式化單元804),並且記憶體控制電路單元104(或記憶體管理電路202)會讀取此第一同位資訊P1以及依據所讀取的第一同位資訊P1來校正第一使用者資料D1。此外,假設記憶體控制電路單元104(或記憶體管理電路202)亦可以從第一實體程式化單元802中的第0個實體程式化單元獲得其冗餘位元區的標記值為3,則記憶體控制電路單元104(或記憶體管理電路202)會判斷對應於第一使用者資料D1-1~D1-3的第一同位資訊P1所在的位址即為距離本身(即,第一實體程式化
單元802中的第0個實體程式化單元)3個的實體程式化單元的第二實體程式化單元804。接著,記憶體控制電路單元104(或記憶體管理電路202)會讀取此第一同位資訊P1以及依據所讀取的第一同位資訊P1來校正第一使用者資料D1。據此,倘若對應每一實體化程式單元中的資料無法藉由各自的錯誤檢查與校正碼而被校正時,亦或是每一實體化程式單元中之資料所對應之用以記錄標記值的區域部分損壞時,記憶體控制電路單元104(或記憶體管理電路202)可根據相鄰的實體程式化單元來獲得用以指示同位資訊之位址的標記值,由此亦可以有效的預防所讀取之資料發生無法校正的情況。
[第四範例實施例]
本發明第四範例實施例的記憶體儲存裝置與主機系統本質上是相同於第一範例實施例的記憶體儲存裝置與主機系統,其中差異在於第四範例實施例的記憶體控制電路單元(或記憶體管理電路)會建立一同位資訊位址對應表,並且使用此同位資訊位址對應表來記錄每一同位資訊所屬之實體程式化單元位址。以下將使用圖1A、圖2與圖3的裝置結構來描述第四範例實施例與第一範例實施例的差異部份。
圖11是根據本發明第四範例實施例所繪示的將寫入資料、對應於寫入資料的錯誤檢查與校正碼程式化至實體程式化單元以及將用以記錄同位資訊的至少一標記記錄於同位資訊位址對應表的範例。
請參照圖11,圖11所示之將第一使用者資料、對應於第一使用者資料的錯誤檢查與校正碼以及對應於第一使用者資料的同位資訊寫入至實體程式化單元的方法是相同於第一範例實施例中的圖5A與圖5B所示之方法,在此不再重複。其不同之處在於,在本範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)會先建立一同位資訊位址對應表110,並且同位資訊位址對應表110會被儲存在緩衝記憶體208或隨機存取記憶體1104中。並且在記憶體控制電路單元104(或記憶體管理電路202)將第一使用者資料D1-1與D1-2、對應第一使用者資料D1-1與D1-2的管理資訊S1-1與S1-2以及對應第一使用者資料D1-1與D1-2的錯誤檢查與校正碼ECC1-1與ECC1-2程式化至實體程式化單元之中的第一實體程式化單元602,以及將對應第一使用者資料D1-1與D1-2及其管理資訊S1-1與S1-2的第一同位資訊P1程式化至實體程式化單元之中的第二實體程式化單元604的操作中,記憶體控制電路單元104(或記憶體管理電路202)不會將用以記錄第一同位資訊P1之位址的第一標記M1程式化至第一實體程式化單元602中的至少其中一個實體程式化單元,而是將第一標記M1記錄於先前所建立的同位資訊位址對應表110。在另一範例實施例中,倘若主機系統1000傳送一個寫入指令與對應此寫入指令的第二使用者資料D2給記憶體儲存裝置100時,記憶體控制電路單元104(或記憶體管理電路202)會將此第二使用者資料D2與其所產生之對應此第二使用者資料D2的錯誤檢查與校正碼ECC2以及對應第二使
用者資料D2的管理資訊S2寫入至實體抹除單元410(F)的第三實體程式化單元606中,特別是,記憶體控制電路單元104(或記憶體管理電路202)可以另外地提取一個實體抹除單元410(F+1),並將對應第二使用者資料D2及其管理資訊S2的第二同位資訊P2程式化至實體抹除單元410(F+1)中的第一實體程式化單元802,此外,記憶體控制電路單元104(或記憶體管理電路202)會將用以記錄第二同位資訊P2之位址的第二標記M2同樣地記錄於同位資訊位址對應表110中。值得一提的是,在本範例實施例中,並不加以限制同位資訊所存放的實體抹除單元,亦即,記憶體控制電路單元104(或記憶體管理電路202)所提取之用以記錄同位資訊的實體抹除單元亦可以是不同於對應此同位資訊的寫入資料所在之實體抹除單元所對應的記憶體晶粒。換言之,當無法藉由使用第一使用者資料D1-1與D1-2的錯誤檢查與校正碼ECC1-1、ECC1-2來校正第一使用者資料D1-1或D1-2時,記憶體控制電路單元104(或記憶體管理電路202)即可根據同位資訊位址對應表110獲得記錄第一同位資訊P1之位址的第一標記M1,亦或是當無法藉由使用第二使用者資料D2的錯誤檢查與校正碼ECC2來校正第二使用者資料D2時,記憶體控制電路單元104(或記憶體管理電路202)即可根據同位資訊位址對應表110獲得記錄第二同位資訊P2之位址的第二標記M2,據此,記憶體控制電路單元104(或記憶體管理電路202)可根據同位資訊位址對應表110快速地獲得同位資訊是屬於哪一個實體程式化單元。
圖12是根據本發明的第四範例實施例所繪示的資料儲存方法的流程圖。
請參照圖12,在步驟S1201中,記憶體控制電路單元(或記憶體管理電路)會建立一同位資訊位址對應表。在步驟S1203中,記憶體控制電路單元(或記憶體管理電路)會依據第一資料產生一同位資訊。接著,在步驟S1205中,記憶體控制電路單元(或記憶體管理電路)會將第一資料程式化至第一實體程式化單元。在步驟S1207中,記憶體控制電路單元(或記憶體管理電路)將所述同位資訊程式化至至少一第二實體程式化單元中。並且在步驟S1209中,記憶體控制電路單元(或記憶體管理電路)將至少一標記記錄於所述同位資訊位址對應表,其中所述至少一標記會指示所述同位資訊被程式化至所述第二實體程式化單元中。
綜上所述,本發明範例實施例的資料儲存方法、記憶體控制電路單元與記憶體儲存裝置會在寫入資料的同時,將對應此些寫入資料之同位資訊的位址記錄於至少一個標記中並且將此至少一標記寫入所接收之資料所欲寫入的至少一實體程式化單元,據此,當從可複寫式非揮發性記憶體模組中讀取的資料位元存在錯誤時,可以根據所述至少一標記,快速地獲得同位資訊是屬於哪一個實體程式化單元,進而有效地增加錯誤校正的更正能力與效率。此外,本發明範例實施例之用以校正讀取資料的同位資訊所寫入的實體程式化單元是排列於所寫入之資料所在的實體程式化單元之後,基此,藉由本發明範例實施例之的資料儲存方法不需要將對應於多
筆寫入資料的同位資訊放置於系統中的固定的記憶體晶粒,以有效地避免記憶體儲存裝置中儲存空間的浪費。
S701、S703、S705、S707‧‧‧資料儲存方法的步驟
Claims (21)
- 一種資料儲存方法,用於一可複寫式非揮發性記憶體模組,該可複寫式非揮發性記憶體模組包括多個實體抹除單元,且每一該些實體抹除單元包括多個實體程式化單元,其中每一該些實體程式化單元包括一資料位元區與一冗餘位元區,該資料儲存方法包括:依據一第一資料產生一同位資訊;將該第一資料程式化至該些實體程式化單元之中的一第一實體程式化單元中;以及將該同位資訊程式化至該些實體程式化單元之中的至少一第二實體程式化單元中,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之後,其中在上述將該第一資料程式化至該些實體程式化單元之中的該第一實體程式化單元的步驟包括:將至少一標記程式化至該第一實體程式化單元之中的冗餘位元區,其中該至少一標記指示該同位資訊被程式化至該至少一第二實體程式化單元中。
- 如申請專利範圍第1項所述之資料儲存方法,其中該第一資料包括一使用者資料與對應該使用者資料的一管理資訊,其中該使用者資料被程式化至該第一實體程式化單元之中的資料位元區,其中對應該使用者資料的該管理資訊被程式化至該第一實體程式化單元之中的冗餘位元區。
- 如申請專利範圍第1項所述之資料儲存方法,其中該第一 資料包括一使用者資料、對應該使用者資料的一管理資訊以及對應該使用者資料的一錯誤檢查與校正碼,其中該錯誤檢查與校正碼是根據該使用者資料所產生的,其中該使用者資料被程式化至該第一實體程式化單元之中的資料位元區,其中對應該使用者資料的該管理資訊被程式化至該第一實體程式化單元之中的冗餘位元區,其中對應該使用者資料的該錯誤檢查與校正碼被程式化至該第一實體程式化單元之中的冗餘位元區。
- 如申請專利範圍第2項或第3項所述之資料儲存方法,其中該第一實體程式化單元是由複數個實體程式化單元所組成,並且上述將該至少一標記程式化至該第一實體程式化單元之中的冗餘位元區的步驟包括:將一第一標記程式化至該第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之中的該最後一個實體程式化單元之後,其中該第一標記指示該至少一第二實體程式化單元儲存該同位資訊;以及將一第二標記程式化至該些實體程式化單元之中的至少一第三實體程式化單元的冗餘位元區,其中該至少一第三實體程式化單元是排列於該至少一第二實體程式化單元之後,其中該第二標記指示該至少一第二實體程式化單元儲存該同位資訊。
- 如申請專利範圍第2項或第3項所述之資料儲存方法,其 中將該至少一標記程式化至該第一實體程式化單元之中的冗餘位元區的步驟更包括:將一第一標記程式化至該第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之中的該最後一個實體程式化單元之後,且該第一標記指示該至少一第二實體程式化單元儲存該同位資訊;建立一同位資訊位址對應表;以及將一第三標記記錄於該同位資訊位址對應表,其中該第三標記指示該至少一第二實體程式化單元儲存該同位資訊。
- 如申請專利範圍第1項所述之資料儲存方法,其中該第一實體程式化單元是由複數個實體程式化單元所組成,並且上述將該至少一標記程式化至該第一實體程式化單元之中的冗餘位元區的步驟包括:計數該第一實體程式化單元的實體程式化單元的個數;以及根據該第一實體程式化單元的實體程式化單元的個數,在該第一實體程式化單元的每一實體程式化單元的冗餘位元區中記錄一標記值,其中記錄在該第一實體程式化單元中的該至少一標記值依據該第一實體程式化單元的實體程式化單元的排列依序地遞減。
- 如申請專利範圍第6項所述之資料儲存方法,其中該第一實體程式化單元是由複數個實體程式化單元所組成, 其中該標記值之中的一第一標記值為1,且該第一標記值被記錄在該第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區中,且該至少一第二實體程式化單元是排列在該第一實體程式化單元之中的該最後一個實體程式化單元之後,其中該標記值之中的一第二標記值為2,且該第二標記值被記錄在該些第一實體程式化單元之中相鄰且排列在該最後一個實體程式化單元之前的實體程式化單元的冗餘位元區中,其中該標記值之中的一第三標記值為3,且該第三標記值被記錄在該些第一實體程式化單元之中相鄰且排列在記錄該第二標記值的實體程式化單元之前的實體程式化單元的冗餘位元區中。
- 如申請專利範圍第1項所述之資料儲存方法,其中該第一資料包括一第二資料以及一錯誤檢查與校正碼,該資料儲存方法更包括:當無法藉由使用該錯誤檢查與校正碼來校正該第二資料時,根據該至少一標記獲得記錄該同位資訊的該至少一第二實體程式化單元的位址,從該至少一第二實體程式化單元中讀取該同位資訊以及依據所讀取的該同位資訊來校正該第二資料。
- 一種資料儲存方法,用於一可複寫式非揮發性記憶體模組,該可複寫式非揮發性記憶體模組包括多個實體抹除單元,且每一該些實體抹除單元包括多個實體程式化單元,其中每一該些實體程式化單元包括一資料位元區與一冗餘位元區,該資料儲存方法包括: 建立一同位資訊位址對應表;依據一第一資料產生一同位資訊;將該第一資料程式化至該些實體程式化單元之中的一第一實體程式化單元中;將該同位資訊程式化至該些實體程式化單元之中的至少一第二實體程式化單元中;以及將至少一標記記錄於該同位資訊位址對應表,其中該至少一標記指示該同位資訊被程式化至該至少一第二實體程式化單元中。
- 一種記憶體控制電路單元,用於控制一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組包括多個實體抹除單元,且每一該些實體抹除單元包括多個實體程式化單元,其中每一該些實體程式化單元包括一資料位元區與一冗餘位元區,該記憶體控制電路單元包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該可複寫式非揮發性記憶體模組;以及一記憶體管理電路,耦接至該主機介面與該記憶體介面,其中該記憶體管理電路用以依據一第一資料產生一同位資訊,其中該記憶體管理電路更用以將該第一資料程式化至該些實體程式化單元之中的一第一實體程式化單元中, 其中該記憶體管理電路更用以將該同位資訊程式化至該些實體程式化單元之中的至少一第二實體程式化單元中,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之後,其中在上述將該第一資料程式化至該些實體程式化單元之中的該第一實體程式化單元的操作中,該記憶體管理電路將至少一標記程式化至該第一實體程式化單元之中的冗餘位元區,其中該至少一標記指示該同位資訊被程式化至該至少一第二實體程式化單元中。
- 如申請專利範圍第10項所述之記憶體控制電路單元,其中該第一資料包括一使用者資料與對應該使用者資料的一管理資訊,其中該使用者資料被程式化至該第一實體程式化單元之中的資料位元區,其中對應該使用者資料的該管理資訊被程式化至該第一實體程式化單元之中的冗餘位元區。
- 如申請專利範圍第10項所述之記憶體控制電路單元,其中該第一資料包括一使用者資料、對應該使用者資料的一管理資訊以及對應該使用者資料的一錯誤檢查與校正碼,其中該錯誤檢查與校正碼是根據該使用者資料所產生的,其中該使用者資料被程式化至該第一實體程式化單元之中的資料位元區,其中對應該使用者資料的該管理資訊被程式化至該第一實體程式化單元之中的冗餘位元區,其中對應該使用者資料的該錯誤檢查與校正碼被程式化至該第一實體程式化單元之中的 冗餘位元區。
- 如申請專利範圍第11項或第12項所述之記憶體控制電路單元,其中該第一實體程式化單元是由複數個實體程式化單元所組成,並且上述將該至少一標記程式化至該第一實體程式化單元之中的冗餘位元區的操作中,該記憶體管理電路將一第一標記程式化至該第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之中的該最後一個實體程式化單元之後,其中該第一標記指示該至少一第二實體程式化單元儲存該同位資訊,其中該記憶體管理電路更用以將一第二標記程式化至該些實體程式化單元之中的至少一第三實體程式化單元的冗餘位元區,其中該至少一第三實體程式化單元是排列於該至少一第二實體程式化單元之後,並且該第二標記指示該至少一第二實體程式化單元儲存該同位資訊。
- 一種記憶體儲存裝置,包括:一連接介面單元,用以耦接至一主機系統;一可複寫式非揮發性記憶體模組,包括多個實體抹除單元,且每一該些實體抹除單元包括多個實體程式化單元,其中每一該些實體程式化單元包括一資料位元區與一冗餘位元區;以及一記憶體控制電路單元,耦接至該連接介面單元與該可複寫式非揮發性記憶體模組,其中該記憶體控制電路單元用以依據一第一資料產生一同位 資訊,其中該記憶體控制電路單元更用以將該第一資料程式化至該些實體程式化單元之中的一第一實體程式化單元中,其中該記憶體控制電路單元更用以將該同位資訊程式化至該些實體程式化單元之中的至少一第二實體程式化單元中,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之後,其中在上述將該第一資料程式化至該些實體程式化單元之中的該第一實體程式化單元的操作中,該記憶體控制電路單元將至少一標記程式化至該第一實體程式化單元之中的冗餘位元區,其中該至少一標記指示該同位資訊被程式化至該至少一第二實體程式化單元中。
- 如申請專利範圍第14項所述之記憶體儲存裝置,其中每一該第一資料包括一使用者資料與對應該使用者資料的一管理資訊,其中該使用者資料被程式化至該第一實體程式化單元之中的資料位元區,其中對應該使用者資料的該管理資訊被程式化至該第一實體程式化單元之中的冗餘位元區。
- 如申請專利範圍第14項所述之記憶體儲存裝置,其中該第一資料包括一使用者資料、對應該使用者資料的一管理資訊以及對應該使用者資料的一錯誤檢查與校正碼,其中該錯誤檢查與校正碼是根據該使用者資料所產生的, 其中該使用者資料被程式化至該第一實體程式化單元之中的資料位元區,其中對應該使用者資料的該管理資訊被程式化至該第一實體程式化單元之中的冗餘位元區,其中對應該使用者資料的該錯誤檢查與校正碼被程式化至該第一實體程式化單元之中的冗餘位元區。
- 如申請專利範圍第15項或第16項所述之記憶體儲存裝置,其中該第一實體程式化單元是由複數個實體程式化單元所組成,並且上述將該至少一標記程式化至該些第一實體程式化單元之中的冗餘位元區的操作中,該記憶體控制電路單元將一第一標記程式化至該第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之中的該最後一個實體程式化單元之後,其中該第一標記指示該至少一第二實體程式化單元儲存該同位資訊,其中該記憶體控制電路單元更用以將一第二標記程式化至該些實體程式化單元之中的至少一第三實體程式化單元的冗餘位元區,其中該至少一第三實體程式化單元是排列於該至少一第二實體程式化單元之後,其中該第二標記指示該至少一第二實體程式化單元儲存該同位資訊。
- 如申請專利範圍第15項或第16項所述之記憶體儲存裝置,其中該第一實體程式化單元是由複數個實體程式化單元所組成,並且上述將該至少一標記程式化至該第一實體程式化單元之 中的冗餘位元區的操作中,該記憶體控制電路單元將一第一標記程式化至該第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區,建立一同位資訊位址對應表並且將一第三標記記錄於該同位資訊位址對應表,其中該至少一第二實體程式化單元是排列於該第一實體程式化單元之中的該最後一個實體程式化單元之後,該第一標記指示該至少一第二實體程式化單元儲存該同位資訊,該第三標記指示該至少一第二實體程式化單元儲存該同位資訊。
- 如申請專利範圍第14項所述之記憶體儲存裝置,其中該第一實體程式化單元是由複數個實體程式化單元所組成,並且上述將該至少一標記程式化至該些第一實體程式化單元之中的冗餘位元區的操作中,該記憶體控制電路單元計數該第一實體程式化單元的實體程式化單元的個數,並且根據該第一實體程式化單元的實體程式化單元的個數,在該第一實體程式化單元的每一實體程式化單元的冗餘位元區中記錄一標記值,其中記錄在該第一實體程式化單元中的該些標記值依據該第一實體程式化單元的實體程式化單元的排列依序地遞減。
- 如申請專利範圍第19項所述之記憶體儲存裝置,其中該第一實體程式化單元是由複數個實體程式化單元所組成,其中該標記值之中的一第一標記值為1,且該第一標記值被記錄在該第一實體程式化單元之中的最後一個實體程式化單元的冗餘位元區中,且該至少一第二實體程式化單元是排列在該第一 實體程式化單元之中的該最後一個實體程式化單元之後,其中該標記值之中的一第二標記值為2,且該第二標記值被記錄在該些第一實體程式化單元之中相鄰且排列在該最後一個實體程式化單元之前的實體程式化單元的冗餘位元區中,其中該些標記值之中的一第三標記值為3,且該第三標記值被記錄在該些第一實體程式化單元之中相鄰且排列在記錄該第二標記值的實體程式化單元之前的實體程式化單元的冗餘位元區中。
- 如申請專利範圍第14項所述之記憶體儲存裝置,其中該第一資料包括一第二資料以及一錯誤檢查與校正碼,其中當無法藉由使用該錯誤檢查與校正碼來校正該第二資料時,該記憶體控制電路單元更用以根據該至少一標記獲得記錄該同位資訊的該至少一第二實體程式化單元的位址,從該至少一第二實體程式化單元中讀取該同位資訊以及依據所讀取的該同位資訊來校正該第二資料。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103125990A TWI512750B (zh) | 2014-07-30 | 2014-07-30 | 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 |
US14/492,081 US9436547B2 (en) | 2014-07-30 | 2014-09-22 | Data storing method, memory control circuit unit and memory storage device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW103125990A TWI512750B (zh) | 2014-07-30 | 2014-07-30 | 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI512750B true TWI512750B (zh) | 2015-12-11 |
TW201604883A TW201604883A (zh) | 2016-02-01 |
Family
ID=55180142
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW103125990A TWI512750B (zh) | 2014-07-30 | 2014-07-30 | 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9436547B2 (zh) |
TW (1) | TWI512750B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180087494A (ko) * | 2017-01-23 | 2018-08-02 | 에스케이하이닉스 주식회사 | 메모리 장치, 메모리 시스템 및 메모리 시스템의 동작 방법 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070268905A1 (en) * | 2006-05-18 | 2007-11-22 | Sigmatel, Inc. | Non-volatile memory error correction system and method |
US20090164836A1 (en) * | 2007-12-21 | 2009-06-25 | Spansion Llc | Error correction in flash memory array |
US20090327803A1 (en) * | 2008-06-30 | 2009-12-31 | Kabushiki Kaisha Toshiba | Storage control device and storage control method |
TW201314449A (zh) * | 2011-07-22 | 2013-04-01 | Sandisk Technologies Inc | 儲存資料之系統及方法 |
TW201316341A (zh) * | 2011-07-28 | 2013-04-16 | Sandisk Technologies Inc | 在非揮發性記憶體陣列之程式化期間用於缺陷字元線的資料回復 |
US8495481B2 (en) * | 2009-04-21 | 2013-07-23 | Micron Technology, Inc. | Non-volatile memory with extended error correction protection |
US20140075259A1 (en) * | 2012-09-13 | 2014-03-13 | Eugene Tam | On chip data recovery for non-volatile storage |
US8700951B1 (en) * | 2011-03-09 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100782329B1 (ko) * | 2006-10-02 | 2007-12-06 | 삼성전자주식회사 | 메모리 셀 어레이에 분산 배열된 플래그 셀 어레이를구비하는 비휘발성 메모리 장치 및 상기 메모리 장치의구동 방법 |
TWI399643B (zh) * | 2009-12-31 | 2013-06-21 | Phison Electronics Corp | 快閃記憶體儲存系統及其控制器與資料寫入方法 |
TWI420313B (zh) * | 2010-12-24 | 2013-12-21 | Phison Electronics Corp | 資料管理方法、記憶體控制器與嵌入式記憶體儲存裝置 |
TWI475385B (zh) * | 2012-03-14 | 2015-03-01 | Phison Electronics Corp | 程式化記憶胞與資料讀取方法、記憶體控制器與儲存裝置 |
TWI486766B (zh) * | 2012-05-11 | 2015-06-01 | Phison Electronics Corp | 資料處理方法、記憶體控制器與記憶體儲存裝置 |
TWI516927B (zh) * | 2013-06-14 | 2016-01-11 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制器與記憶體儲存裝置 |
TWI508082B (zh) * | 2013-09-30 | 2015-11-11 | Phison Electronics Corp | 解碼方法、記憶體儲存裝置與記憶體控制電路單元 |
TWI527382B (zh) * | 2013-10-22 | 2016-03-21 | 群聯電子股份有限公司 | 解碼方法、解碼電路、記憶體儲存裝置與控制電路單元 |
US9342404B2 (en) * | 2013-12-12 | 2016-05-17 | Phison Electronics Corp. | Decoding method, memory storage device, and memory controlling circuit unit |
TWI523018B (zh) * | 2013-12-31 | 2016-02-21 | 群聯電子股份有限公司 | 解碼方法、記憶體儲存裝置、記憶體控制電路單元 |
TWI545581B (zh) * | 2014-04-15 | 2016-08-11 | 群聯電子股份有限公司 | 資料寫入方法、記憶體儲存裝置及記憶體控制電路單元 |
TWI540586B (zh) * | 2014-04-15 | 2016-07-01 | 群聯電子股份有限公司 | 解碼方法、記憶體儲存裝置、記憶體控制電路單元 |
TWI541820B (zh) * | 2014-07-10 | 2016-07-11 | 群聯電子股份有限公司 | 解碼方法、記憶體控制電路單元及記憶體儲存裝置 |
TWI550628B (zh) * | 2014-07-16 | 2016-09-21 | 群聯電子股份有限公司 | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 |
TWI557743B (zh) * | 2014-09-12 | 2016-11-11 | 群聯電子股份有限公司 | 程式化方法、記憶體儲存裝置及記憶體控制電路單元 |
-
2014
- 2014-07-30 TW TW103125990A patent/TWI512750B/zh active
- 2014-09-22 US US14/492,081 patent/US9436547B2/en active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070268905A1 (en) * | 2006-05-18 | 2007-11-22 | Sigmatel, Inc. | Non-volatile memory error correction system and method |
US20090164836A1 (en) * | 2007-12-21 | 2009-06-25 | Spansion Llc | Error correction in flash memory array |
US20090327803A1 (en) * | 2008-06-30 | 2009-12-31 | Kabushiki Kaisha Toshiba | Storage control device and storage control method |
US8495481B2 (en) * | 2009-04-21 | 2013-07-23 | Micron Technology, Inc. | Non-volatile memory with extended error correction protection |
US8700951B1 (en) * | 2011-03-09 | 2014-04-15 | Western Digital Technologies, Inc. | System and method for improving a data redundancy scheme in a solid state subsystem with additional metadata |
TW201314449A (zh) * | 2011-07-22 | 2013-04-01 | Sandisk Technologies Inc | 儲存資料之系統及方法 |
TW201316341A (zh) * | 2011-07-28 | 2013-04-16 | Sandisk Technologies Inc | 在非揮發性記憶體陣列之程式化期間用於缺陷字元線的資料回復 |
US20140075259A1 (en) * | 2012-09-13 | 2014-03-13 | Eugene Tam | On chip data recovery for non-volatile storage |
Also Published As
Publication number | Publication date |
---|---|
TW201604883A (zh) | 2016-02-01 |
US9436547B2 (en) | 2016-09-06 |
US20160034343A1 (en) | 2016-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI516927B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI490871B (zh) | 防止讀取干擾的方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI540582B (zh) | 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置 | |
TW201539455A (zh) | 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI658463B (zh) | 資料存取方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI545432B (zh) | 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置 | |
TWI656531B (zh) | 平均磨損方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI725416B (zh) | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 | |
CN104636267A (zh) | 存储器控制方法、存储器存储装置与存储器控制电路单元 | |
TW201913382A (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
US8966344B2 (en) | Data protecting method, memory controller and memory storage device | |
TWI548991B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI640997B (zh) | 資料保護方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI509615B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
CN104252317A (zh) | 数据写入方法、存储器控制器与存储器存储装置 | |
TWI709850B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN104252600A (zh) | 数据保护方法、存储器控制器与存储器储存装置 | |
TWI553477B (zh) | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 | |
CN108664350B (zh) | 数据保护方法、存储器存储装置及存储器控制电路单元 | |
TWI512750B (zh) | 資料儲存方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI688958B (zh) | 冷區域判斷方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI541809B (zh) | 資料存取方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI545576B (zh) | 資料寫入方法、記憶體控制電路單元以及記憶體儲存裝置 | |
CN110874282B (zh) | 数据存取方法、存储器控制电路单元与存储器存储装置 | |
CN112445416B (zh) | 冷区域判断方法、存储器控制电路单元与存储器存储装置 |