TWI483111B - 資料儲存方法、記憶體控制器與記憶體儲存裝置 - Google Patents
資料儲存方法、記憶體控制器與記憶體儲存裝置 Download PDFInfo
- Publication number
- TWI483111B TWI483111B TW101134523A TW101134523A TWI483111B TW I483111 B TWI483111 B TW I483111B TW 101134523 A TW101134523 A TW 101134523A TW 101134523 A TW101134523 A TW 101134523A TW I483111 B TWI483111 B TW I483111B
- Authority
- TW
- Taiwan
- Prior art keywords
- unit
- data
- physical
- entity
- flash memory
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/7201—Logical to physical mapping or translation of blocks or pages
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
- G06—COMPUTING OR CALCULATING; 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/7211—Wear leveling
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
本發明是有關於一種用於快閃記憶體模組的資料儲存方法以及使用此方法的記憶體控制器與記憶體儲存裝置。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,最適於可攜式電子產品,例如筆記型電腦。固態硬碟就是一種以快閃記憶體作為儲存媒體的儲存裝置。因此,近年快閃記憶體產業成為電子產業中相當熱門的一環。
依據每個記憶胞可儲存的位元數,反及(NAND)型快閃記憶體可區分為單階儲存單元(Single Level Cell,SLC)NAND型快閃記憶體、多階儲存單元(Multi Level Cell,MLC)NAND型快閃記憶體與複數階儲存單元(Trinary Level Cell,TLC)NAND型快閃記憶體,其中SLC NAND型快閃記憶體的每個記憶胞可儲存1個位元的資料(即,”1”與”0”),MLC NAND型快閃記憶體的每個記憶胞可儲存2個位元的資料並且TLC NAND型快閃記憶體的每個記憶胞可儲存3個位元的資料。
在NAND型快閃記憶體中,實體頁面是由排列在同一
條字元線上的數個記憶胞所組成。由於SLC NAND型快閃記憶體的每個記憶胞可儲存1個位元的資料,因此,在SLC NAND型快閃記憶體中,排列在同一條字元線上的數個記憶胞是對應一個實體頁面。
相對於SLC NAND型快閃記憶體來說,MLC NAND型快閃記憶體的每個記憶胞的浮動閘儲存層可儲存2個位元的資料,其中每一個儲存狀態(即,”11”、”10”、”01”與”00”)包括最低有效位元(Least Significant Bit,LSB)以及最高有效位元(Most Significant Bit,MSB)。例如,儲存狀態中從左側算起之第1個位元的值為LSB,而從左側算起之第2個位元的值為MSB。因此,排列在同一條字元線上的數個記憶胞可組成2個實體頁面,其中由此些記憶胞之LSB所組成的實體頁面稱為下實體頁面(low physical page),並且由此些記憶胞之MSB所組成的實體頁面稱為上實體頁面(upper physical page)。特別是,下實體頁面的寫入速度會快於上實體頁面的寫入速度,並且當程式化上實體頁面發生錯誤時,下實體頁面所儲存之資料亦可能因此遺失。
類似地,在TLC NAND型快閃記憶體中,的每個記憶胞可儲存3個位元的資料,其中每一個儲存狀態(即,”111”、”110”、”101”、”100”、”011”、”010”、”001”與”000”)包括每一個儲存狀態包括左側算起之第1個位元的LSB、從左側算起之第2個位元的中間有效位元(Center Significant Bit,CSB)以及從左側算起之第3個位元的
MSB。因此,排列在同一條字元線上的數個記憶胞可組成3個實體頁面,其中由此些記憶胞之LSB所組成的實體頁面稱為下實體頁面,由此些記憶胞之CSB所組成的實體頁面稱為中實體頁面,並且由此些記憶胞之MSB所組成的實體頁面稱為上實體頁面。特別是,對排列在同一條字元線上的數個記憶胞進行程式化時,僅能選擇僅程式化下實體頁面或者同時程式化下實體頁面、中實體頁面與上實體頁面,否則所儲存之資料可能會遺失。
然而,無論是那種記憶胞快閃記憶體模組,在對同一個實體區塊所儲存的資料進行多次讀取時,例如十萬至百萬次間的讀取次數,很有可能會發生所讀取的資料是錯誤的的狀況,甚至此被多次讀取區塊內所儲存的資料會發生異常或遺失。而此類現象以本發明領域具有通常知識者慣稱為『讀取干擾』(read-disturb)。特別是,快閃記憶體模組中會儲存快閃記憶體儲存系統的系統資料(例如韌體碼(Firmware Code)、檔案配置表(File Allocation Table,FAT),且此系統資料會在快閃記憶體儲存系統運作期間高頻率地的讀取。也亦因有著這樣的現象存在著,無不驅使著各家廠商必須發展出能確保正確儲存資料的機制。
本發明提供一種資料儲存方法、記憶體控制器與記憶體儲存裝置,其能夠可靠地儲存資料,避免資料遺失。
本發明範例實施例提出一種資料儲存方法,用於具有
快閃記憶體模組的記憶體儲存裝置。此快閃記憶體模組具有複數個實體抹除單元,且每一所述複數個實體抹除單元具有複數個實體程式化單元。本資料儲存方法包括透過溫度感測器偵測記憶體儲存裝置的運作溫度,並且判斷記憶體儲存裝置的運作溫度是否大於預設溫度。本資料儲存方法更包括,倘若記憶體儲存裝置的運作溫度非大於預設溫度時,採用第一資料儲存模式來存取快閃記憶體模組,並且倘若記憶體儲存裝置的運作溫度大於預設溫度時,採用第二資料儲存模式來存取快閃記憶體模組,其中第一資料儲存模式不同於第二資料儲存模式。
在本發明之一範例實施例中,上述之資料儲存方法更包括將第一資料寫入至第一實體程式化單元;從該第一實體程式化單元中讀取第一資料並校正所讀取的第一資料;並且識別發生在從該第一實體程式化單元中所讀取的該第一資料中的錯誤位元的數目。上述採用第二資料儲存模式來存取快閃記憶體模組的步驟包括:判斷從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目是否超過第二數目且小於第一數目;倘若從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目超過第二數目且小於第一數目時,將校正後的第一資料寫入至第二實體程式化單元並且將映射第一實體程式化單元的邏輯位址重新映射至第二實體程式化單元。上述採用第一資料儲存模式來存取快閃記憶體模組的步驟包括:判斷從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目是否超過第一數
目;倘若從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目超過第一數目時,將校正後的第一資料寫入至第三實體程式化單元,其中該第二數目小於該第一數目。
在本發明之一範例實施例中,上述之每一複數個實體抹除單元的實體程式化單元包括複數個下實體程式化單元與複數個上實體程式化單元並且將資料寫入至下實體程式化單元的速度大於將資料寫入至上實體程式化單元的速度。上述採用第一資料儲存模式來存取快閃記憶體模組的步驟包括:從主機系統接收第二資料並且將第二資料寫入至第一實體抹除單元中,其中在第一資料儲存寫入模式中,第一實體抹除單元的下實體程式化單元與上實體程式化單元會被用來寫入資料。上述採用第二資料儲存模式來存取快閃記憶體模組的步驟包括:從該主機系統接收該第二資料並且將第二資料寫入至第二實體抹除單元中,其中在第二資料儲存模式中,第二實體抹除單元的下實體程式化單元會被使用來寫入資料且第二實體抹除單元的上實體程式化單元不會被用來寫入資料。
在本發明之一範例實施例中,上述之採用第一資料儲存模式來存取快閃記憶體模組的步驟包括:依據第一頻率來執行平均磨損運作並且採用第二資料儲存模式來存取快閃記憶體模組的步驟包括:依據第二頻率來執行平均磨損運作。其中,平均磨損運作包括:從上述實體抹除單元之中選擇第三實體抹除單元,其中第三實體抹除單元已被寫入資料並且多個邏輯位址分別地映射至第三實體抹除單元
的實體程式化單元。此外,平均磨損運作還包括;從上述實體抹除單元之中選擇第四實體抹除單元,其中第四實體抹除單元未被寫入資料。再者,平均磨損運作更包括:將儲存在第三實體抹除單元中的資料搬移至第四實體抹除單元,並且將原先映射至第三實體抹除單元的邏輯位址重新映射至第四實體抹除單元的實體程式化單元,其中第四實體抹除單元的抹除次數大於第三實體抹除單元的抹除次數。
在本發明之一範例實施例中,上述之第一頻率大於第二頻率。
在本發明之一範例實施例中,上述之第二頻率大於第一頻率。
在本發明之一範例實施例中,上述採用第一資料儲存模式來存取快閃記憶體模組的步驟包括:依據第三頻率來執行第一預防讀取干擾運作,並且上述其中採用第二資料儲存模式來存取快閃記憶體模組的步驟包括:依據第四頻率來執行第二預防讀取干擾運作,其中第四頻率大於第三頻率。上述第一預防讀取干擾運作包括:從第三實體程式化單元中讀取第二資料並且校正此第二資料;判斷該第三實體程式化單元中所讀取的第二資料中的錯誤位元的數目是否超過第三數目;以及倘若從第三實體程式化單元中所讀取的第二資料中的錯誤位元的數目超過第三數目時,將校正後的第二資料寫入至第四實體程式化單元並且將映射第三實體程式化單元的邏輯位址重新映射至第四實體程式
化單元。上述第二預防讀取干擾運作包括:從第五實體程式化單元中讀取第三資料並且校正此第三資料;判斷從第五實體程式化單元中所讀取的第三資料中的錯誤位元的數目是否超過第四數目;以及倘若從第五實體程式化單元中所讀取的第三資料中的錯誤位元的數目超過第四數目時,將校正後的第三資料寫入至第六實體程式化單元並且將映射第五實體程式化單元的邏輯位址重新映射至第六實體程式化單元。
本發明範例實施例提出一種記憶體控制器,用於控制記憶體儲存裝置,此記憶體儲存裝置包括快閃記憶體模組,快閃記憶體模組具有複數個實體抹除單元,每一實體抹除單元具有複數個實體程式化單元。此記憶體控制器包括主機介面、記憶體介面、錯誤檢查與校正電路與記憶體管理電路。主機介面用以耦接至主機系統。記憶體介面,用以耦接至快閃記憶體模組。記憶體管理電路耦接至主機介面、記憶體介面與錯誤檢查與校正電路。記憶體管理電路用以透過溫度感測器偵測記憶體儲存裝置的運作溫度,並且判斷記憶體儲存裝置的運作溫度是否大於預設溫度。其中倘若記憶體儲存裝置的運作溫度非大於預設溫度時,記憶體管理電路更用以採用一第一資料儲存模式來存取快閃記憶體模組,並且倘若記憶體儲存裝置的運作溫度大於預設溫度時,記憶體管理電路更用以採用第二資料儲存模式來存取快閃記憶體模組,其中第一資料儲存模式不同於第二資料儲存模式。
在本發明之一範例實施例中,上述之記憶體管理電路更用以將第一資料寫入至第一實體程式化單元。另外,記憶體管理電路更用以從第一實體程式化單元中讀取第一資料並錯誤檢查與校正電路校正所讀取的第一資料。此外,記憶體管理電路還用以識別發生在從第一實體程式化單元中所讀取的第一資料中的錯誤位元的數目。在第二資料儲存模式中,記憶體管理電路判斷從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目是否超過第二數目且小於第一數目,並且倘若從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目超過第二數目且小於第一數目時,將校正後的第一資料寫入至第二實體程式化單元並且將映射第一實體程式化單元的邏輯位址重新映射至第二實體程式化單元。在第一資料儲存模式中,記憶體管理電路判斷從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目是否超過第一數目,並且倘若從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目超過第一數目時,將校正後的第一資料寫入至第三實體程式化單元並且將映射第一實體程式化單元的邏輯位址重新映射至第三實體程式化單元,其中第二數目小於第一數目。
在本發明之一範例實施例中,上述之每一複數個實體抹除單元的實體程式化單元包括複數個下實體程式化單元與複數個上實體程式化單元並且將資料寫入至下實體程式化單元的速度大於將資料寫入至上實體程式化單元的速度。此外,在該第一資料儲存模式中,上述記憶體管理電
路從主機系統中接收第二資料並且將第二資料寫入至第一實體抹除單元中,其中在第一資料儲存模式中第一實體抹除單元的下實體程式化單元與上實體程式化單元會被用來寫入資料。再者,在第二資料儲存模式中,記憶體管理電路從主機系統中接收第二資料並且將第二資料寫入至第二實體抹除單元中,其中在第二資料儲存模式中第二實體抹除單元的下實體程式化單元會被使用來寫入資料且第二實體抹除單元的上實體程式化單元不會被用來寫入資料。
在本發明之一範例實施例中,在該第一資料儲存模式中,上述記憶體管理電路會依據第一頻率來執行平均磨損運作;並且在該第二資料儲存模式中,記憶體管理電路會依據第二頻率來執行平均磨損運作。其中,在此平均磨損運作中,記憶體管理電路會從上述實體抹除單元之中選擇第三實體抹除單元,其中第三實體抹除單元已被寫入資料並且多個邏輯位址分別地映射至第三實體抹除單元的實體程式化單元。此外,在此平均磨損運作中,記憶體管理電路會從所述實體抹除單元之中選擇第四實體抹除單元,其中第四實體抹除單元未被寫入資料。再者,在此平均磨損運作中,記憶體管理電路會將儲存在第三實體抹除單元中的資料搬移至第四實體抹除單元並且將映射至第三實體抹除單元之實體程式化單元的邏輯位址重新映射至該第四實體抹除單元的實體程式化單元。
在本發明之一範例實施例中,在該第一資料儲存模式中,記憶體管理電路依據第三頻率來執行第一預防讀取干
擾運作;並且在該第二資料儲存模式中,記憶體管理電路依據第四頻率來執行第二預防讀取干擾運作,其中第四頻率大於第三頻率。其中,在第一預防讀取干擾運作中,記憶體管理電路從所述複數個實體抹除單元的所述複數個實體程式化單元之中的第三實體程式化單元中讀取第二資料,校正所讀取的第二資料並且判斷從第三實體程式化單元中所讀取的第二資料中的錯誤位元的數目是否超過第三數目。倘若從第三實體程式化單元中所讀取的第二資料中的錯誤位元的數目超過第三數目時,記憶體管理電路將校正後的第二資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的第四實體程式化單元並且將映射第三實體程式化單元的邏輯位址重新映射至第四實體程式化單元。在第二預防讀取干擾運作中,記憶體管理電路從所述複數個實體抹除單元的所述複數個實體程式化單元之中的第五實體程式化單元中讀取第三資料,校正第三資料,並且判斷從第五實體程式化單元中所讀取的第三資料中的錯誤位元的數目是否超過第四數目。倘若從第五實體程式化單元中所讀取的第三資料中的錯誤位元的數目超過第四數目時,記憶體管理電路將校正後的第三資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的第六實體程式化單元並且將映射第五實體程式化單元的邏輯位址重新映射至第六實體程式化單元。
本發明範例實施例提出一種記憶體儲存裝置,其包括連接器、快閃記憶體模組、溫度感測器與記憶體控制器。
連接器用以耦接至主機系統。快閃記憶體模組具有複數個實體抹除單元,每一實體抹除單元具有複數個實體程式化單元。記憶體控制器耦接至連接器與快閃記憶體模組。溫度感測器耦接至記憶體控制器並且用以感測一運作溫度。在此,記憶體控制器用以判斷記憶體儲存裝置的運作溫度是否大於預設溫度。其中倘若運作溫度非大於預設溫度時,記憶體管理電路更用以採用一第一資料儲存模式來存取快閃記憶體模組,並且倘若快閃記憶體儲存裝置的運作溫度大於預設溫度時,記憶體管理電路更用以採用第二資料儲存模式來存取快閃記憶體模組,其中第一資料儲存模式不同於第二資料儲存模式。
在本發明之一範例實施例中,上述之記憶體控制器更用以將第一資料寫入至第一實體程式化單元。另外,記憶體控制器更用以從第一實體程式化單元中讀取第一資料並錯誤檢查與校正電路校正所讀取的第一資料。此外,記憶體控制器還用以識別發生在從第一實體程式化單元中所讀取的第一資料中的錯誤位元的數目。在第二資料儲存模式中,記憶體控制器判斷從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目是否超過第二數目且小於第一數目,並且倘若從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目超過第二數目且小於第一數目時,將校正後的第一資料寫入至第二實體程式化單元並且將映射第一實體程式化單元的邏輯位址重新映射至第二實體程式化單元。在第一資料儲存模式中,記憶體控制器判斷從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目
是否超過第一數目,並且倘若從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目超過第一數目時,將校正後的第一資料寫入至第三實體程式化單元並且將映射第一實體程式化單元的邏輯位址重新映射至第三實體程式化單元,其中第二數目小於第一數目。
在本發明之一範例實施例中,上述之每一複數個實體抹除單元的實體程式化單元包括複數個下實體程式化單元與複數個上實體程式化單元並且將資料寫入至下實體程式化單元的速度大於將資料寫入至上實體程式化單元的速度。在該第一資料儲存模式中,上述記憶體控制器從主機系統中接收第二資料並且將第二資料寫入至第一實體抹除單元中,其中在第一資料儲存模式中第一實體抹除單元的下實體程式化單元與上實體程式化單元會被用來寫入資料。再者,在第二資料儲存模式中,記憶體控制器從主機系統中接收第二資料並且將第二資料寫入至第二實體抹除單元中,其中在第二資料儲存模式中第二實體抹除單元的下實體程式化單元會被使用來寫入資料且第二實體抹除單元的上實體程式化單元不會被用來寫入資料。
在本發明之一範例實施例中,在該第一資料儲存模式中,上述記憶體控制器會依據第一頻率來執行平均磨損運作;並且在該第二資料儲存模式中,記憶體控制器會依據第二頻率來執行平均磨損運作。其中,在此平均磨損運作中,記憶體控制器會從上述實體抹除單元之中選擇第三實體抹除單元,其中第三實體抹除單元已被寫入資料並且多
個邏輯位址分別地映射至第三實體抹除單元的實體程式化單元。此外,在此平均磨損運作中,記憶體控制器會從所述實體抹除單元之中選擇第四實體抹除單元,其中第四實體抹除單元未被寫入資料。再者,在此平均磨損運作中,記憶體控制器會將儲存在第三實體抹除單元中的資料搬移至第四實體抹除單元並且將映射至第三實體抹除單元之實體程式化單元的邏輯位址重新映射至該第四實體抹除單元的實體程式化單元。
在本發明之一範例實施例中,在該第一資料儲存模式中,記憶體控制器更用以依據第三頻率來執行第一預防讀取干擾運作;並且在該第二資料儲存模式中,記憶體控制器更用以依據第四頻率來執行第二預防讀取干擾運作,其中第四頻率大於第三頻率。其中,在第一預防讀取干擾運作中,記憶體控制器從所述複數個實體抹除單元的所述複數個實體程式化單元之中的第三實體程式化單元中讀取第二資料,校正所讀取的第二資料並且判斷從第三實體程式化單元中所讀取的第二資料中的錯誤位元的數目是否超過第三數目。倘若從第三實體程式化單元中所讀取的第二資料中的錯誤位元的數目超過第三數目時,記憶體控制器將校正後的第二資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的第四實體程式化單元並且將映射第三實體程式化單元的邏輯位址重新映射至第四實體程式化單元。在第二預防讀取干擾運作中,記憶體控制器從所述複數個實體抹除單元的所述複數個實體程式化單元
之中的第五實體程式化單元中讀取第三資料,校正第三資料,並且判斷從第五實體程式化單元中所讀取的第三資料中的錯誤位元的數目是否超過第四數目。倘若從第五實體程式化單元中所讀取的第三資料中的錯誤位元的數目超過第四數目時,記憶體控制器將校正後的第三資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的第六實體程式化單元並且將映射第五實體程式化單元的邏輯位址重新映射至第六實體程式化單元。
基於上述,本發明資料儲存方法、記憶體控制器與記憶體儲存裝置,其能夠根據記憶體儲存裝置的溫度使用適當的儲存方式來儲存資料,以避免資料遺失。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
為了能夠確保在記憶體儲存裝置中正確地儲存資料,本發明範例實施例所提出的資料儲存方法會透過溫度感測器偵測記憶體儲存裝置的運作溫度(S1),並且判斷快閃記憶體儲存裝置的運作溫度是否大於預設溫度(S3)。倘若快閃記憶體儲存裝置的運作溫度非大於預設溫度時,第一資料儲存模式會被用來存取快閃記憶體模組(S5);倘若快閃記憶體儲存裝置的運作溫度大於預設溫度時,第二資料儲存模式會被用來存取快閃記憶體模組(S7),其中第一資料儲存模式是不同於第二資料儲存模式並且快閃記憶體
儲存裝置的控制器之時脈速度於第一資料儲存模式及第二資料儲存模式時相同。為了能夠更明瞭本發明,以下將以數個範例實施例來進行說明。
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括快閃記憶體模組與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖1B是根據第一範例實施例所繪示的主機系統與記憶體儲存裝置。
請參照圖1B,主機系統1000一般包括電腦1100與輸入/輸出(input/output,I/O)裝置1106。電腦1100包括微處理器1102、隨機存取記憶體(random access memory,RAM)1104、系統匯流排1108與資料傳輸介面1110。輸入/輸出裝置1106包括如圖2的滑鼠1202、鍵盤1204、顯示器1206與印表機1252。必須瞭解的是,圖2所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可更包括其他裝置。
在本發明實施例中,記憶體儲存裝置100是透過資料傳輸介面1110與主機系統1000的其他元件耦接。藉由微處理器1102、隨機存取記憶體1104與輸入/輸出裝置1106的運作可將資料寫入至記憶體儲存裝置100或從記憶體儲存裝置100中讀取資料。例如,記憶體儲存裝置100可以是如圖2所示的隨身碟1256、記憶卡1214或固態硬碟
(Solid State Drive,SSD)1216等的記憶體儲存裝置。
一般而言,主機系統1000為可實質地與記憶體儲存裝置100配合以儲存資料的任意系統。雖然在本範例實施例中,主機系統1000是以電腦系統來作說明,然而,在本發明另一範例實施例中主機系統1000可以是數位相機、攝影機、通信裝置、音訊播放器或視訊播放器等系統。例如,在主機系統為數位相機(攝影機)1310時,記憶體儲存裝置則為其所使用的SD卡1312、MMC卡1314、記憶棒(memory stick)1316、CF卡1318或嵌入式儲存裝置1320(如圖3所示)。嵌入式儲存裝置1320包括嵌入式多媒體卡(Embedded MMC,eMMC)。值得一提的是,嵌入式多媒體卡是直接耦接於主機系統的基板上。
圖4是根據第一範例實施例所繪示之記憶體儲存裝置的概要方塊圖。
請參照圖4,記憶體儲存裝置100包括連接器102、記憶體控制器104、快閃記憶體模組106與溫度感測器(thermal sensor)108。
在本範例實施例中,連接器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)標準、安全數位(Secure Digital,SD)介面標準、超高速一代(Ultra High Speed-I,UHS-I)介面標準、超高速二代(Ultra High Speed-II,UHS-II)介面標準、記憶棒(Memory Stick,MS)介面標準、多媒體儲存卡(Multi Media Card,MMC)介面標準、崁入式多媒體儲存卡(Embedded Multimedia Card,eMMC)介面標準、通用快閃記憶體(Universal Flash Storage,UFS)介面標準、小型快閃(Compact Flash,CF)介面標準、整合式驅動電子介面(Integrated Device Electronics,IDE)標準或其他適合的標準。
記憶體控制器104用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統1000的指令在快閃記憶體模組106中進行資料的寫入、讀取與抹除等運作。
快閃記憶體模組106是耦接至記憶體控制器104,並且用以儲存主機系統1000所寫入之資料。快閃記憶體模組106具有實體抹除單元304(0)~304(R)。例如,實體抹除單元304(0)~304(R)可屬於同一個記憶體晶粒(die)或者屬於不同的記憶體晶粒。每一實體抹除單元分別具有複數個實體程式化單元,並且屬於同一個實體抹除單元之實體程式化單元可被獨立地寫入且被同時地抹除。例如,每一實體抹除單元是由128個實體程式化單元所組成。然而,必須瞭解的是,本發明不限於此,每一實體抹除單元亦可由64
個實體程式化單元、256個實體程式化單元或其他任意個實體程式化單元所組成。
更詳細來說,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。每一實體程式化單元通常包括資料位元區與冗餘位元區。資料位元區包含多個實體存取位址用以儲存使用者的資料,而冗餘位元區用以儲存系統的資料(例如,控制資訊與錯誤更正碼)。在本範例實施例中,每一個實體程式化單元的資料位元區中會包含4個實體存取位址,且一個實體存取位址的大小為512位元組(byte)。然而,在其他範例實施例中,資料位元區中也可包含數目更多或更少的實體存取位址,本發明並不限制實體存取位址的大小以及個數。例如,在一範例實施例中,實體抹除單元為實體區塊,並且實體程式化單元為實體頁面或實體扇區,但本發明不以此為限。
在本範例實施例中,快閃記憶體模組106為多階儲存單元(Multi Level Cell,MLC)NAND快閃記憶體模組,即一個記憶胞中可儲存至少2個位元資料。然而,本發明不限於此,快閃記憶體模組106亦可是單階儲存單元(Single Level Cell,SLC)NAND型快閃記憶體、複數階儲存單元(Trinary Level Cell,TLC)NAND型快閃記憶體模組、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
溫度感測器108耦接至記憶體控制器104並且用以感
測記憶體儲存裝置100的運作溫度。具體來說,記憶體儲存裝置100在運作時,其電子元件會產生熱能而導致記憶體儲存裝置100的運作溫度上升。在本範例實施例中,溫度感測器108會將關於目前之運作溫度的資訊傳送給記憶體控制器104。例如,溫度感測器108會週期地將關於目前之運作溫度的資訊傳送給記憶體控制器104或者根據記憶體控制器104的詢問訊息將關於目前之運作溫度的資訊傳送給記憶體控制器104。
圖5是根據一範例實施例所繪示之記憶體控制器的概要方塊圖。必須瞭解的是,圖5所示之記憶體控制器的結構僅為一範例,本發明不以此為限。
請參照圖5,記憶體控制器104包括記憶體管理電路202、主機介面204與記憶體介面206。
記憶體管理電路202用以控制記憶體控制器104的整體運作。具體來說,記憶體管理電路202具有多個控制指令,並且在記憶體儲存裝置100運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。
在本範例實施例中,記憶體管理電路202的控制指令是以韌體型式來實作。例如,記憶體管理電路202具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置100運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在本發明另一範例實施例中,記憶體管理電路202的
控制指令亦可以程式碼型式儲存於快閃記憶體模組106的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路202具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有驅動碼,並且當記憶體控制器104被致能時,微處理器單元會先執行此驅動碼段來將儲存於快閃記憶體模組106中之控制指令載入至記憶體管理電路202的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。
此外,在本發明另一範例實施例中,記憶體管理電路202的控制指令亦可以一硬體型式來實作。例如,記憶體管理電路202包括微控制器、記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路。記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路是耦接至微控制器。其中,記憶胞管理電路用以管理快閃記憶體模組106的實體抹除單元;記憶體寫入電路用以對快閃記憶體模組106下達寫入指令以將資料寫入至快閃記憶體模組106中;記憶體讀取電路用以對快閃記憶體模組106下達讀取指令以從快閃記憶體模組106中讀取資料;記憶體抹除電路用以對快閃記憶體模組106下達抹除指令以將資料從快閃記憶體模組106中抹除;而資料處理電路用以處理欲寫入至快閃記憶體模組106的資料以及從快閃記憶體模組106中讀取的資料。
主機介面204是耦接至記憶體管理電路202並且用以接收與識別主機系統1000所傳送的指令與資料。也就是說,主機系統1000所傳送的指令與資料會透過主機介面204來傳送至記憶體管理電路202。在本範例實施例中,主機介面204是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面204亦可以是相容於PATA標準、IEEE 1394標準、PCI Express標準、USB標準、SD標準、UHS-I介面標準、UHS-II介面標準、MS標準、MMC標準、eMMC介面標準、UFS介面標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面206是耦接至記憶體管理電路202並且用以存取快閃記憶體模組106。也就是說,欲寫入至快閃記憶體模組106的資料會經由記憶體介面206轉換為快閃記憶體模組106所能接受的格式。
在本發明一範例實施例中,記憶體控制器104還包括緩衝記憶體252、電源管理電路254以及錯誤檢查與校正電路256。
緩衝記憶體252是耦接至記憶體管理電路202並且用以暫存來自於主機系統1000的資料與指令或來自於快閃記憶體模組106的資料。
電源管理電路254是耦接至記憶體管理電路202並且用以控制記憶體儲存裝置100的電源。
錯誤檢查與校正電路256是耦接至記憶體管理電路202並且用以執行錯誤檢查與校正程序以確保資料的正確
性。在本範例實施例中,當記憶體管理電路202從主機系統1000中接收到寫入指令時,錯誤檢查與校正電路256會為對應此寫入指令的資料產生對應的錯誤檢查與校正碼(Error Checking and Correcting Code,ECC Code),並且記憶體管理電路202會將對應此寫入指令的資料與對應的錯誤檢查與校正碼寫入至快閃記憶體模組106中。之後,當記憶體管理電路202從快閃記憶體模組106中讀取資料時會同時讀取此資料對應的錯誤檢查與校正碼,並且錯誤檢查與校正電路256會依據此錯誤檢查與校正碼對所讀取的資料執行錯誤檢查與校正程序。具體來說,錯誤檢查與校正電路256會被設計能夠校正一數目的錯誤位元(以下稱為最大可校正錯誤位元數)。例如,最大可校正錯誤位元數為48。倘若發生在所讀取之資料的錯誤位元的數目非大於48個時,錯誤檢查與校正電路256就能夠依據錯誤校正碼將錯誤位元校正回正確的值。反之,錯誤檢查與校正電路256就會回報錯誤校正失敗且記憶體管理電路202會將指示資料已遺失的訊息傳送給主機系統1000。
圖6與圖7是根據一範例實施例所繪示之管理快閃記憶體模組的範例示意圖。
必須瞭解的是,在此描述快閃記憶體模組106之實體抹除單元的運作時,以“提取”、“交換”、“分組”、“輪替”等詞來操作實體抹除單元是邏輯上的概念。也就是說,快閃記憶體模組之實體抹除單元的實際位置並未更動,而是邏輯上對快閃記憶體模組的實體抹除單元進行操作。
請參照圖6,記憶體控制器104(或記憶體管理電路202)會將快閃記憶體模組106的實體抹除單元304(0)~304(R)邏輯地分組為儲存區402、系統區404與取代區406。
邏輯上屬於儲存區402的實體抹除單元是用以儲存主機系統1000所寫入的資料。也就是說,記憶體儲存裝置100會使用分組為儲存區402的實體抹除單元來實際地儲存主機系統1000所寫入的資料。更詳細來說,記憶體控制器104(或記憶體管理電路202)會將儲存區402分組為資料區412與閒置區414,其中資料區412的實體抹除單元(亦稱為資料實體抹除單元)是已儲存資料的實體抹除單元,而閒置區414的實體抹除單元(亦稱為閒置實體抹除單元)是用以替換資料區412的實體抹除單元。因此,閒置區414的實體抹除單元為空或可使用的實體抹除單元,即無記錄資料或標記為已沒用的無效資料。也就是說,在閒置區414中的實體抹除單元已被執行抹除運作,或者當閒置區414中的實體抹除單元被提取用於儲存資料之前所提取之實體抹除單元會被執行抹除運作。因此,閒置區414的實體抹除單元為可被使用的實體抹除單元。具體來說,當一個實體抹除單元從閒置區414中被選擇來儲存有效資料時,此實體抹除單元會被關聯至資料區412。並且,記憶體控制器104(或記憶體管理電路202)會對在資料區412中所有實體程式化單元所儲存的資料皆為無效資料的實體抹除單元執行抹除操作,並且將抹除後的實體抹除單元關聯至閒置區414,由此實體抹除單元可輪替地來儲存主機系統1000
所寫入的資料。
邏輯上屬於系統區404的實體抹除單元是用以記錄系統資料,其中此系統資料包括關於記憶體晶片的製造商與型號、記憶體晶片的實體抹除單元數、每一實體抹除單元的實體程式化單元數等。
邏輯上屬於取代區406中的實體抹除單元是替代實體抹除單元。例如,快閃記憶體模組106於出廠時會預留4%的實體抹除單元作為更換使用。也就是說,當資料區412、閒置區414與系統區404中的實體抹除單元損毀時,預留於取代區406中的實體抹除單元是用以取代損壞的實體抹除單元(即,壞實體抹除單元(bad block))。因此,倘若取代區406中仍存有正常之實體抹除單元且發生實體抹除單元損毀時,記憶體控制器104會從取代區406中提取正常的實體抹除單元來更換損毀的實體抹除單元。倘若取代區406中無正常之實體抹除單元且發生實體抹除單元損毀時,則記憶體控制器104會將整個記憶體儲存裝置100宣告為寫入保護(write protect)狀態,而無法再寫入資料。
特別是,儲存區402、系統區404與取代區406之實體抹除單元的數量會依據不同的記憶體規格而有所不同。此外,必須瞭解的是,在記憶體儲存裝置100的運作中,實體抹除單元關聯至儲存區402、系統區404與取代區406的分組關係會動態地變動。例如,當儲存區402中的實體抹除單元損壞而被取代區406的實體抹除單元取代時,則原本取代區406的實體抹除單元會被關聯至儲存區402。
請參照圖7,如上所述,資料區412與閒置區414的實體抹除單元是以輪替方式來儲存主機系統1000所寫入之資料。在本範例實施例中,記憶體控制器104(或記憶體管理電路202)會配置邏輯位址LBA(0)~LBA(H)給主機系統1000以進行資料的存取。
每個邏輯位址是由數個扇區(sector)所組成。例如,在本範例實施例中,每一邏輯位址是由4個扇區所組成,例如,扇區LSA(0)~LSA(3)是屬於邏輯位址LBA(0);扇區LSA(4)~LSA(7)是屬於邏輯位址LBA(1);扇區LSA(8)~LSA(11)是屬於邏輯位址LBA(2)...等。但本發明不限於此,在本發明另一範例實施例中,邏輯位址亦可是由8個扇區所組成或是由16個扇區所組成。
例如,記憶體控制器104(或記憶體管理電路202)會維護邏輯位址-實體位址映射表來記錄邏輯位址與實體程式化單元之間的映射關係。也就是說,當主機系統1000欲在扇區中存取資料時,記憶體控制器104(或記憶體管理電路202)會確認此扇區所屬的邏輯位址,並且在此邏輯位址所映射的實體程式化單元中來存取資料。
例如,當記憶體控制器104(或記憶體管理電路202)開始使用實體抹除單元304(0)來儲存主機系統1000欲寫入的資料(即,實體抹除單元304(0)從閒置區414中被提取並關聯至資料區412)時,不管主機系統1000是寫入那個邏輯位址,記憶體控制器104(或記憶體管理電路202)會將資料依序地寫入至實體抹除單元304(0)的實體程式化單
元;而當記憶體控制器104(或記憶體管理電路202)開始使用實體抹除單元304(1)來儲存主機系統1000欲寫入的資料(即,實體抹除單元304(1)從閒置區414中被提取並關聯至資料區412)時,不管主機系統1000是寫入那個邏輯位址,記憶體控制器104(或記憶體管理電路202)會將資料依序地寫入至實體抹除單元304(1)的實體程式化單元中。也就是說,當寫入主機系統1000欲寫入的資料時,記憶體控制器104(或記憶體管理電路202)會依序地使用一個實體抹除單元內的實體程式化單元來寫入資料,並且當此實體抹除單元內的實體程式化單元被使用完後才會再選擇另一個無儲存資料的實體抹除單元(即,從閒置區414中提取一個實體抹除單元),並且在新選擇之實體抹除單元的實體程式化單元中繼續依序地寫入資料。在本範例實施例中,在記憶體控制器104(或記憶體管理電路202)將資料寫入至實體程式化單元後,記憶體控制器104(或記憶體管理電路202)會更新邏輯位址-實體位址映射表以正確地記錄邏輯位址與實體程式化單元的映射關係。
圖8是根據本發明範例實施例繪示邏輯位址-實體程式化單元映射表的範例。
請參照圖8,邏輯位址-實體位址映射表800包括邏輯位址欄位802以及實體位址欄位804。邏輯位址欄位802記錄所配置的每個邏輯位址的編號並且實體位址欄位804記錄每個邏輯位址映射的實體程式化單元。在記憶體儲存裝置100為全新且未曾被用來儲存資料的狀態下,實體抹
除單元304(0)~304(N)會被關聯至閒置區414,並且在邏輯位址-實體位址映射表800中記錄對應每一個邏輯位址所映射之實體程式單元的欄位會被標記為空值(例如,NULL)。
圖9~圖11是根據本發明範例實施例所繪示執行寫入運作而更新邏輯位址-實體位址映射表的一範例。
請參照圖9,倘若在圖8所示的狀態下主機系統1000欲儲存資料至邏輯位址LBA(1)時,記憶體控制器104(或記憶體管理電路202)會從閒置區414選擇一個實體抹除單元(例如,實體抹除單元304(0))並且將主機系統1000欲寫入的資料寫入至實體程式化單元PBA(0-1)。在完成資料的寫入後,記憶體控制器104(或記憶體管理電路202)會在邏輯位址-實體位址映射表800中將邏輯位址LBA(1)映射至實體程式化單元PBA(0-1)。
請參照圖10,倘若在圖9的狀態下主機系統1000欲儲存資料至邏輯位址LBA(129)時,記憶體控制器104(或記憶體管理電路202)會將主機系統1000欲寫入的資料寫入至實體程式化單元PBA(0-2)中。此時,記憶體控制器104(或記憶體管理電路202)會在邏輯位址-實體位址映射表800中將邏輯位址LBA(129)映射至實體程式化單元PBA(0-2)。
請參照圖11,倘若在圖10的狀態下主機系統1000欲儲存資料至邏輯位址LBA(1)時,記憶體控制器104(或記憶體管理電路202)會將主機系統1000欲寫入的資料寫入至
實體程式化單元PBA(0-3)中。此時,記憶體控制器104(或記憶體管理電路202)會在邏輯位址-實體位址映射表800中將邏輯位址LBA(1)映射至實體程式化單元PBA(0-3)。
如上所述,在從實體程式化單元中讀取資料時,記憶體控制器104(或錯誤檢查與校正電路256)會根據對應的錯誤檢查與校正碼來判斷所讀取的資料是否存有錯誤位元並且嘗試對錯誤位元進行錯誤校正。特別是,在錯誤位元的數目小於最大可校正錯誤位元數的狀態下,除了將錯誤位元進行校正之外,記憶體控制器104(或記憶體管理電路202)還會識別發在所讀取之資料上的錯誤位元的數目並且根據溫度感測器108的訊號識別目前記憶體儲存裝置100的運作溫度,以決定是否搬移資料。
例如,在如圖11所示的儲存狀態下,主機系統1000欲讀取儲存於邏輯位址LBA(1)中的資料時,記憶體控制器104(或記憶體管理電路202)會從實體程式化單元PBA(0-3)讀取資料並且識別從第一實體程式化單元所讀取的資料的錯誤位元與目前記憶體儲存裝置100的運作溫度。倘若發生在所讀取之資料上的錯誤位元的數目大於第一數目並且目前記憶體儲存裝置100的運作溫度非大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會在將所讀取之資料上的錯誤位元校正後將校正後的資料寫入至下一個空的實體程式化單元(例如,實體程式化單元PBA(0-4))並且將邏輯位址LBA(1)重新映射至實體程式化單元PBA(0-4)。倘若發在所讀取之資料上的錯誤位元的數目非
大於第一數目但大於第二數目並且目前記憶體儲存裝置100的運作溫度大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會在將所讀取之資料上的錯誤位元校正後將校正後的資料寫入至下一個空的實體程式化單元(,例如,實體程式化單元PBA(0-4))並且將邏輯位址LBA(1)重新映射至實體程式化單元PBA(0-4)。在此,第一數目是大於第二數目,例如,在最大可校正錯誤位元數為48的例子中,第一數目為40並且第二數目為20。
具體來說,當發生在所讀取之資料上的錯誤位元的數目大於第一數目且非大於最大可校正錯誤位元數時,雖然錯誤位元可被校正,但資料的錯誤程度太高,因此,資料很可能在數次讀取後就會遺失。在本範例實施例中,記憶體控制器104(或記憶體管理電路202)會將校正後的資料重新儲存至另一個實體程式化單元,以避免資料遺失。特別是,在記憶體儲存裝置100的運作溫度大於預設溫度時,快閃記憶體模組106的穩定度會下降,因此,在發生在所讀取之資料上的錯誤位元的數目非大於第一數目且已大於第二數目時,記憶體控制器104(或記憶體管理電路202)亦會將校正後的資料重新儲存至另一個實體程式化單元,以避免資料遺失。在此,將校正後的資料重新儲存至另一個實體程式化單元並且重新調整邏輯位址與實體位址之間的映射關係的運作稱為”預防讀取干擾(read disturb)運作”。相對地,倘若發生在所讀取之資料上的錯誤位元的數目非大於第二數目時,不管記憶體儲存裝置100的運作溫
度大於預設溫度,記憶體控制器104(或記憶體管理電路202)不會執行上述預防讀取干擾運作。例如,在本範例實施例中,預設溫度被設定為70,但本發明不限於此。也就是說,在記憶體儲存裝置100的運作溫度非大於預設溫度時,記憶體控制器104(或記憶體管理電路202)是比較所讀取之資料上的錯誤位元的數目與第一數目來決定是否執行預防讀取干擾運作(在第一範例實施例中,此亦稱為第一資料儲存模式);並且在記憶體儲存裝置100的運作溫度大於預設溫度時,記憶體控制器104(或記憶體管理電路202)是比較所讀取之資料上的錯誤位元的數目與第二數目來決定是否執行預防讀取干擾運作(在第一範例實施例中,此亦稱為第二資料儲存模式)。其中值得說明的是,在本範例實施例中,第一資料儲存模式與第二資料儲存模式是可以在實施條件滿足時,對經過另一資料儲存模式處理過的資料,再以其儲存模式進行再處理。
圖12是根據第一範例實施例所繪示之資料儲存方法的流程圖。
請參照圖12,當從主機系統1000中接收到欲存取第一邏輯位址的讀取指令時,在步驟S1201中,記憶體控制器104(或記憶體管理電路202)會從映射第一邏輯位址的第一實體程式化單元中讀取資料(以下稱為第一資料)。
在步驟S1203中,記憶體控制器104(或記憶體管理電路202)會判斷發生在第一資料中的錯誤位元的數目是否大於最大可校正錯誤位元數。具體來說,記憶體控制器104(或
錯誤檢查與校正電路256)會根據對應的錯誤檢查與校正碼來判斷第一資料是否存有錯誤位元並且嘗試對錯誤位元進行校正,由此識別第一資料內之錯誤位元的數目。
倘若發生在第一資料中的錯誤位元的數目大於最大可校正錯誤位元數時,在步驟S1205中,記憶體控制器104(或記憶體管理電路202)會傳送錯誤訊息給主機系統1000。之後,圖12的流程會被終止。
倘若發生在第一資料中的錯誤位元的數目非大於最大可校正錯誤位元數時,在步驟S1207中,記憶體控制器104(或記憶體管理電路202)會將校正後的第一資料傳送給主機系統1000。之後,在步驟S1209中,記憶體控制器104(或記憶體管理電路202)會判斷發生在第一資料中的錯誤位元的數目是否大於第一數目。
倘若發生在從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目大於第一數目時,在步驟S1211中,記憶體控制器104(或記憶體管理電路202)會將校正後的第一資料寫入至第三實體程式化單元。然後,在步驟S1213中,將第一邏輯位址重新映射至第三實體程式化單元。例如,記憶體控制器104(或記憶體管理電路202)會在邏輯位址-實體位址表中記錄第一邏輯位址重新映射至第三實體程式化單元的資訊。
倘若發生在從第一實體程式化單元中讀取的第一資料中的錯誤位元的數目非大於第一數目時,在步驟S1215中,記憶體控制器104(或記憶體管理電路202)會判斷目前
記憶體儲存裝置100的運作溫度是否大於預設溫度。倘若目前記憶體儲存裝置100的運作溫度非大於預設溫度時,則圖12的流程會被終止。
倘若目前記憶體儲存裝置100的運作溫度大於預設溫度時,在步驟S1217中,記憶體控制器104(或記憶體管理電路202)會判斷發生在第一資料中的錯誤位元的數目是否大於第二數目。
倘若發生在第一資料中的錯誤位元的數目大於第二數目時,在步驟S1219中,記憶體控制器104(或記憶體管理電路202)會將校正後的第一資料寫入至第二實體程式化單元。然後,在步驟S1221中,將第一邏輯位址重新映射至第二實體程式化單元。在圖12的流程中,第二實體程式化單元可以是相同或不同於第三實體程式化單元。
倘若發生在第一資料中的錯誤位元的數目非大於第二數目時,則圖12的流程會被終止。
第二範例實施例的記憶體儲存裝置的結構與第一範例實施例的記憶體儲存裝置是類似,其不同之處在於第二範例實施例的記憶體控制器(或記憶體管理電路)會根據記憶體儲存裝置的運作溫度以不同的寫入模式來寫入資料。以下將使用第一範例實施例的元件標號來說明第二範例實施例的差異之處。
在第二範例實施例中,快閃記憶體模組106為MLC NAND型快閃記憶體模組,並每個實體抹除單元的實體程
式化單元依據其存取速度可被區分為下實體程式化單元(亦稱為快速實體程式化單元)與上實體程式化單元(亦稱為慢速實體程式化單元)。例如,實體抹除單元304(0)的實體程式化單元PBA(0-1)、PBA(0-3)、PBA(0-5)...PBA(0-(K-1))為下實體程式化單元,而實體程式化單元PBA(0-2)、PAB(0-4)、PBA(0-6)...PBA(K)為上實體程式化單元,其中K為偶整數。然而,必須瞭解的是,在本發明另一範例實施例中,快閃記憶體模組106亦可為TLC NAND型快閃記憶體模組或其他多階記憶胞快閃記憶體晶片。例如,快閃記憶體模組106為TLC NAND型快閃記憶體模組,並每個實體抹除單元的實體程式化單元依據其存取速度可被區分為下實體程式化單元(亦稱為快速實體程式化單元)、中實體程式化單元(亦稱為中速實體程式化單元)與上實體程式化單元(亦稱為慢速實體程式化單元)。
特別是,當欲將資料寫入至實體程式化單元時,記憶體控制器104(或記憶體管理電路202)會判斷記憶體儲存裝置100的運作溫度。倘若記憶體儲存裝置100的運作溫度非大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會以第一資料儲存模式來將此資料寫入至快閃記憶體模組106;並且倘若記憶體儲存裝置100的運作溫度大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會以第二資料儲存模式來將頁資料寫入至快閃記憶體模組106。例如,在本範例實施例中,預設溫度可被設定為70,
但本發明不限於此。
在第二範例實施例中的在第一資料儲存模式中,記憶體控制器104(或記憶體管理電路202)會使用下實體程式化單元與上實體程式化單元來儲存主機系統1000欲寫入的資料,而在第二資料儲存模式中,記憶體控制器104(或記憶體管理電路202)會使用下實體程式化單元來儲存主機系統1000欲寫入的資料,而不使用上實體程式化單元來儲存資料。也就是說,在第一資料儲存模式中,快閃記憶體模組106的下實體程式化單元與上實體程式化單元都會被選擇來儲存資料,而在第二資料儲存模式中僅下實體程式化單元會被選擇來儲存資料。特別是,下實體程式化單元與上實體程式化單元之間具有耦合效應,即當上實體程式化單元發生異常時,對應之下實體程式化單元亦可能產生錯誤。因此,以第二資料儲存模式所寫入之資料的可靠度會高於以第一資料儲存模式所寫入的資料。
值得一提的是,本發明不限於此MLC NAND型快閃記憶體模組,在TLC NAND型快閃記憶體模組的例子中,在上述第一資料儲存模式中,記憶體控制器104(或記憶體管理電路202)會使用下實體程式化單元、中實體程式化單元與上實體程式化單元來儲存主機系統1000欲寫入的資料,而在上述第二資料儲存模式中,記憶體控制器104(或記憶體管理電路202)會使用下實體程式化單元來儲存主機系統1000欲寫入的資料,而不使用中實體程式化單元與上實體程式化單元來儲存資料。
使用下實體程式化單元與上實體程式化單元來儲存資料(即,第一資料儲存模式)的機制已描述於第一範例實施例的圖9~11中,在此不再重複描述。
圖13~圖15是根據本發明範例實施例所繪示以第二模式進行寫入運作而更新邏輯位址-實體位址映射表的一範例。
請參照圖13,倘若在圖8所示的狀態下主機系統1000欲寫入頁資料至邏輯位址LBA(1)時,記憶體控制器104(或記憶體管理電路202)會從閒置區414選擇一個實體抹除單元(例如,實體抹除單元304(0))並且將主機系統1000欲寫入的頁資料寫入至實體程式化單元PBA(0-1)。在完成資料的寫入後,記憶體控制器104(或記憶體管理電路202)會在邏輯位址-實體位址映射表800中將邏輯位址LBA(1)映射至實體程式化單元PBA(0-1)。
請參照圖14,倘若在圖13的狀態下主機系統1000欲寫入頁資料至邏輯位址LBA(129)時,記憶體控制器104(或記憶體管理電路202)會將主機系統1000欲寫入的頁資料寫入至實體程式化單元PBA(0-3)中。此時,記憶體控制器104(或記憶體管理電路202)會在邏輯位址-實體位址映射表800中將邏輯位址LBA(129)映射至實體程式化單元PBA(0-3)。
請參照圖15,倘若在圖14的狀態下主機系統1000欲寫入頁資料至邏輯位址LBA(1)時,記憶體控制器104(或記憶體管理電路202)會將主機系統1000欲寫入的頁資料寫
入至實體程式化單元PBA(0-5)中。此時,記憶體控制器104(或記憶體管理電路202)會在邏輯位址-實體位址映射表800中將邏輯位址LBA(1)映射至實體程式化單元PBA(0-5)。
在圖13~15的寫入運作中,記憶體控制器104(或記憶體管理電路202)是選擇下實體程式化單元(即,實體程式化單元PBA(0-1)、實體程式化單元PBA(0-3)、實體程式化單元PBA(0-5))來寫入頁資料,而不會使用上實體程式化單元(即,第二資料儲存模式)。
圖16是根據第二範例實施例所繪示的資料儲存方法的流程圖。
請參照圖16,在步驟S1601中,記憶體控制器104(或記憶體管理電路202)接收欲儲存的資料(以下稱為第二資料)。
在步驟S1603中,記憶體控制器104(或記憶體管理電路202)會判斷目前記憶體儲存裝置100的運作溫度是否大於預設溫度。具體來說,記憶體控制器104(或記憶體管理電路202)會根據溫度感測器108所傳送的訊號來識別目前記憶體儲存裝置100的運作溫度。
倘若目前記憶體儲存裝置100的運作溫度非大於預設溫度時,則在步驟S1605中,記憶體控制器104(或記憶體管理電路202)會使用第一資料儲存模式來將第二資料寫入至第一實體抹除單元(例如,實體抹除單元304(0)),其中第一實體抹除單元的下實體程式化單元與上實體程式化單
元皆會被用來儲存資料。
倘若目前記憶體儲存裝置100的運作溫度大於預設溫度時,則在步驟S1607中,記憶體控制器104(或記憶體管理電路202)會使用第二資料儲存模式來將第二資料寫入至第二實體抹除單元(例如,實體抹除單元304(1))。在第二資料儲存模式中,記憶體控制器104(或記憶體管理電路202)會使用第二實體抹除單元的下實體程式化單元來儲存資料,但不會使用上實體程式化單元來儲存資料。
第三範例實施例的記憶體儲存裝置的結構與第一範例實施例的記憶體儲存裝置是類似,其不同之處在於第三範例實施例的記憶體控制器(或記憶體管理電路)會根據記憶體儲存裝置的運作溫度以不同的頻率來執行平均磨損運作。以下將使用第一範例實施例的元件標號來說明第三範例實施例的差異之處。
一般來說,經常在資料區412與閒置區414之間輪替的實體抹除單元稱為動態實體區塊。另外,在資料區412中往往有一些資料寫入後就長時間未曾更動。例如,當使用者儲存100首喜愛的MP3歌曲後就不曾再去刪除或更新。儲存此類資料的實體區塊一般稱為靜態實體抹除單元。靜態實體抹除單元中的資料由於很少更動或更新,因此其抹除次數會相對低(即,磨損程度較低)。在本範例實施中,記憶體控制器104(或記憶體管理電路202)會在資料區412與閒置區414之間執行實體程式化單元交換的動
作,以使得資料區412中較少輪替的實體抹除單元有機會進行輪替,由此有效地平均實體抹除單元的磨損。在此,將資料區412的實體抹除單元與閒置區414的實體抹除單元進行交換的運作稱為平均磨損運作。
例如,在平均磨損運作中,記憶體控制器104(或記憶體管理電路202)會從屬於資料區412的實體抹除單元中選擇具有最小抹除次數的實體抹除單元(例如,實體抹除單元304(0));從屬於閒置區414的實體抹除單元中選擇具有最大抹除次數的實體抹除單元(例如,實體抹除單元304(D+1));將儲存在實體抹除單元304(0)中的資料搬移至實體抹除單元304(D+1);並且將原先映射實體抹除單元304(0)之實體程式化單元的邏輯位址重新映射至實體抹除單元304(D+1)的實體程式化單元。
一般來說,記憶體控制器104(或記憶體管理電路202)會記錄快閃記憶體模組106被執行抹除運作的次數。每當執行抹除運作的次數達到預設門檻值時,記憶體控制器104(或記憶體管理電路202)會執行上述平均磨損運作。例如,每當執行1000次抹除運作時,記憶體控制器104(或記憶體管理電路202)會執行一次平均磨損運作。
特別是,在第三範例實施例中,記憶體控制器104(或記憶體管理電路202)會判斷記憶體儲存裝置100的運作溫度。倘若記憶體儲存裝置100的運作溫度非大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會以第一頻率來執行平均磨損運作(即,每當執行抹除運作的次數達到
預設門檻值時執行一次平均磨損運作)。倘若記憶體儲存裝置100的運作溫度大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會以第二頻率來執行平均磨損運作(即,每當執行抹除運作的次數達到另一個門檻值時執行一次平均磨損運作)。在第三範例實施例中,以第一頻率來執行平均磨損運作亦稱為第一資料儲存模式;並且以第二頻率來執行平均磨損運作亦稱為第二資料儲存模式。在本範例實施例中,第一頻率是小於第二頻率。例如,第二頻率是指每當執行500次抹除運作時,記憶體控制器104(或記憶體管理電路202)會執行一次平均磨損運作。然而,必須瞭解的是,本發明不限於此,在本發明另一範例實施例中,第二頻率亦可是小於第一頻率。
圖17是根據第三範例實施例所繪示的資料儲存方法的流程圖。
請參照圖17,在步驟S1701中,記憶體控制器104(或記憶體管理電路202)會判斷目前記憶體儲存裝置100的運作溫度是否大於預設溫度。具體來說,記憶體控制器104(或記憶體管理電路202)會根據溫度感測器108所傳送的訊號來識別目前記憶體儲存裝置100的運作溫度。
倘若目前記憶體儲存裝置100的運作溫度非大於預設溫度時,則在步驟S1703中,記憶體控制器104(或記憶體管理電路202)會根據第一頻率來執行平均磨損運作。
倘若目前記憶體儲存裝置100的運作溫度大於預設溫度時,則在步驟S1705中,記憶體控制器104(或記憶體管
理電路202)會根據第二頻率來執行平均磨損運作。
例如,每次執行平均磨損運作時,記憶體控制器104(或記憶體管理電路202)會從快閃記憶體模組106的實體抹除單元之中選擇一個已寫入資料的實體抹除單元(以下稱為第三實體抹除單元)並且從快閃記憶體模組106的實體抹除單元之中選擇一個未被寫入資料的實體抹除單元(以下稱為第四實體抹除單元),其中第四實體抹除單元的抹除次數大於第三實體抹除單元的抹除次數。之後,記憶體控制器104(或記憶體管理電路202)會將儲存在第三實體抹除單元中的資料搬移至第四實體抹除單元,並且將原先映射至第三實體抹除單元的邏輯位址重新映射至第四實體抹除單元的實體程式化單元。
第四範例實施例的記憶體儲存裝置的結構與第一範例實施例的記憶體儲存裝置是類似,其不同之處在於第一範例實施例的記憶體控制器(或記憶體管理電路)是在執行讀取指令時,一併執行預防讀取干擾運作,而在第四範例中記憶體控制器(或記憶體管理電路)更會根據記憶體儲存裝置的運作溫度以不同週期來預防讀取干擾運作。
在本範例實施例中,記憶體控制器104(或記憶體管理電路202)會在記憶體儲存裝置100每運作一段時間後,執行預防讀取干擾運作。特別是,在記憶體儲存裝置100的運作溫度大於預設溫度時,快閃記憶體模組106的穩定度會下降。因此,在本範例實施例中,當記憶體儲存裝置100
的運作溫度大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會更頻繁地執行預防讀取干擾運作。
例如,記憶體控制器104(或記憶體管理電路202)會監控記憶體儲存裝置100的運作溫度。倘若記憶體儲存裝置100的運作溫度非大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會以第三頻率來執行預防讀取干擾運作。倘若記憶體儲存裝置100的運作溫度大於預設溫度時,記憶體控制器104(或記憶體管理電路202)會以第四頻率來執行預防讀取干擾運作。在本範例實施例中,第四頻率是大於第三頻率。例如,第三頻率是指記憶體儲存裝置100每運作1小時,則執行一次預防讀取干擾運作,而第三頻率是指記憶體儲存裝置100每運作0.5小時,則執行一次預防讀取干擾運作,但本發明不限於此。特別是,在另一範例實施例中,倘若記憶體儲存裝置100的運作溫度非大於預設溫度時,記憶體控制器104(或記憶體管理電路202)亦可不週期地執行預防讀取干擾運作(即,第三頻率被設為0)。在第四範例實施例中,以第三頻率來執行預防讀取干擾運作亦稱為第一資料儲存模式;並且以第四頻率來執行預防讀取干擾運作亦稱為第二資料儲存模式。
圖18是根據第四範例實施例所繪示的資料儲存方法的流程圖。
請參照圖18,在步驟S1801中,記憶體控制器104(或記憶體管理電路202)會判斷目前記憶體儲存裝置100的運作溫度是否大於預設溫度。具體來說,記憶體控制器104(或
記憶體管理電路202)會根據溫度感測器108所傳送的訊號來識別目前記憶體儲存裝置100的運作溫度。
倘若目前記憶體儲存裝置100的運作溫度非大於預設溫度時,則在步驟S1803中,記憶體控制器104(或記憶體管理電路202)會根據第三頻率來執行第一預防讀取干擾運作。
例如,在步驟S1803中,當執行第一預防讀取干擾運作時,記憶體控制器104(或記憶體管理電路202)會從已儲存資料的實體程式化單元之中的一個實體程式化單元(以下稱為第三實體程式化單元)中讀取資料(以下稱為第二資料),並且判斷第二資料中的錯誤位元的數目是否超過第三數目。倘若從第三實體程式化單元中所讀取的該資料中的錯誤位元的數目超過第三數目時,記憶體控制器104(或記憶體管理電路202)會將校正後的第二資料寫入至未儲存資料的實體程式化單元(以下稱為第四實體程式化單元)並且將原先映射至第三實體程式化單元的邏輯位址重新映射至第四實體程式化單元。
倘若目前記憶體儲存裝置100的運作溫度大於預設溫度時,則在步驟S1805中,記憶體控制器104(或記憶體管理電路202)會根據第四頻率來執行第二預防讀取干擾運作。
例如,在步驟S1805中,當執行第二預防讀取干擾運作時,記憶體控制器104(或記憶體管理電路202)會從已儲存資料的實體程式化單元之中的一個實體程式化單元(以
下稱為第五實體程式化單元)中讀取資料(以下稱為第三資料),並且判斷第三資料中的錯誤位元的數目是否超過第四數目。倘若從第五實體程式化單元中所讀取的該資料中的錯誤位元的數目超過第四數目時,記憶體控制器104(或記憶體管理電路202)會將校正後的第三資料寫入至未儲存資料的實體程式化單元(以下稱為第六實體程式化單元)並且將原先映射至第五實體程式化單元的邏輯位址重新映射至第六實體程式化單元。
在此,第三數目是大於第四數目,例如,在最大可校正錯誤位元數為48的例子中,第三數目為40並且第四數目為20。
值得一提的是,儘管上述是以多個範例實施例來描述多種根據記憶體儲存裝置的運作溫度而設計之運作。然而,此些運作機制的至少其中兩個亦可同時一起實作。
綜上所述,本發明範例實施例的資料儲存方法、記憶體控制器與記憶體儲存裝置能夠根據不同的溫度使用適當的儲存方式來儲存資料,用以增加資料儲存之穩定性,以避免資料遺失。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
S1、S3、S5、S7‧‧‧資料儲存方法的步驟
1000‧‧‧主機系統
1100‧‧‧電腦
1102‧‧‧微處理器
1104‧‧‧隨機存取記憶體
1106‧‧‧輸入/輸出裝置
1108‧‧‧系統匯流排
1110‧‧‧資料傳輸介面
1202‧‧‧滑鼠
1204‧‧‧鍵盤
1206‧‧‧顯示器
1252‧‧‧印表機
1256‧‧‧隨身碟
1214‧‧‧記憶卡
1216‧‧‧固態硬碟
1310‧‧‧數位相機
1312‧‧‧SD卡
1314‧‧‧MMC卡
1316‧‧‧記憶棒
1318‧‧‧CF卡
1320‧‧‧嵌入式儲存裝置
100‧‧‧記憶體儲存裝置
102‧‧‧連接器
104‧‧‧記憶體控制器
106‧‧‧快閃記憶體模組
304(0)~304(R)‧‧‧實體抹除單元
202‧‧‧記憶體管理電路
206‧‧‧記憶體介面
252‧‧‧緩衝記憶體
254‧‧‧電源管理電路
256‧‧‧錯誤檢查與校正電路
402‧‧‧儲存區
412‧‧‧資料區
414‧‧‧閒置區
404‧‧‧系統區
406‧‧‧取代區
LSA(0)~LSA(L)‧‧‧扇區
LBA(0)~LBA(H)‧‧‧邏輯位址
PBA(0-1)~PBA(N-K)‧‧‧實體程式化單元
800‧‧‧邏輯位址-實體位址映射表
802‧‧‧邏輯位址欄位
804‧‧‧實體位址欄位
S1201、S1203、S1205、S1207、S1209、S1211、S1213、S1215、S1217、S1219、S1221‧‧‧資料儲存方法的步驟
S1601、S1603、S1605、S1607‧‧‧資料儲存方法的步驟
S1701、S1703、S1705‧‧‧資料儲存方法的步驟
S1801、S1803、S1805‧‧‧資料儲存方法的步驟
圖1A是根據一範例實施例所繪示之資料儲存方法的流程圖。
圖1B是根據一範例實施例所繪示的主機系統與記憶體儲存裝置。
圖2是根據一範例實施例所繪示的電腦、輸入/輸出裝置與記憶體儲存裝置的示意圖。
圖3是根據一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖4是繪示圖1所示的記憶體儲存裝置的概要方塊圖。
圖5是根據一範例實施例所繪示之記憶體控制器的概要方塊圖。
圖6與圖7是根據一範例實施例所繪示之管理快閃記憶體模組的範例示意圖。
圖8是根據本發明範例實施例繪示邏輯位址轉實體程式化單元映射表的範例。
圖9~圖11是根據本發明範例實施例所繪示執行寫入運作而更新邏輯位址-實體位址映射表的一範例。
圖12是根據第一範例實施例所繪示之資料儲存方法的流程圖。
圖13~圖15是根據本發明範例實施例所繪示以第二模式進行寫入運作而更新邏輯位址-實體位址映射表的一範例。
圖16是根據第二範例實施例所繪示的資料儲存方法
的流程圖。
圖17是根據第三範例實施例所繪示的資料儲存方法的流程圖。
圖18是根據第四範例實施例所繪示的資料儲存方法的流程圖。
S1、S3、S5、S7‧‧‧資料儲存方法的步驟
Claims (18)
- 一種資料儲存方法,用於具有一快閃記憶體模組的一記憶體儲存裝置,該快閃記憶體模組具有複數個實體抹除單元,每一所述複數個實體抹除單元具有複數個實體程式化單元,該資料儲存方法包括:透過一溫度感測器偵測該記憶體儲存裝置的一運作溫度;判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度;倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,採用一第一資料儲存模式來存取該快閃記憶體模組;倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;將一第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第一實體程式化單元;從該第一實體程式化單元中讀取該第一資料並校正所讀取的該第一資料;以及識別發生在從該第一實體程式化單元中所讀取的該第一資料中的錯誤位元的數目,其中採用該第二資料儲存模式來存取該快閃記憶體模組的步驟包括:判斷從該第一實體程式化單元中讀取的該第一資料 中的錯誤位元的數目是否超過一第二數目且小於一第一數目;倘若從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目超過該第二數目且小於該第一數目時,將校正後的該第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第二實體程式化單元並且將映射該第一實體程式化單元的一邏輯位址重新映射至該第二實體程式化單元,其中採用該第一資料儲存模式來存取該快閃記憶體模組的步驟包括:判斷從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目是否超過該第一數目;倘若從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目超過該第一數目時,將校正後的該第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第三實體程式化單元並且將映射該第一實體程式化單元的邏輯位址重新映射至該第三實體程式化單元,其中該第二數目小於該第一數目。
- 一種資料儲存方法,用於具有一快閃記憶體模組的一記憶體儲存裝置,該快閃記憶體模組具有複數個實體抹除單元,每一所述複數個實體抹除單元具有複數個實體程式化單元,該資料儲存方法包括:透過一溫度感測器偵測該記憶體儲存裝置的一運作 溫度;判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度;倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,採用一第一資料儲存模式來存取該快閃記憶體模組;以及倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中每一所述複數個實體抹除單元的實體程式化單元包括複數個下實體程式化單元與複數個上實體程式化單元並且將資料寫入至所述複數個下實體程式化單元的速度大於將資料寫入至所述複數個上實體程式化單元的速度,其中採用該第一資料儲存模式來存取該快閃記憶體模組的步驟包括:從一主機系統接收一第二資料並且將該第二資料寫入至所述實體抹除單元之中的一第一實體抹除單元中,其中在該第一資料儲存模式中該第一實體抹除單元的下實體程式化單元與上實體程式化單元會被用來寫入資料,其中採用該第二資料儲存模式來存取該快閃記憶體模組的步驟包括:從該主機系統接收該第二資料並且將該第二資料寫入至所述實體抹除單元之中的一第二實體抹除單元中,其中在該第二資料儲存模式中所述第二實體抹除單元的下實體程式化單元會被使用來寫入資料且所述第二 實體抹除單元的上實體程式化單元不會被用來寫入資料。
- 一種資料儲存方法,用於具有一快閃記憶體模組的一記憶體儲存裝置,該快閃記憶體模組具有複數個實體抹除單元,每一所述複數個實體抹除單元具有複數個實體程式化單元,該資料儲存方法包括:透過一溫度感測器偵測該記憶體儲存裝置的一運作溫度;判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度;倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,採用一第一資料儲存模式來存取該快閃記憶體模組;以及倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中採用該第一資料儲存模式來存取該快閃記憶體模組的步驟包括:依據一第一頻率來執行一平均磨損運作,並且採用該第二資料儲存模式來存取該快閃記憶體模組的步驟包括:依據一第二頻率來執行該平均磨損運作,其中該平均磨損運作包括:從所述實體抹除單元之中選擇一第三實體抹除單元,其中該第三實體抹除單元已被寫入資料並且多個邏輯位址分別地映射至該第三實體抹除單元的實體程式化單元; 從所述實體抹除單元之中選擇一第四實體抹除單元,其中該第四實體抹除單元未被寫入資料;以及將儲存在該第三實體抹除單元中的資料搬移至該第四實體抹除單元,並且將該些邏輯位址重新映射至該第四實體抹除單元的實體程式化單元,其中該第四實體抹除單元的一抹除次數大於該第三實體抹除單元的一抹除次數。
- 如申請專利範圍第3項所述之資料儲存方法,其中該第一頻率大於該第二頻率。
- 如申請專利範圍第3項所述之資料儲存方法,其中該第二頻率大於該第一頻率。
- 一種資料儲存方法,用於具有一快閃記憶體模組的一記憶體儲存裝置,該快閃記憶體模組具有複數個實體抹除單元,每一所述複數個實體抹除單元具有複數個實體程式化單元,該資料儲存方法包括:透過一溫度感測器偵測該記憶體儲存裝置的一運作溫度;判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度;倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,採用一第一資料儲存模式來存取該快閃記憶體模組;以及倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式; 其中採用該第一資料儲存模式來存取該快閃記憶體模組的步驟包括:依據一第三頻率來執行一第一預防讀取干擾運作,其中採用該第二資料儲存模式來存取該快閃記憶體模組的步驟包括:依據一第四頻率來執行一第二預防讀取干擾運作,其中該第四頻率大於該第三頻率,其中該第一預防讀取干擾運作包括:從所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第三實體程式化單元中讀取一第二資料並且校正該第二資料;判斷從該第三實體程式化單元中所讀取的該第二資料中的錯誤位元的數目是否超過一第三數目;以及倘若從該第三實體程式化單元中所讀取的該第二資料中的錯誤位元的數目超過該第三數目時,將校正後的該第二資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第四實體程式化單元並且將映射該第三實體程式化單元的邏輯位址重新映射至該第四實體程式化單元,其中該第二預防讀取干擾運作包括:從所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第五實體程式化單元中讀取一第三資料並且校正該第三資料;判斷從該第五實體程式化單元中所讀取的該第三資 料中的錯誤位元的數目是否超過一第四數目;以及倘若從該第五實體程式化單元中所讀取的該第三資料中的錯誤位元的數目超過該第四數目時,將校正後的該第三資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第六實體程式化單元並且將映射該第五實體程式化單元的邏輯位址重新映射至該第六實體程式化單元。
- 一種記憶體控制器,用於控制一記憶體儲存裝置,該記憶體儲存裝置包括一快閃記憶體模組,該快閃記憶體模組具有複數個實體抹除單元,每一實體抹除單元具有複數個實體程式化單元,該記憶體控制器包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該快閃記憶體模組;一錯誤檢查與校正電路;以及一記憶體管理電路,耦接至該主機介面、該記憶體介面與該錯誤檢查與校正電路,其中該記憶體管理電路用以透過一溫度感測器偵測該記憶體儲存裝置的一運作溫度,並且判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度,其中倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,該記憶體管理電路更用以採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體管理電路更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模 式不同於該第二資料儲存模式;其中該記憶體管理電路更用以將一第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第一實體程式化單元,其中該記憶體管理電路更用以從該第一實體程式化單元中讀取該第一資料並該錯誤檢查與校正電路校正所讀取的該第一資料,其中該記憶體管理電路更用以識別發生在從該第一實體程式化單元中所讀取的該第一資料中的錯誤位元的數目,其中在該第二資料儲存模式中,該記憶體管理電路判斷從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目是否超過一第二數目且小於一第一數目,並且倘若從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目超過該第二數目且小於該第一數目時,將校正後的該第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第二實體程式化單元並且將映射該第一實體程式化單元的一邏輯位址重新映射至該第二實體程式化單元,在該第一資料儲存模式中,該記憶體管理電路判斷從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目是否超過該第一數目,並且倘若從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目超過該第一數目時,將校正後的該第一資料寫入至所述複數個實體 抹除單元的所述複數個實體程式化單元之中的一第三實體程式化單元並且將映射該第一實體程式化單元的邏輯位址重新映射至該第三實體程式化單元,其中該第二數目小於該第一數目。
- 一種記憶體控制器,用於控制一記憶體儲存裝置,該記憶體儲存裝置包括一快閃記憶體模組,該快閃記憶體模組具有複數個實體抹除單元,每一實體抹除單元具有複數個實體程式化單元,該記憶體控制器包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該快閃記憶體模組;一錯誤檢查與校正電路;以及一記憶體管理電路,耦接至該主機介面、該記憶體介面與該錯誤檢查與校正電路,其中該記憶體管理電路用以透過一溫度感測器偵測該記憶體儲存裝置的一運作溫度,並且判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度,其中倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,該記憶體管理電路更用以採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體管理電路更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中每一所述複數個實體抹除單元的實體程式化單元包括複數個下實體程式化單元與複數個上實體程式化單 元並且將資料寫入至所述複數個下實體程式化單元的速度大於將資料寫入至所述複數個上實體程式化單元的速度,其中在該第一資料儲存模式中,該記憶體管理電路更用以從一主機系統中接收一第二資料,並且將該第二資料寫入至所述實體抹除單元之中的一第一實體抹除單元中,其中在該第一資料儲存模式中該第一實體抹除單元的下實體程式化單元與上實體程式化單元會被用來寫入資料,其中在該第二資料儲存模式中,該記憶體管理電路從該主機系統接收該第二資料並且將該第二資料寫入至所述實體抹除單元之中的一第二實體抹除單元中,其中在該第二資料儲存模式中所述第二實體抹除單元的下實體程式化單元會被使用來寫入資料且所述第二實體抹除單元的上實體程式化單元不會被用來寫入資料。
- 一種記憶體控制器,用於控制一記憶體儲存裝置,該記憶體儲存裝置包括一快閃記憶體模組,該快閃記憶體模組具有複數個實體抹除單元,每一實體抹除單元具有複數個實體程式化單元,該記憶體控制器包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該快閃記憶體模組;一錯誤檢查與校正電路;以及一記憶體管理電路,耦接至該主機介面、該記憶體介面與該錯誤檢查與校正電路,其中該記憶體管理電路用以透過一溫度感測器偵測該記憶體儲存裝置的一運作溫度,並且判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度, 其中倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,該記憶體管理電路更用以採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體管理電路更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中在該第一資料儲存模式中,該記憶體管理電路依據一第一頻率來執行一平均磨損運作,其中在該第二資料儲存模式中,該記憶體管理電路依據一第二頻率來執行該平均磨損運作,其中在該平均磨損運作中,該記憶體管理電路從所述實體抹除單元之中選擇一第三實體抹除單元,其中該第三實體抹除單元已被寫入資料並且多個邏輯位址分別地映射至該第三實體抹除單元的實體程式化單元,其中在該平均磨損運作中,該記憶體管理電路從所述實體抹除單元之中選擇一第四實體抹除單元,其中該第四實體抹除單元未被寫入資料,其中在該平均磨損運作中,該記憶體管理電路將儲存在該第三實體抹除單元中的資料搬移至該第四實體抹除單元,其中該第四實體抹除單元的一抹除次數大於該第三實體抹除單元的一抹除次數,其中在該平均磨損運作中,該記憶體管理電路將該些邏輯位址重新映射至該第四實體抹除單元的實體程式化單 元。
- 如申請專利範圍第9項所述之記憶體控制器,其中該第一頻率大於該第二頻率。
- 如申請專利範圍第9項所述之記憶體控制器,其中該第二頻率大於該第一頻率。
- 一種記憶體控制器,用於控制一記憶體儲存裝置,該記憶體儲存裝置包括一快閃記憶體模組,該快閃記憶體模組具有複數個實體抹除單元,每一實體抹除單元具有複數個實體程式化單元,該記憶體控制器包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該快閃記憶體模組;一錯誤檢查與校正電路;以及一記憶體管理電路,耦接至該主機介面、該記憶體介面與該錯誤檢查與校正電路,其中該記憶體管理電路用以透過一溫度感測器偵測該記憶體儲存裝置的一運作溫度,並且判斷該快閃記憶體儲存裝置的運作溫度是否大於一預設溫度,其中倘若該快閃記憶體儲存裝置的運作溫度非大於該預設溫度時,該記憶體管理電路更用以採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體管理電路更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中在該第一資料儲存模式中,該記憶體管理電路依 據一第三頻率來執行一預防讀取干擾運作,其中在該第二資料儲存模式中,該記憶體管理電路依據一第四頻率來執行該預防讀取干擾運作,其中該第四頻率大於該第三頻率,其中在該第一預防讀取干擾運作中,該記憶體管理電路從所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第三實體程式化單元中讀取一第二資料,校正所讀取的該第二資料並且判斷從該第三實體程式化單元中所讀取的該第二資料中的錯誤位元的數目是否超過一第三數目,其中在該第一預防讀取干擾運作中,倘若從該第三實體程式化單元中所讀取的該第二資料中的錯誤位元的數目超過該第三數目時,該記憶體管理電路將校正後的該第二資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第四實體程式化單元並且將映射該第三實體程式化單元的邏輯位址重新映射至該第四實體程式化單元,其中在該第二預防讀取干擾運作中,該記憶體管理電路從所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第五實體程式化單元中讀取一第三資料,校正所讀取的該第三資料,並且判斷從該第五實體程式化單元中所讀取的該第三資料中的錯誤位元的數目是否超過一第四數目,其中在該第二預防讀取干擾運作中,倘若從該第五實 體程式化單元中所讀取的該第三資料中的錯誤位元的數目超過該第四數目時,該記憶體管理電路將校正後的該第三資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第六實體程式化單元並且將映射該第五實體程式化單元的邏輯位址重新映射至該第六實體程式化單元。
- 一種記憶體儲存裝置,包括:一連接器,用以耦接至一主機系統;一快閃記憶體模組,具有複數個實體抹除單元,且每一實體抹除單元具有複數個實體程式化單元;一記憶體控制器,耦接至該連接器與該快閃記憶體模組;以及一溫度感測器,耦接至該記憶體控制器,且用以感測一運作溫度,其中該記憶體控制器用以判斷該運作溫度是否大於一預設溫度,其中倘若該運作溫度大於該預設溫度時,該記憶體控制器採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體控制器更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中該記憶體控制器更用以將一第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中 的一第一實體程式化單元,其中該記憶體控制器更用以從該第一實體程式化單元中讀取該第一資料並該錯誤檢查與校正電路校正所讀取的該第一資料,其中該記憶體控制器更用以識別發生在從該第一實體程式化單元中所讀取的該第一資料中的錯誤位元的數目,其中在該第二資料儲存模式中,該記憶體控制器判斷從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目是否超過一第二數目且小於一第一數目,並且倘若從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目超過該第二數目且小於該第一數目時,將校正後的該第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第二實體程式化單元並且將映射該第一實體程式化單元的一邏輯位址重新映射至該第二實體程式化單元,其中在該第一資料儲存模式中,該記憶體控制器判斷從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目是否超過該第一數目,並且倘若從該第一實體程式化單元中讀取的該第一資料中的錯誤位元的數目超過該第一數目時,將校正後的該第一資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第三實體程式化單元並且將映射該第一實體程式化單元的邏輯位址重新映射至該第三實體程式化單元, 其中該第二數目小於該第一數目。
- 一種記憶體儲存裝置,包括:一連接器,用以耦接至一主機系統;一快閃記憶體模組,具有複數個實體抹除單元,且每一實體抹除單元具有複數個實體程式化單元;一記憶體控制器,耦接至該連接器與該快閃記憶體模組;以及一溫度感測器,耦接至該記憶體控制器,且用以感測一運作溫度,其中該記憶體控制器用以判斷該運作溫度是否大於一預設溫度,其中倘若該運作溫度大於該預設溫度時,該記憶體控制器採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體控制器更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中每一所述複數個實體抹除單元的實體程式化單元包括複數個下實體程式化單元與複數個上實體程式化單元並且將資料寫入至所述複數個下實體程式化單元的速度大於將資料寫入至所述複數個上實體程式化單元的速度,其中在該第一資料儲存模式中,該記憶體控制器更用以從一主機系統中接收一第二資料,並且將該第二資料寫入至所述實體抹除單元之中的一第一實體抹除單元中,其 中在該第一資料儲存模式中該第一實體抹除單元的下實體程式化單元與上實體程式化單元會被用來寫入資料,其中在該第二資料儲存模式中,該記憶體控制器從該主機系統接收該第二資料並且將該第二資料寫入至所述實體抹除單元之中的一第二實體抹除單元中,其中在該第二資料儲存模式中所述第二實體抹除單元的下實體程式化單元會被使用來寫入資料且所述第二實體抹除單元的上實體程式化單元不會被用來寫入資料。
- 一種記憶體儲存裝置,包括:一連接器,用以耦接至一主機系統;一快閃記憶體模組,具有複數個實體抹除單元,且每一實體抹除單元具有複數個實體程式化單元;一記憶體控制器,耦接至該連接器與該快閃記憶體模組;以及一溫度感測器,耦接至該記憶體控制器,且用以感測一運作溫度,其中該記憶體控制器用以判斷該運作溫度是否大於一預設溫度,其中倘若該運作溫度大於該預設溫度時,該記憶體控制器採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體控制器更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式; 其中在該第一資料儲存模式中,該記憶體控制器依據一第一頻率來執行一平均磨損運作,其中在該第二資料儲存模式中,該記憶體控制器依據一第二頻率來執行該平均磨損運作,其中在該平均磨損運作中,該記憶體控制器從所述實體抹除單元之中選擇一第三實體抹除單元,其中該第三實體抹除單元已被寫入資料並且多個邏輯位址分別地映射至該第三實體抹除單元的實體程式化單元,其中在該平均磨損運作中,該記憶體控制器從所述實體抹除單元之中選擇一第四實體抹除單元,其中該第四實體抹除單元未被寫入資料,其中在該平均磨損運作中,該記憶體控制器將儲存在該第三實體抹除單元中的資料搬移至該第四實體抹除單元,其中該第四實體抹除單元的一抹除次數大於該第三實體抹除單元的一抹除次數,其中在該平均磨損運作中,該記憶體控制器將該些邏輯位址重新映射至該第四實體抹除單元的實體程式化單元。
- 如申請專利範圍第15項所述之記憶體儲存裝置,其中該第一頻率大於該第二頻率。
- 如申請專利範圍第15項所述之記憶體儲存裝置,其中該第二頻率大於該第一頻率。
- 一種記憶體儲存裝置,包括:一連接器,用以耦接至一主機系統; 一快閃記憶體模組,具有複數個實體抹除單元,且每一實體抹除單元具有複數個實體程式化單元;一記憶體控制器,耦接至該連接器與該快閃記憶體模組;以及一溫度感測器,耦接至該記憶體控制器,且用以感測一運作溫度,其中該記憶體控制器用以判斷該運作溫度是否大於一預設溫度,其中倘若該運作溫度大於該預設溫度時,該記憶體控制器採用一第一資料儲存模式來存取該快閃記憶體模組,其中倘若該快閃記憶體儲存裝置的運作溫度大於該預設溫度時,該記憶體控制器更用以採用一第二資料儲存模式來存取該快閃記憶體模組,其中該第一資料儲存模式不同於該第二資料儲存模式;其中在該第一資料儲存模式中,該記憶體控制器更用以依據一第三頻率來執行一預防讀取干擾運作,其中在該第二資料儲存模式中,該記憶體控制器更用以依據一第四頻率來執行該預防讀取干擾運作,其中該第四頻率大於該第三頻率,其中在該第一預防讀取干擾運作中,該記憶體控制器從所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第三實體程式化單元中讀取一第二資料並且判斷從該第三實體程式化單元中所讀取的該第二資料中的錯誤位元的數目是否超過一第三數目, 其中在該第一預防讀取干擾運作中,倘若從該第三實體程式化單元中所讀取的該第二資料中的錯誤位元的數目超過該第三數目時,該記憶體控制器將校正後的該第二資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第四實體程式化單元並且將映射該第三實體程式化單元的邏輯位址重新映射至該第四實體程式化單元,其中在該第二預防讀取干擾運作中,該記憶體控制器從所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第五實體程式化單元中讀取一第三資料,校正所讀取的該第三資料,並且判斷從該第五實體程式化單元中所讀取的該第三資料中的錯誤位元的數目是否超過一第四數目,其中在該第二預防讀取干擾運作中,倘若從該第五實體程式化單元中所讀取的該第三資料中的錯誤位元的數目超過該第四數目時,該記憶體控制器將校正後的該第三資料寫入至所述複數個實體抹除單元的所述複數個實體程式化單元之中的一第六實體程式化單元並且將映射該第五實體程式化單元的邏輯位址重新映射至該第六實體程式化單元。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW101134523A TWI483111B (zh) | 2012-09-20 | 2012-09-20 | 資料儲存方法、記憶體控制器與記憶體儲存裝置 |
| US13/717,723 US9086954B2 (en) | 2012-09-20 | 2012-12-18 | Data storing method, memory controller and memory storage apparatus |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW101134523A TWI483111B (zh) | 2012-09-20 | 2012-09-20 | 資料儲存方法、記憶體控制器與記憶體儲存裝置 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW201413448A TW201413448A (zh) | 2014-04-01 |
| TWI483111B true TWI483111B (zh) | 2015-05-01 |
Family
ID=50275694
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW101134523A TWI483111B (zh) | 2012-09-20 | 2012-09-20 | 資料儲存方法、記憶體控制器與記憶體儲存裝置 |
Country Status (2)
| Country | Link |
|---|---|
| US (1) | US9086954B2 (zh) |
| TW (1) | TWI483111B (zh) |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI667654B (zh) * | 2018-06-14 | 2019-08-01 | 慧榮科技股份有限公司 | 能使用不同儲存模式來儲存具有不同資料大小之資料單元的記憶體控制器及方法 |
| US12293096B2 (en) | 2022-03-17 | 2025-05-06 | Kioxia Corporation | Memory system |
Families Citing this family (20)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9754648B2 (en) | 2012-10-26 | 2017-09-05 | Micron Technology, Inc. | Apparatuses and methods for memory operations having variable latencies |
| US9092310B2 (en) * | 2013-03-15 | 2015-07-28 | Seagate Technology Llc | Host command based read disturb methodology |
| US9734097B2 (en) | 2013-03-15 | 2017-08-15 | Micron Technology, Inc. | Apparatuses and methods for variable latency memory operations |
| WO2014158130A1 (en) * | 2013-03-25 | 2014-10-02 | Hewlett-Packard Development Company, L.P. | Memory device having error correction logic |
| US9727493B2 (en) | 2013-08-14 | 2017-08-08 | Micron Technology, Inc. | Apparatuses and methods for providing data to a configurable storage area |
| US9959936B1 (en) * | 2014-03-12 | 2018-05-01 | Marvell International Ltd. | Temperature-based memory access |
| US10365835B2 (en) * | 2014-05-28 | 2019-07-30 | Micron Technology, Inc. | Apparatuses and methods for performing write count threshold wear leveling operations |
| US9292210B1 (en) * | 2014-08-29 | 2016-03-22 | International Business Machines Corporation | Thermally sensitive wear leveling for a flash memory device that includes a plurality of flash memory modules |
| KR20160043763A (ko) * | 2014-10-14 | 2016-04-22 | 삼성전자주식회사 | 칩 및 칩의 제어 방법 |
| US9740425B2 (en) * | 2014-12-16 | 2017-08-22 | Sandisk Technologies Llc | Tag-based wear leveling for a data storage device |
| TWI591635B (zh) * | 2016-02-05 | 2017-07-11 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
| TWI607448B (zh) * | 2016-09-07 | 2017-12-01 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 |
| TWI621063B (zh) * | 2017-01-13 | 2018-04-11 | 慧榮科技股份有限公司 | 主機裝置與資料傳輸速率控制方法 |
| US9928126B1 (en) * | 2017-06-01 | 2018-03-27 | Apple Inc. | Recovery from cross-temperature read failures by programming neighbor word lines |
| CN110471788B (zh) * | 2018-05-08 | 2024-03-15 | 美光科技公司 | 异步功率损耗影响的数据结构 |
| US11061606B2 (en) * | 2018-06-29 | 2021-07-13 | Micron Technology, Inc. | NAND temperature-aware operations |
| CN111324281B (zh) * | 2018-12-14 | 2024-02-06 | 兆易创新科技集团股份有限公司 | 一种存储器及其控制方法和装置 |
| TWI698749B (zh) * | 2019-03-13 | 2020-07-11 | 慧榮科技股份有限公司 | 資料儲存裝置與資料處理方法 |
| US20230064822A1 (en) * | 2021-09-01 | 2023-03-02 | Micron Technology, Inc. | Temperature controlled media management operations at a memory sub-system |
| KR20230093914A (ko) | 2021-12-20 | 2023-06-27 | 삼성전자주식회사 | 센서 정보를 이용한 스토리지 장치의 데이터 기입 방법, 데이터 독출 방법 및 이를 수행하는 스토리지 장치 |
Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070140030A1 (en) * | 2005-12-16 | 2007-06-21 | Intel Corporation | Apparatus and method for thermal management of a memory device |
| CN101093715A (zh) * | 2006-06-21 | 2007-12-26 | 英特尔公司 | 带切换控制的热传感器 |
| CN102667945A (zh) * | 2009-10-28 | 2012-09-12 | 桑迪士克科技股份有限公司 | 通过写入后读取和适应性重写来管理错误的非易失性存储器和方法 |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7793059B2 (en) * | 2006-01-18 | 2010-09-07 | Apple Inc. | Interleaving policies for flash memory |
-
2012
- 2012-09-20 TW TW101134523A patent/TWI483111B/zh active
- 2012-12-18 US US13/717,723 patent/US9086954B2/en active Active
Patent Citations (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20070140030A1 (en) * | 2005-12-16 | 2007-06-21 | Intel Corporation | Apparatus and method for thermal management of a memory device |
| CN101093715A (zh) * | 2006-06-21 | 2007-12-26 | 英特尔公司 | 带切换控制的热传感器 |
| CN102667945A (zh) * | 2009-10-28 | 2012-09-12 | 桑迪士克科技股份有限公司 | 通过写入后读取和适应性重写来管理错误的非易失性存储器和方法 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI667654B (zh) * | 2018-06-14 | 2019-08-01 | 慧榮科技股份有限公司 | 能使用不同儲存模式來儲存具有不同資料大小之資料單元的記憶體控制器及方法 |
| US12293096B2 (en) | 2022-03-17 | 2025-05-06 | Kioxia Corporation | Memory system |
Also Published As
| Publication number | Publication date |
|---|---|
| US20140082259A1 (en) | 2014-03-20 |
| US9086954B2 (en) | 2015-07-21 |
| TW201413448A (zh) | 2014-04-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI483111B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
| TWI516927B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
| TWI480733B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
| TWI490871B (zh) | 防止讀取干擾的方法、記憶體控制電路單元與記憶體儲存裝置 | |
| CN103699491B (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
| TWI479314B (zh) | 系統資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
| TWI551991B (zh) | 記憶體管理方法與系統及其記憶體儲存裝置 | |
| US8516184B2 (en) | Data updating using mark count threshold in non-volatile memory | |
| US9021218B2 (en) | Data writing method for writing updated data into rewritable non-volatile memory module, and memory controller, and memory storage apparatus using the same | |
| US9268688B2 (en) | Data management method, memory controller and memory storage apparatus | |
| TWI476590B (zh) | 記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
| TWI640008B (zh) | 資料讀取方法以及儲存控制器 | |
| CN103514096B (zh) | 数据储存方法、存储器控制器与存储器储存装置 | |
| US20120110243A1 (en) | Data writing method, memory controller, and memory storage apparatus | |
| TWI656531B (zh) | 平均磨損方法、記憶體控制電路單元與記憶體儲存裝置 | |
| TWI591482B (zh) | 資料保護方法、記憶體控制電路單元及記憶體儲存裝置 | |
| US8607123B2 (en) | Control circuit capable of identifying error data in flash memory and storage system and method thereof | |
| US8943264B2 (en) | Data storing method, and memory controller and memory storage apparatus using the same | |
| US9778862B2 (en) | Data storing method for preventing data losing during flush operation, memory control circuit unit and memory storage apparatus | |
| TWI509615B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
| TW201413450A (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
| CN103678162A (zh) | 系统数据储存方法、存储器控制器与存储器储存装置 | |
| TWI550625B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
| TWI464585B (zh) | 資料儲存方法、記憶體控制器與記憶體儲存裝置 | |
| TW201643722A (zh) | 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 |