TWI526830B - 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 - Google Patents

資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 Download PDF

Info

Publication number
TWI526830B
TWI526830B TW102141474A TW102141474A TWI526830B TW I526830 B TWI526830 B TW I526830B TW 102141474 A TW102141474 A TW 102141474A TW 102141474 A TW102141474 A TW 102141474A TW I526830 B TWI526830 B TW I526830B
Authority
TW
Taiwan
Prior art keywords
data
unit
physical erasing
physical
erasing unit
Prior art date
Application number
TW102141474A
Other languages
English (en)
Other versions
TW201518945A (zh
Inventor
梁鳴仁
Original Assignee
群聯電子股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 群聯電子股份有限公司 filed Critical 群聯電子股份有限公司
Priority to TW102141474A priority Critical patent/TWI526830B/zh
Priority to US14/166,768 priority patent/US9268687B2/en
Publication of TW201518945A publication Critical patent/TW201518945A/zh
Application granted granted Critical
Publication of TWI526830B publication Critical patent/TWI526830B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0238Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
    • G06F12/0246Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • G06F12/0253Garbage collection, i.e. reclamation of unreferenced memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7201Logical to physical mapping or translation of blocks or pages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Read Only Memory (AREA)

Description

資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
本發明是有關於一種用於可複寫式非揮發性記憶體的資料寫入方法及使用此方法的記憶體控制電路單元與記憶體儲存裝置。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,最適於可攜式電子產品,例如筆記型電腦。固態硬碟就是一種以快閃記憶體作為儲存媒體的記憶體儲存裝置。因此,近年快閃記憶體產業成為電子產業中相當熱門的一環。
快閃記憶體模組具有多個實體抹除單元且每一實體抹除單元具有多個實體程式化單元(physical page),其中在實體抹除單元中寫入資料時必須依據實體程式化單元的順序寫入資料。此 外,已被寫入資料之實體程式化單元並需先被抹除後才能再次用於寫入資料。特別是,實體抹除單元為抹除之最小單位,並且實體程式化單元為程式化(亦稱寫入)的最小單元。因此,在快閃記憶體模組的管理中,實體抹除單元會被區分為資料區與閒置區。
資料區的實體抹除單元是用以儲存主機系統所儲存之資 料。具體來說,記憶體儲存裝置中的記憶體控制電路單元會將主機系統所存取的邏輯存取位址轉換為邏輯區塊的邏輯頁面並且將邏輯區塊的邏輯頁面映射至資料區的實體抹除單元的實體程式化單元。也就是說,快閃記憶體模組的管理上資料區的實體抹除單元是被視為已被使用之實體抹除單元(例如,已儲存主機系統所寫入的資料)。例如,記憶體控制電路單元會使用邏輯轉實體位址映射表來記載邏輯區塊與資料區的實體抹除單元的映射關係,其中邏輯區塊中的邏輯頁面是對應所映射之實體抹除單元的實體程式化單元。
閒置區的實體抹除單元是用以輪替資料區中的實體抹除 單元。具體來說,如上所述,已寫入資料的實體抹除單元必須被抹除後才可再次用於寫入資料,因此,閒置區的實體抹除單元是被設計用於寫入隨機資料以替換映射邏輯區塊的實體抹除單元。 基此,在閒置區中的實體抹除單元為空或可使用的實體抹除單元,即無記錄資料或標記為已沒用的無效資料。
也就是說,資料區與閒置區的實體抹除單元的實體程式 化單元是以輪替方式來映射邏輯區塊的邏輯頁面,以儲存主機系 統所寫入的資料。例如,當主機系統欲寫入隨機資料的邏輯存取位址是對應記憶體儲存裝置之某一邏輯區塊的某一邏輯頁面時,記憶體儲存裝置的記憶體控制電路單元會從閒置區中提取一個或多個實體抹除單元,將此隨機資料寫入至所提取之實體抹除單元的實體程式化單元中,並且將寫入資料的實體抹除單元關聯至資料區。
特別是,在記憶體儲存裝置運作期間,當閒置區的實體抹除單元快被耗盡時,記憶體儲存裝置的記憶體控制電路單元會將資料區中至少一個實體抹除單元中的有效資料整理至資料區中其他實體抹除單元中未被使用的實體程式化單元中(以下稱為「有效資料合併運作」),以對僅儲存無效資料的實體抹除單元執行抹除運作並將抹除後的實體抹除單元關聯至閒置區,以使輪替運作的機制繼續維持以執行後續的寫入指令。
然而,執行上述資料合併程序是相對耗時的,因此,倘若主機系統要求在短時間內寫入大量數據(例如,因即將斷電而指示將緩衝記憶體內的資料儲存至可複寫式非揮發性記憶體的請求)並且閒置區的實體抹除單元快被耗盡時,記憶體儲存裝置的記憶體控制電路單元將需要耗費大量時間進行資料合併程序,而無法於預定時間內完成資料的寫入,而使系統所儲存的資料遺失。
本發明提供一種資料寫入方法、記憶體控制電路單元與 記憶體儲存裝置,其能夠縮短寫入循序資料的時間。
據此,本發明一範例實施例提出一種用於一可複寫式非 揮發性記憶體模組資料的寫入方法,其中此可複寫式非揮發性記憶體模組包括多個實體抹除單元。本資料寫入方法包括:將此些實體抹除單元至少分組為資料區與閒置區;配置多個邏輯單元以映射此資料區的實體抹除單元;以及動態地維持此些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入循序資料。
在本發明之一範例實施例中,上述動態地維持此些實體 抹除單元之中的一預定數量的實體抹除單元來專用於寫入循序資料的步驟包括:將最低門檻值加上上述預定數量所獲得的值來設定垃圾回收門檻值。此外,上述方法更包括:從主機系統中接收指示寫入第一資料至此些邏輯單元之中的至少一第一邏輯單元的寫入指令;判斷第一資料是否為循序資料或隨機資料;以及倘若第一資料為循序資料時,從閒置區的實體抹除單元中提取至少一第一實體抹除單元,將第一資料寫入至此至少一第一實體抹除單元,將此至少一第一實體抹除單元關聯至資料區,依據此至少一第一實體抹除單元的數目與最低門檻值來調整上述垃圾回收門檻值。其中,當調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值大於最低門檻值時,調整後的垃圾回收門檻值會被設定為調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值;並且當調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值非大於最低門檻值 時,調整後的垃圾回收門檻值會被設定為此最低門檻值。
在本發明之一範例實施例中,上述動態地維持此些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入循序資料的步驟更包括:倘若第一資料為隨機資料時,從閒置區的實體抹除單元中提取至少一第二實體抹除單元,將此第一資料寫入至此至少一第二實體抹除單元並且將此至少一第二實體抹除單元關聯至資料區。
在本發明之一範例實施例中,上述動態地維持此些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入循序資料的步驟更包括:判斷閒置區的實體抹除單元的數目是否不大於垃圾回收門檻值;以及倘若閒置區的實體抹除單元的數目不大於垃圾回收門檻值時,執行資料合併程序以將資料區的至少一實體抹除單元關聯至閒置區。
在本發明之一範例實施例中,上述執行資料合併程序以將資料區的至少一實體抹除單元關聯至閒置區的步驟包括:從資料區的實體抹除單元中選擇一第三實體抹除單元;倘若第三實體抹除單元存有至少一有效資料時,將此至少一有效資料從第三實體抹除單元複製到該資料區中的一第四實體抹除單元;以及抹除第三實體抹除單元並且將抹除後的第三實體抹除單元關聯至閒置區。
在本發明之一範例實施例中,上述邏輯單元的容量等於資料區的實體抹除單元的容量,並且上述預定數量的實體抹除單 元的容量小於或等於該些邏輯單元的容量。
本發明一範例實施例提出一種用於控制可複寫式非揮發 性記憶體模組的記憶體控制電路單元,其中可複寫式非揮發性記憶體模組具有多個實體抹除單元。記憶體控制電路單元包括主機介面、記憶體介面與記憶體管理電路。主機介面用以耦接至主機系統。記憶體介面用以耦接至可複寫式非揮發性記憶體模組。記憶體管理電路耦接至主機介面與記憶體介面。記憶體管理電路用以將此些實體抹除單元至少分組為資料區與閒置區,配置多個邏輯單元以映射此資料區的實體抹除單元。以及動態地維持此些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入循序資料。
在本發明之一範例實施例中,上述記憶體管理電路將最低門檻值加上上述預定數量所獲得的值來設定垃圾回收門檻值。此外,記憶體管理電路從主機系統中接收指示寫入第一資料至此些邏輯單元之中的至少一第一邏輯單元的寫入指令並且判斷第一資料是否為循序資料或隨機資料。其中倘若第一資料為循序資料時,記憶體管理電路從閒置區中提取至少一第一實體抹除單元,將第一資料寫入至此至少一第一實體抹除單元,將此至少一第一實體抹除單元關聯至資料區,並且依據此至少一第一實體抹除單元的數目與最低門檻值來調整垃圾回收門檻值。其中,當調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值大於最低門檻值時,調整後的垃圾回收門檻值會被設定為調整 前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值;並且當調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值非大於最低門檻值時,調整後的垃圾回收門檻值會被設定為此最低門檻值。
在本發明之一範例實施例中,倘若第一資料為隨機資料時,記憶體管理電路從該閒置區中提取至少一第二實體抹除單元,將第一資料寫入至此至少一第二實體抹除單元並且將此至少一第二實體抹除單元關聯至資料區。
在本發明之一範例實施例中,上述記憶體管理電路判斷閒置區的實體抹除單元的數目是否不大於垃圾回收門檻值。倘若閒置區的實體抹除單元的數目不大於垃圾回收門檻值時,記憶體管理電路執行資料合併程序以將資料區的至少一實體抹除單元關聯至閒置區。
在本發明之一範例實施例中,在執行資料合併程序以將資料區的至少一實體抹除單元關聯至閒置區的運作中,記憶體管理電路從資料區的實體抹除單元中選擇第三實體抹除單元,並且抹除第三實體抹除單元並且將抹除後的第三實體抹除單元關聯至閒置區。此外,倘若第三實體抹除單元存有至少一有效資料時,記憶體管理電路在抹除第三實體抹除單元之前先將此至少一有效資料從第三實體抹除單元複製到資料區中的第四實體抹除單元。
本發明一範例實施例提出一種記憶體儲存裝置,其包括連接介面單元、可複寫式非揮發性記憶體模組與記憶體控制電路 單元。連接介面單元用以耦接至主機系統。可複寫式非揮發性記憶體模組具有多個實體抹除單元。記憶體控制電路單元耦接至連接介面單元與可複寫式非揮發性記憶體模組。記憶體控制電路單元用以將此些實體抹除單元至少分組為資料區與閒置區,配置多個邏輯單元以映射此資料區的實體抹除單元。以及動態地維持此些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入循序資料。
在本發明之一範例實施例中,上述記憶體控制電路單元 將最低門檻值加上上述預定數量所獲得的值來設定垃圾回收門檻值。此外,記憶體控制電路單元從主機系統中接收指示寫入第一資料至此些邏輯單元之中的至少一第一邏輯單元的寫入指令並且判斷第一資料是否為循序資料或隨機資料。其中倘若第一資料為循序資料時,記憶體控制電路單元從閒置區中提取至少一第一實體抹除單元,將第一資料寫入至此至少一第一實體抹除單元,將此至少一第一實體抹除單元關聯至資料區,並且依據此至少一第一實體抹除單元的數目與最低門檻值來調整垃圾回收門檻值。其中,當調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值大於最低門檻值時,調整後的垃圾回收門檻值會被設定為調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值;並且當調整前的垃圾回收門檻值減去至少一第一實體抹除單元的數目所獲得的值非大於最低門檻值時,調整後的垃圾回收門檻值會被設定為此最低門檻值。
在本發明之一範例實施例中,倘若第一資料為隨機資料時,記憶體控制電路單元從該閒置區中提取至少一第二實體抹除單元,將第一資料寫入至此至少一第二實體抹除單元並且將此至少一第二實體抹除單元關聯至資料區。
在本發明之一範例實施例中,上述記憶體控制電路單元判斷閒置區的實體抹除單元的數目是否不大於垃圾回收門檻值。 倘若閒置區的實體抹除單元的數目不大於垃圾回收門檻值時,記憶體控制電路單元執行資料合併程序以將資料區的至少一實體抹除單元關聯至閒置區。
在本發明之一範例實施例中,在執行資料合併程序以將資料區的至少一實體抹除單元關聯至閒置區的運作中,記憶體控制電路單元從資料區的實體抹除單元中選擇第三實體抹除單元,並且抹除第三實體抹除單元並且將抹除後的第三實體抹除單元關聯至閒置區。此外,倘若第三實體抹除單元存有至少一有效資料時,記憶體控制電路單元在抹除第三實體抹除單元之前先將此至少一有效資料從第三實體抹除單元複製到資料區中的第四實體抹除單元。
基於上述,資料寫入方法、記憶體控制電路單元與記憶體儲存裝置,藉由動態地維持專用於循序資料的實體抹除單元,由此避免執行資料合併程序以縮短寫入大量循序資料的時間。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
1000‧‧‧主機系統
1100‧‧‧電腦
1102‧‧‧微處理器
1104‧‧‧隨機存取記憶體
1106‧‧‧輸入/輸出裝置
1108‧‧‧系統匯流排
1110‧‧‧資料傳輸介面
1202‧‧‧滑鼠
1204‧‧‧鍵盤
1206‧‧‧顯示器
1208‧‧‧印表機
1212‧‧‧隨身碟
1214‧‧‧記憶卡
1216‧‧‧固態硬碟
1310‧‧‧數位相機
1312‧‧‧SD卡
1314‧‧‧MMC卡
1316‧‧‧記憶棒
1318‧‧‧CF卡
1320‧‧‧嵌入式儲存裝置
100‧‧‧記憶體儲存裝置
102‧‧‧連接介面單元
104‧‧‧記憶體控制電路單元
106‧‧‧可複寫式非揮發性記憶體模組
202‧‧‧記憶體管理電路
204‧‧‧主機介面
206‧‧‧記憶體介面
208‧‧‧緩衝記憶體
210‧‧‧電源管理電路
212‧‧‧錯誤檢查與校正電路
410(0)~410(N)‧‧‧實體抹除單元
502‧‧‧系統區
504‧‧‧資料區
506‧‧‧閒置區
508‧‧‧取代區
LBA(0)~LBA(H)‧‧‧邏輯單元
LZ(0)~LZ(M)‧‧‧邏輯區域
SD1~SD6‧‧‧循序資料
RD1~RD15‧‧‧隨機資料
S2801、S2803、S2805、S2807、S2809、S2811、S2813‧‧‧資料寫入方法的步驟
圖1是根據一範例實施例所繪示的主機系統與記憶體儲存裝置。
圖2是根據本發明範例實施例所繪示的電腦、輸入/輸出裝置與記憶體儲存裝置的示意圖。
圖3是根據本發明範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。
圖4是繪示圖1所示的記憶體儲存裝置的概要方塊圖。
圖5是根據一範例實施例所繪示之記憶體控制電路單元的概要方塊圖。
圖6與圖7是根據第一範例實施例所繪示之管理實體區塊的範例示意圖。
圖8~20是根據本發明一範例實施例所繪示之以隨機寫入機制寫入隨機資料的範例。
圖21是繪示執行有效資料合併程序以完成後續寫入指令的簡化範例。
圖22~23是根據本發明一範例實施例所繪示之以循序寫入機制寫入循序資料的範例。
圖24~27是根據本發明一範例實施例所繪示之以隨機寫入機制寫入隨機資料的另一範例。
圖28是根據本發明一範例實施例所繪示的資料寫入方法的流程圖。
本發明提出的資料寫入方法會將可複寫式非揮發性記憶體模組實體抹除單元至少分組為資料區與閒置區,配置多個邏輯單元以映射資料區的實體抹除單元,以及以動態地維持可複寫式非揮發性記憶體模組中的一預定數量的實體抹除單元來專用於寫入循序資料。特別是,上述資料區中的實體抹除單元的數目會被降低使得使用者可使用之記憶體儲存裝置容量(即,邏輯位址或單元)減少,並將所減少之容量保留作為專用於寫入循序資料,由此使得以隨機寫入架構(亦稱為以頁面為基礎的記憶體管理架構)的可複寫式非揮發性儲存裝置能夠有效地縮短將主機系統所欲儲存的大量循序資料寫入至可複寫式非揮發性記憶體模組的時間。為了清楚地了解本發明,以下將以範例實施例來進行說明。
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖1是根據一範例實施例所繪示的主機系統與記憶體儲存裝置。
請參照圖1,主機系統1000一般包括電腦1100與輸入/ 輸出(input/output,I/O)裝置1106。電腦1100包括微處理器1102、隨機存取記憶體(random access memory,RAM)1104、系統匯流排1108與資料傳輸介面1110。輸入/輸出裝置1106包括如圖2的滑鼠1202、鍵盤1204、顯示器1206與印表機1208。必須瞭解的是,圖2所示的裝置非限制輸入/輸出裝置1106,輸入/輸出裝置1106可更包括其他裝置。
在本發明實施例中,記憶體儲存裝置100是透過資料傳 輸介面1110與主機系統1000的其他元件耦接。藉由微處理器1102、隨機存取記憶體1104與輸入/輸出裝置1106的運作可將資料寫入至記憶體儲存裝置100或從記憶體儲存裝置100中讀取資料。例如,記憶體儲存裝置100可以是如圖2所示的隨身碟1212、記憶卡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是繪示圖1所示的記憶體儲存裝置的概要方塊圖。
請參照圖4,記憶體儲存裝置100包括連接介面單元102、記憶體控制電路單元104與可複寫式非揮發性記憶體模組106。
在本範例實施例中,連接介面單元102是相容於序列先進附件(Serial Advanced Technology Attachment,SATA)標準。然而,必須瞭解的是,本發明不限於此,連接介面單元102亦可以是符合並列先進附件(Parellel 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(N)。 例如,實體抹除單元410(0)~410(N)可屬於同一個記憶體晶粒(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個位元資料的快閃記憶體模組)、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
圖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標準、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會依據此錯誤檢查與校正碼對所讀取的資料執行錯誤檢查與校正程序。
圖6與圖7是根據第一範例實施例所繪示之管理實體抹除單元的範例示意圖。
請參照圖6,記憶體控制電路單元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。
請參照圖7,記憶體控制電路單元104(或記憶體管理電路202)會配置邏輯單元LBA(0)~LBA(H)以映射資料區502的實體抹除單元,其中每一邏輯單元具有多個邏輯頁面以映射對應之實體抹除單元的實體程式化單元。並且,當主機系統100欲寫入資料至邏輯單元或更新儲存於邏輯單元中的資料時,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取一個實體抹除單元來寫入資料,以輪替資料區502的實體抹除單元。
為了識別資料每個邏輯單元的資料被儲存在那個實體抹除單元,在本範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)會記錄邏輯單元與實體抹除單元之間的映射。並且,當主機系統1000欲在邏輯頁面中存取資料時,記憶體控制電路單元104(或記憶體管理電路202)會確認此邏輯頁面所屬的邏輯單元,並且在此邏輯單元所映射的實體抹除單元中來存取資料。 例如,在本範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)會在可複寫式非揮發性記憶體模組106中儲存邏輯轉實體位址映射表來記錄每一邏輯單元所映射的實體抹除單元,並且當欲存取資料時記憶體控制電路單元104(或記憶體管理電路202)會將邏輯轉實體位址映射表載入至緩衝記憶體208來維護。
值得一提的是,由於緩衝記憶體208的容量有限無法儲存記錄所有邏輯單元之映射關係的映射表,因此,在本範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)會將邏輯單元LBA(0)~LBA(H)分組為多個邏輯區域LZ(0)~LZ(M),並且 為每一邏輯區域配置一個邏輯轉實體位址映射表。特別是,當記憶體控制電路單元104(或記憶體管理電路202)欲更新某個邏輯單元的映射時,對應此邏輯單元所屬之邏輯區域的邏輯轉實體位址映射表會被載入至緩衝記憶體208來被更新。
如上所述,在本範例實施例中,記憶體儲存裝置100的可複寫式非揮發性記憶體模組106是以頁面為基礎來進行管理,因此,在執行寫入指令時,不管目前資料是要寫入至那個邏輯單元的邏輯頁面,記憶體控制電路單元104(或記憶體管理電路202)皆會以一個實體程式化單元接續一個實體程式化單元的方式來寫入資料(以下亦稱為隨機寫入機制)。具體來說,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取一個空的實體抹除單元作為目前使用之實體抹除單元來寫入資料。並且,當此目前使用之實體抹除單元已被寫滿時,記憶體控制電路單元104(或記憶體管理電路202)會再從閒置區504中提取另一個空的實體抹除單元作為目前使用之實體抹除單元,以繼續寫入對應來自於主機系統1000之寫入指令的隨機資料。特別是,為了避免閒置區504的實體抹除單元被耗盡,當閒置區504的實體抹除單元的數目下降到所設定之垃圾回收門檻值時,記憶體控制電路單元104(或記憶體管理電路202)會執行資料合併程序,以使資料區502的至少一個實體抹除單元中的資料成為無效資料,並且之後將資料區502中所儲存之資料皆為無效資料之實體抹除單元關聯回閒置區504。例如,在執行資料合併程序時,記憶體控制電路單元 104(或記憶體管理電路202)至少需使用一個空的實體抹除單元,因此,垃圾回收門檻值至少會被設定大於最低門檻值(即,1)。特別是,在本範例實施例中,記憶體控制電路單元104(或記憶體管理電路202)會識別寫入的資料是循序資料或隨機資料,並且根據所寫入之循序資料的量來動態調整垃圾回收門檻值。具體來說,主機系統1000寫入資料的行為可被區分為循序寫入模式(Sequential writing mode)與隨機寫入模式(random writing mode)。 在循序寫入模式中,主機系統1000會依序地寫入多筆資料至連續的多個邏輯頁面中。而在隨機寫入模式中,主機系統1000是於非連續的邏輯頁面中寫入資料,例如,首先將第一筆隨機資料被寫入第5個邏輯頁面,然後將第二筆隨機資料寫入至第3個邏輯頁面。在此,將主機系統1000以循序寫入模式寫入的資料稱為循序資料,並且將主機系統1000以隨機寫入模式寫入的資料稱為隨機資料。特別是,如上所述,在本範例實施例中,可複寫式非揮發性記憶體模組中的一預定數量的實體抹除單元會被維持來專用於寫入循序資料,因此,記憶體控制電路單元104(或記憶體管理電路202)會根據所寫入之循序資料的量來動態調整垃圾回收門檻值,以避免保留用於寫入循序資料的實體抹除單元被用來寫入隨機資料。
圖8~20是根據本發明一範例實施例所繪示之以隨機寫入機制寫入隨機資料的範例。
請參照圖8,為方便說明,在此假設資料區502初始地未 有映射邏輯單元的實體抹除單元(即,記憶體儲存裝置100於開卡後尚未寫入過使用者資料),閒置區504具有8個實體抹除單元,每一實體抹除單元具有3個實體程式化單元,欲寫入至每一實體抹除單元的資料必須依照實體程式化單元的順序來被寫入。此外假設3個實體抹除單元會被保留專用於寫入循序資料,1個實體抹除單元會被用作為輪替寫入資料之用並且1個實體抹除單元會被保留來進行資料合併程序,因此,垃圾回收門檻值會初始地被設定為4並且邏輯單元所映射的容量會被設定為3個實體抹除單元的容量。也就是說,對於具有8個實體抹除單元的記憶體儲存裝置100來說,提供給主機系統1000所存取的容量原本可被設定為6個實體抹除單元的容量,但在保留專用於寫入循序資料的實體抹除單元後,僅能提供3個實體抹除單元的容量給主機系統1000存取,即,主機系統1000會識別記憶體儲存裝置100的容量為3個實體抹除單元的容量(即,邏輯單元LBA(0)~LBA(2))。值得一提的是,儘管在本範例中,被保留專用於寫入循序資料的實體抹除單元的數目是與所配置之邏輯單元的容量相同,但本發明不限於此,被保留專用於寫入循序資料的實體抹除單元的數目亦可小於所配置之邏輯單元的容量。
請參照圖9,假設欲程式化隨機資料RD1並且隨機資料RD1是屬於邏輯單元LBA(0)的第1個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取實體抹除單元410(0),下達程式化指令以將此隨機資料RD1寫入至實體 抹除單元410(0)的第0個實體程式化單元並且將實體抹除單元410(0)關聯至資料區502。
請參照圖10,接續圖9,假設欲再程式化隨機資料RD2並且隨機資料RD2是屬於邏輯單元LBA(1)的第0個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD2寫入至實體抹除單元410(0)的第1個實體程式化單元。
請參照圖11,接續圖10,假設欲再程式化隨機資料RD3並且隨機資料RD3是屬於邏輯單元LBA(2)的第1個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD3寫入至實體抹除單元410(0)的第2個實體程式化單元。
請參照圖12,接續圖11,假設欲再程式化隨機資料RD4並且隨機資料RD4是屬於邏輯單元LBA(0)的第0個邏輯頁面時,由於實體抹除單元410(0)已無儲存空間,因此,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取實體抹除單元410(1),下達程式化指令以將此隨機資料RD4寫入至實體抹除單元410(1)的第0個實體程式化單元並且將實體抹除單元410(1)關聯至資料區502。
請參照圖13,接續圖12,假設欲再程式化隨機資料RD5並且隨機資料RD5是屬於邏輯單元LBA(1)的第1個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指 令以將此隨機資料RD5寫入至實體抹除單元410(1)的第1個實體程式化單元。
請參照圖14,接續圖13,假設欲再程式化隨機資料RD6並且隨機資料RD6是屬於邏輯單元LBA(0)的第2個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD6寫入至實體抹除單元410(1)的第2個實體程式化單元。
請參照圖15,接續圖14,假設欲再程式化隨機資料RD7並且隨機資料RD4是屬於邏輯單元LBA(2)的第0個邏輯頁面時,由於實體抹除單元410(1)已無儲存空間,因此,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取實體抹除單元410(2),下達程式化指令以將此隨機資料RD7寫入至實體抹除單元410(2)的第0個實體程式化單元並且將實體抹除單元410(2)關聯至資料區502。
請參照圖16,接續圖15,假設欲再程式化隨機資料RD8並且隨機資料RD8是屬於邏輯單元LBA(1)的第2個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD8寫入至實體抹除單元410(2)的第1個實體程式化單元。
請參照圖17,接續圖16,假設欲再程式化隨機資料RD9並且隨機資料RD9是屬於邏輯單元LBA(2)的第2個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指 令以將此隨機資料RD9寫入至實體抹除單元410(2)的第2個實體程式化單元。
請參照圖18,接續圖17,假設欲再程式化隨機資料RD10並且隨機資料RD10是屬於邏輯單元LBA(1)的第2個邏輯頁面時,由於實體抹除單元410(2)已無儲存空間,因此,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取實體抹除單元410(3),下達程式化指令以將此隨機資料RD10寫入至實體抹除單元410(3)的第0個實體程式化單元並且將實體抹除單元410(3)關聯至資料區502,其中實體抹除單元410(2)的第1個實體程式化單元會被標記為無效(如虛線所示)。
請參照圖19,接續圖18,假設欲再程式化隨機資料RD11並且隨機資料RD11是屬於邏輯單元LBA(2)的第2個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD11寫入至實體抹除單元410(3)的第1個實體程式化單元,其中實體抹除單元410(2)的第2個實體程式化單元會被標記為無效(如虛線所示)。
請參照圖20,接續圖19,假設欲再程式化隨機資料RD12並且隨機資料RD12是屬於邏輯單元LBA(1)的第1個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD12寫入至實體抹除單元410(3)的第2個實體程式化單元,其中實體抹除單元410(1)的第1個實體程式化單元會被標記為無效(如虛線所示)。
以此類推,不論主機系統1000欲將資料儲存至那個邏輯單元的邏輯頁面中,記憶體控制電路單元104(或記憶體管理電路202)會依序地將主機系統1000欲儲存的資料寫入目前使用的實體抹除單元中。特別是,當閒置區504的實體抹除單元的數目不大於垃圾回收門檻值時,記憶體控制電路單元104(或記憶體管理電路202)會在執行寫入指令時一併執行資料合併程序,以防止閒置區的實體抹除單元被用盡。
圖21是繪示執行有效資料合併程序以完成後續寫入指令的簡化範例。
請參照圖21,接續圖20,假設欲再程式化隨機資料RD13並且隨機資料RD13是屬於邏輯單元LBA(2)的第0個邏輯頁面時,由於實體抹除單元410(3)已無儲存空間,因此,記憶體控制電路單元104(或記憶體管理電路202)需要從閒置區504中提取空的實體抹除單元。然而,此時,閒置區504的實體抹除單元的數目是不大於垃圾回收門檻值,因此,記憶體控制電路單元104(或記憶體管理電路202)必須先執行資料合併程序。例如,記憶體控制電路單元104(或記憶體管理電路202)從閒置區504中提取實體抹除單元410(4),將實體抹除單元410(1)中的有效資料(即,資料RD4與RD6)和實體抹除單元410(2)中的有效資料(即,資料RD7)複製到實體抹除單元410(4),將實體抹除單元410(4)關聯至資料區502,將實體抹除單元410(1)的第0與2實體程式化單元和實體抹除單元410(2)的第0實體程式化單元標記為無效,對僅儲存無 效資料的實體抹除單元(即,實體抹除單元410(1)與實體抹除單元410(2))執行抹除運作,並且將抹除後的實體抹除單元關聯回閒置區504。
此時,閒置區504的實體抹除單元的數目會回復為5(大於垃圾回收門檻值),基此,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取實體抹除單元410(5),下達程式化指令以將此隨機資料RD13寫入至實體抹除單元410(5)的第0個實體程式化單元並且將實體抹除單元410(5)關聯至資料區502,其中儲存資料RD7的實體程式化單元(即,實體抹除單元410(4)的第2個實體程式化單元)會被標記為無效。
圖22~23是根據本發明一範例實施例所繪示之以循序寫入機制寫入循序資料的範例。
請參照圖22,接續圖21,假設欲再程式化循序資料SD1~SD6並且循序資料SD1~SD6是屬於邏輯單元LBA(1)的第0~2個邏輯頁面與邏輯單元LBA(2)的第0~2個邏輯頁面時,由於閒置區504中保留有3個實體抹除單元專用於寫入循序資料,因此,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取空的實體抹除單元(例如,實體抹除單元410(6)與410(7)),下達程式化指令以將此循序資料SD1~SD6循序地寫入至實體抹除單元410(6)與410(7)中並且將實體抹除單元410(6)與410(7)關聯至資料區502。此外,記憶體控制電路單元104(或記憶體管理電路202)會將實體抹除單元410(0)的第1與2實體程式化 單元、實體抹除單元410(3)的第0~2實體程式化單元和實體抹除單元410(5)的第0實體程式化單元標記為無效。
請參照圖23,由於實體抹除單元410(3)僅儲存無效資料,因此,記憶體控制電路單元104(或記憶體管理電路202)會對實體抹除單元410(3)執行抹除運作並將其關聯回閒置區。另外,保留專用於寫入循序資料的實體抹除單元已被使用,因此,記憶體控制電路單元104(或記憶體管理電路202)會據此調整垃圾回收門檻值。具體來說,記憶體控制電路單元104(或記憶體管理電路202)會將目前的垃圾回收門檻值減去執行此次寫入指令從閒置區504中提取用於寫入循序資料的實體抹除單元的數目,並且判斷目前的垃圾回收門檻值減去執行此次寫入指令從閒置區504中提取用於寫入循序資料的實體抹除單元的數目是否不大於最低門檻值。若目前的垃圾回收門檻值減去執行此次寫入指令從閒置區504中提取用於寫入循序資料的實體抹除單元的數目非小於最低門檻值時,記憶體控制電路單元104(或記憶體管理電路202)會以目前的垃圾回收門檻值減去執行此次寫入指令從閒置區504中提取用於寫入循序資料的實體抹除單元的數目作為新的垃圾回收門檻值。而若目前的垃圾回收門檻值減去執行此次寫入指令從閒置區504中提取用於寫入循序資料的實體抹除單元的數目小於最低門檻值時,則記憶體控制電路單元104(或記憶體管理電路202)會以最低門檻值作為新的垃圾回收門檻值。在圖22與圖23的範例中,新的垃圾回收門檻值會被設定為2。
在圖22與圖23的例子中,雖然主機系統1000指示一次 寫入大量的循序資料,然而,由於記憶體控制電路單元104(或記憶體管理電路202)無需執行資料合併程序來騰出空間,因此,可有效地縮短執行寫入指令的時間。
圖24~27是根據本發明一範例實施例所繪示之以隨機寫 入機制寫入隨機資料的另一範例。
請參照圖24,接續圖23,假設欲再程式化隨機資料RD14並且隨機資料RD14是屬於邏輯單元LBA(1)的第0個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD14寫入至實體抹除單元410(5)的第1個實體程式化單元,其中邏輯單元LBA(1)的第0個邏輯頁面原映射之實體抹除單元410(6)的第0個實體程式化單元會被標記為無效。
請參照圖25,接續圖24,假設欲再程式化隨機資料RD15並且隨機資料RD15是屬於邏輯單元LBA(1)的第2個邏輯頁面時,記憶體控制電路單元104(或記憶體管理電路202)會下達程式化指令以將此隨機資料RD15寫入至實體抹除單元410(5)的第2個實體程式化單元,其中邏輯單元LBA(1)的第2個邏輯頁面原映射之實體抹除單元410(6)的第2個實體程式化單元會被標記為無效。
請參照圖26,接續圖25,假設欲再程式化隨機資料RD16並且隨機資料RD16是屬於邏輯單元LBA(1)的第1個邏輯頁面 時,由於實體抹除單元410(5)已無儲存空間並且閒置區504的實體抹除單元的數目是大於垃圾回收門檻值,因此,記憶體控制電路單元104(或記憶體管理電路202)會直接從閒置區504中提取實體抹除單元410(1)來將此隨機資料RD16寫入至實體抹除單元410(1)的第0個實體程式化單元,而無需執行資料合併程序。在此例子中,實體抹除單元410(1)會再被關聯至資料區502。
由於實體抹除單元410(6)僅儲存無效資料,因此,記憶體控制電路單元104(或記憶體管理電路202)會僅儲存無效資料,因此,記憶體控制電路單元104(或記憶體管理電路202)會對實體抹除單元410(6)執行抹除運作並將其關聯回閒置區(見圖27)。特別是,由於實體抹除單元410(6)之前是被提取用循序資料,因此,記憶體控制電路單元104(或記憶體管理電路202)會將目前的垃圾回收門檻值加1(即,3)作為新的垃圾回收門檻值。
從圖8~27的範例中,可以清楚地了解,本範例實施例的記憶體控制電路單元104(或記憶體管理電路202)會藉由調整垃圾回收門檻值以動態地維持可複寫式非揮發性記憶體模組106中的一預定數量的實體抹除單元來專用於寫入循序資料,以使得以頁面為基礎來進行管理的記憶體儲存裝置100,可有效地提升循序資料的寫入速度。
圖28是根據本發明一範例實施例所繪示的資料寫入方法的流程圖。
請參照圖28,在步驟S2801中,記憶體控制電路單元 104(或記憶體管理電路202)將可複寫式非揮發性記憶體模組106的實體抹除單元至少分組為資料區與閒置區,配置多個邏輯單元以映射資料區502的實體抹除單元並且將預設的最低門檻值加上預定數量所獲得的值來設定垃圾回收門檻值。如上所述,最低門檻值為執行資料合併運作所需的實體抹除單元的數目並取預定數量為欲保留專用於循序資料的實體抹除單元的數目。在此,最低門檻值與預定數量可根據使用者的需求,適當的設定,不限於任何數目。
在步驟S2803中,記憶體控制電路單元104(或記憶體管理電路202)從主機系統1000中接收寫入指令,其中此寫入指令指示寫入資料(以下稱為第一資料)至至少一邏輯單元(以下稱為第一邏輯單元)。
在步驟S2805中,記憶體控制電路單元104(或記憶體管理電路202)會判斷閒置區504的實體抹除單元的數目是否不大於垃圾回收門檻值。
倘若閒置區504的實體抹除單元的數目不大於垃圾回收門檻值時,在步驟S2807中記憶體控制電路單元104(或記憶體管理電路202)執行一資料合併程序以將資料區502的至少一實體抹除單元關聯至閒置區504。例如,記憶體控制電路單元104(或記憶體管理電路202)從該資料區的實體抹除單元中選擇一實體抹除單元(以下稱為第三實體抹除單元),並且倘若第三實體抹除單元存有至少一有效資料時,將此至少一有效資料從第三實體抹除單 元複製到資料區504中的另一實體抹除單元(以下稱為第四實體抹除單元),抹除第三實體抹除單元並且將抹除後的第三實體抹除單元關聯至閒置區504。資料合併程序的詳細執行方式已配合圖式描述如上,在此不再重覆說明。
之後,在步驟S2809中,記憶體控制電路單元104(或記憶體管理電路202)判斷第一資料是屬於循序資料或隨機資料。
倘若該第一資料為循序資料時,在步驟S2811中,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504中提取至少一實體抹除單元(以下稱為第一實體抹除單元),將第一資料寫入至此至少一第一實體抹除單元,將此至少一第一實體抹除單元關聯至資料區504,依據此至少一第一實體抹除單元的數目與最低門檻值來調整垃圾回收門檻值。在此,當調整前的垃圾回收門檻值減去此至少一第一實體抹除單元的數目所獲得的值大於最低門檻值時,調整後的該垃圾回收門檻值會被設定為調整前的垃圾回收門檻值減去此至少一第一實體抹除單元的數目所獲得的值;並且當調整前的垃圾回收門檻值減去此至少一第一實體抹除單元的數目所獲得的值非大於最低門檻值時,調整後的垃圾回收門檻值會被設定為此最低門檻值。
倘若第一資料為隨機資料時,在步驟S2813中,記憶體控制電路單元104(或記憶體管理電路202)會從閒置區504的實體抹除單元中提取至少一實體抹除單元(以下稱為至少一第二實體抹除單元),將第一資料寫入至此至少一第二實體抹除單元並且將 此至少一第二實體抹除單元關聯至資料區504。
基於上述,本範例實施例的資料寫入方法、記憶體控制電路單元與記憶體儲存裝置能夠在有效地以隨機寫入機制程式化隨機資料的同時,亦可對於大量循序資料進行有效率地寫入,由此縮短執行請求寫入大量循序資料之寫入指令的時間並且避免資料遺失。
S2801、S2803、S2805、S2807、S2809、S2811、S2813‧‧‧資料寫入方法的步驟

Claims (15)

  1. 一種資料寫入方法,用於一可複寫式非揮發性記憶體模組,該可複寫式非揮發性記憶體模組包括多個實體抹除單元,該資料寫入方法包括:將該些實體抹除單元至少分組為一資料區與一閒置區;配置多個邏輯單元以映射該資料區的實體抹除單元;以及動態地維持該些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入一循序資料,其中動態地維持該些實體抹除單元之中的該預定數量的實體抹除單元來專用於寫入該循序資料的步驟包括:將一最低門檻值加上該預定數量所獲得的值來設定一垃圾回收門檻值;從一主機系統中接收一寫入指令,其中該寫入指令指示寫入一第一資料至該些邏輯單元之中的至少一第一邏輯單元;判斷該第一資料是否為一循序資料或一隨機資料;以及倘若該第一資料為該循序資料時,從該閒置區的該些實體抹除單元中提取至少一第一實體抹除單元,將該第一資料寫入至該至少一第一實體抹除單元,將該至少一第一實體抹除單元關聯至該資料區,依據該至少一第一實體抹除單元的數目與該最低門檻值來調整該垃圾回收門檻值,其中當調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值大於該最低門檻值時,調整後的該垃圾 回收門檻值會被設定為調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值,其中當調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值非大於該最低門檻值時,調整後的該垃圾回收門檻值會被設定為該最低門檻值。
  2. 如申請專利範圍第1項所述的資料寫入方法,其中動態地保持該些實體抹除單元之中的該預定數量的實體抹除單元來專用於寫入該循序資料的步驟更包括:倘若該第一資料為該隨機資料時,從該閒置區的實體抹除單元中提取至少一第二實體抹除單元,將該第一資料寫入至該至少一第二實體抹除單元並且將該至少一第二實體抹除單元關聯至該資料區。
  3. 如申請專利範圍第2項所述的資料寫入方法,其中動態地保持該些實體抹除單元之中的該預定數量的實體抹除單元來專用於寫入該循序資料的步驟更包括:判斷該閒置區的實體抹除單元的數目是否不大於該垃圾回收門檻值;以及倘若該閒置區的實體抹除單元的數目不大於該垃圾回收門檻值時,執行一資料合併程序以將該資料區的至少一實體抹除單元關聯至該閒置區。
  4. 如申請專利範圍第3項所述的資料寫入方法,其中執行該資料合併程序以將該資料區的至少一實體抹除單元關聯至該閒置 區的步驟包括:從該資料區的實體抹除單元中選擇一第三實體抹除單元;倘若該第三實體抹除單元存有至少一有效資料時,將該至少一有效資料從該第三實體抹除單元複製到該資料區中的一第四實體抹除單元;以及抹除該第三實體抹除單元並且將抹除後的該第三實體抹除單元關聯至該閒置區。
  5. 如申請專利範圍第1項所述的資料寫入方法,其中該邏輯單元的容量等於該資料區的實體抹除單元的容量,並且該預定數量的實體抹除單元的容量小於或等於該些邏輯單元的容量。
  6. 一種記憶體控制電路單元,用於控制一可複寫式非揮發性記憶體模組,該記憶體控制電路單元包括:一主機介面,用以耦接至一主機系統;一記憶體介面,用以耦接至該可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組具有多個實體抹除單元;以及一記憶體管理電路,耦接至該主機介面與該記憶體介面,並且用以將該些實體抹除單元至少分組為一資料區與一閒置區,其中該記憶體管理電路更用以配置多個邏輯單元以映射該資料區的實體抹除單元,其中該記憶體管理電路更用以動態地維持該些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入一循序資料, 其中該記憶體管理電路將一最低門檻值加上該預定數量所獲得的值來設定一垃圾回收門檻值,其中該記憶體管理電路從該主機系統中接收一寫入指令,其中該寫入指令指示寫入一第一資料至該些邏輯單元之中的至少一第一邏輯單元,其中該記憶體管理電路判斷該第一資料是否為一循序資料或一隨機資料,其中倘若該第一資料為該循序資料時,該記憶體管理電路從該閒置區的該些實體抹除單元中提取至少一第一實體抹除單元,將該第一資料寫入至該至少一第一實體抹除單元,將該至少一第一實體抹除單元關聯至該資料區,依據該至少一第一實體抹除單元的數目與該最低門檻值來調整該垃圾回收門檻值,其中當調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值大於該最低門檻值時,調整後的該垃圾回收門檻值會被設定為調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值,其中當調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值非大於該最低門檻值時,調整後的該垃圾回收門檻值會被設定為該最低門檻值。
  7. 如申請專利範圍第6項所述的記憶體控制電路單元,其中倘若該第一資料為該隨機資料時,該記憶體管理電路從該閒置區的實體抹除單元中提取至少一第二實體抹除單元,將該第一資料 寫入至該至少一第二實體抹除單元並且將該至少一第二實體抹除單元關聯至該資料區。
  8. 如申請專利範圍第7項所述的記憶體控制電路單元,其中該記憶體管理電路判斷該閒置區的實體抹除單元的數目是否不大於該垃圾回收門檻值,倘若該閒置區的實體抹除單元的數目不大於該垃圾回收門檻值時,該記憶體管理電路執行一資料合併程序以將該資料區的至少一實體抹除單元關聯至該閒置區。
  9. 如申請專利範圍第8項所述的記憶體控制電路單元,其中在執行該資料合併程序以將該資料區的至少一實體抹除單元關聯至該閒置區的運作中,該記憶體管理電路從該資料區的實體抹除單元中選擇一第三實體抹除單元,並且抹除該第三實體抹除單元並且將抹除後的該第三實體抹除單元關聯至該閒置區,其中倘若該第三實體抹除單元存有至少一有效資料時,該記憶體管理電路在抹除該第三實體抹除單元之前先將該至少一有效資料從該第三實體抹除單元複製到該資料區中的一第四實體抹除單元。
  10. 如申請專利範圍第6項所述的記憶體控制電路單元,其中該些邏輯單元的容量等於該資料區的實體抹除單元的容量,並且該預定數量的實體抹除單元的容量小於或等於該些邏輯單元的容量。
  11. 一種記憶體儲存裝置,包括: 一連接介面單元,用以耦接至一主機系統;一可複寫式非揮發性記憶體模組,具有多個實體抹除單元;以及一記憶體控制電路單元,耦接至該連接介面單元與該可複寫式非揮發性記憶體模組,並且用以將該些實體抹除單元至少分組為一資料區與一閒置區,其中該記憶體控制電路單元更用以配置多個邏輯單元以映射該資料區的實體抹除單元,其中該記憶體控制電路單元更用以動態地維持該些實體抹除單元之中的一預定數量的實體抹除單元來專用於寫入一循序資料,其中該記憶體控制電路單元將一最低門檻值加上該預定數量所獲得的值來設定一垃圾回收門檻值,其中該記憶體控制電路單元從該主機系統中接收一寫入指令,其中該寫入指令指示寫入一第一資料至該些邏輯單元之中的至少一第一邏輯單元,其中該記憶體控制電路單元判斷該第一資料是否為一循序資料或一隨機資料,其中倘若該第一資料為該循序資料時,該記憶體控制電路單元從該閒置區的該些實體抹除單元中提取至少一第一實體抹除單元,將該第一資料寫入至該至少一第一實體抹除單元,將該至少一第一實體抹除單元關聯至該資料區,依據該至少一第一實體抹 除單元的數目與該最低門檻值來調整該垃圾回收門檻值,其中當調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值大於該最低門檻值時,調整後的該垃圾回收門檻值會被設定為調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值,其中當調整前的該垃圾回收門檻值減去該至少一第一實體抹除單元的數目所獲得的值非大於該最低門檻值時,調整後的該垃圾回收門檻值會被設定為該最低門檻值。
  12. 如申請專利範圍第11項所述的記憶體儲存裝置,其中倘若該第一資料為該隨機資料時,該記憶體控制電路單元從該閒置區的實體抹除單元中提取至少一第二實體抹除單元,將該第一資料寫入至該至少一第二實體抹除單元並且將該至少一第二實體抹除單元關聯至該資料區。
  13. 如申請專利範圍第12項所述的記憶體儲存裝置,其中該記憶體控制電路單元判斷該閒置區的實體抹除單元的數目是否不大於該垃圾回收門檻值,倘若該閒置區的實體抹除單元的數目不大於該垃圾回收門檻值時,該記憶體控制電路單元執行一資料合併程序以將該資料區的至少一實體抹除單元關聯至該閒置區。
  14. 如申請專利範圍第13項所述的記憶體儲存裝置,其中在執行該資料合併程序以將該資料區的至少一實體抹除單元關聯至該閒置區的運作中,該記憶體控制電路單元從該資料區的實體抹 除單元中選擇一第三實體抹除單元,並且抹除該第三實體抹除單元並且將抹除後的該第三實體抹除單元關聯至該閒置區,其中倘若該第三實體抹除單元存有至少一有效資料時,該記憶體控制電路單元在抹除該第三實體抹除單元之前先將該至少一有效資料從該第三實體抹除單元複製到該資料區中的一第四實體抹除單元。
  15. 如申請專利範圍第11項所述的記憶體儲存裝置,其中該些邏輯單元的容量等於該資料區的實體抹除單元的容量,並且該預定數量的實體抹除單元的容量小於或等於該些邏輯單元的容量。
TW102141474A 2013-11-14 2013-11-14 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 TWI526830B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW102141474A TWI526830B (zh) 2013-11-14 2013-11-14 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
US14/166,768 US9268687B2 (en) 2013-11-14 2014-01-28 Data writing method, memory control circuit unit and memory storage apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW102141474A TWI526830B (zh) 2013-11-14 2013-11-14 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置

Publications (2)

Publication Number Publication Date
TW201518945A TW201518945A (zh) 2015-05-16
TWI526830B true TWI526830B (zh) 2016-03-21

Family

ID=53044824

Family Applications (1)

Application Number Title Priority Date Filing Date
TW102141474A TWI526830B (zh) 2013-11-14 2013-11-14 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置

Country Status (2)

Country Link
US (1) US9268687B2 (zh)
TW (1) TWI526830B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888593A (zh) * 2018-09-07 2020-03-17 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法
TWI712882B (zh) * 2018-09-07 2020-12-11 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9471353B1 (en) 2014-03-21 2016-10-18 Amazon Technologies, Inc. Isolating tenants executing in multi-tenant software containers
US9703611B1 (en) * 2014-03-21 2017-07-11 Amazon Technologies, Inc. Isolating resources for utilization by tenants executing in multi-tenant software containers
US9754122B1 (en) 2014-03-21 2017-09-05 Amazon Technologies, Inc. Isolating tenants executing in multi-tenant software containers
US9875039B2 (en) 2014-09-30 2018-01-23 Sandisk Technologies Llc Method and apparatus for wear-leveling non-volatile memory
TWI554884B (zh) * 2015-07-21 2016-10-21 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置
CN105335100B (zh) 2015-09-29 2018-09-21 华为技术有限公司 一种数据处理方法、装置及闪存设备
US10095423B2 (en) 2015-09-30 2018-10-09 Toshiba Memory Corporation Storage system that tracks mapping to a memory module to be detached therefrom
TWI553481B (zh) * 2015-09-30 2016-10-11 宇瞻科技股份有限公司 固態硬碟的資料管理方法、寫入管理系統及其方法
RU2642349C1 (ru) * 2015-11-27 2018-01-24 Хуавэй Текнолоджиз Ко., Лтд. Способ для сохранения данных посредством устройства хранения данных и устройство хранения данных
TWI609323B (zh) * 2016-01-29 2017-12-21 捷鼎國際股份有限公司 資料儲存方法及其系統
KR102340094B1 (ko) * 2017-03-31 2021-12-17 에스케이하이닉스 주식회사 메모리 시스템 및 그의 동작 방법
TWI681295B (zh) * 2017-07-07 2020-01-01 群聯電子股份有限公司 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置
CN109522236B (zh) * 2017-09-18 2022-10-21 群联电子股份有限公司 存储器管理方法、存储器控制电路单元与存储器存储装置
KR102530369B1 (ko) * 2018-04-23 2023-05-10 에스케이하이닉스 주식회사 저장 장치 및 그 동작 방법
KR20190128392A (ko) * 2018-05-08 2019-11-18 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
KR20190128283A (ko) * 2018-05-08 2019-11-18 에스케이하이닉스 주식회사 컨트롤러, 메모리 시스템 및 그 동작방법
KR102593757B1 (ko) * 2018-09-10 2023-10-26 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작방법
TW202018513A (zh) 2018-11-07 2020-05-16 威剛科技股份有限公司 固態硬碟及其資料存取的方法
TWI813978B (zh) * 2021-04-16 2023-09-01 群聯電子股份有限公司 快閃記憶體控制方法、快閃記憶體儲存裝置及快閃記憶體控制器

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6065020A (en) * 1998-05-27 2000-05-16 Microsoft Corporation Dynamic adjustment of garbage collection
US9286198B2 (en) * 2005-04-21 2016-03-15 Violin Memory Method and system for storage of data in non-volatile media
US8560770B2 (en) * 2009-11-13 2013-10-15 Seagate Technology Llc Non-volatile write cache for a data storage system
JP4886877B2 (ja) * 2010-05-31 2012-02-29 株式会社東芝 記録媒体制御装置、及びその方法
TWI454911B (zh) 2011-10-12 2014-10-01 Phison Electronics Corp 資料寫入方法、記憶體控制器與記憶體儲存裝置
US20140122774A1 (en) * 2012-10-31 2014-05-01 Hong Kong Applied Science and Technology Research Institute Company Limited Method for Managing Data of Solid State Storage with Data Attributes
JP5951472B2 (ja) * 2012-12-26 2016-07-13 株式会社東芝 ディスク記憶装置及び方法
CN104298606A (zh) * 2013-07-17 2015-01-21 光宝科技股份有限公司 固态存储装置中垃圾搜集动作的控制方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888593A (zh) * 2018-09-07 2020-03-17 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法
TWI712882B (zh) * 2018-09-07 2020-12-11 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體控制方法
CN110888593B (zh) * 2018-09-07 2024-01-26 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法

Also Published As

Publication number Publication date
US9268687B2 (en) 2016-02-23
TW201518945A (zh) 2015-05-16
US20150134887A1 (en) 2015-05-14

Similar Documents

Publication Publication Date Title
TWI526830B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TWI527037B (zh) 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置
TWI524183B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TWI506430B (zh) 映射資訊記錄方法、記憶體控制器與記憶體儲存裝置
TWI515735B (zh) 資料抹除方法、記憶體控制電路單元及記憶體儲存裝置
TWI399643B (zh) 快閃記憶體儲存系統及其控制器與資料寫入方法
TWI537728B (zh) 緩衝記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置
US9122498B2 (en) Firmware code loading method, memory controller and memory storage apparatus
TWI479492B (zh) 記憶體儲存裝置、其記憶體控制器與資料寫入方法
TWI423026B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
TWI470431B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
TWI436212B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
TWI498899B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TWI476590B (zh) 記憶體管理方法、記憶體控制器與記憶體儲存裝置
TWI479505B (zh) 資料管理方法、記憶體控制器與記憶體儲存裝置
TWI479315B (zh) 記憶體儲存裝置、其記憶體控制器與資料寫入方法
TWI438630B (zh) 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置
TW201409230A (zh) 系統資料儲存方法、記憶體控制器與記憶體儲存裝置
TW201344434A (zh) 記憶體格式化方法、記憶體控制器及記憶體儲存裝置
TWI509615B (zh) 資料儲存方法、記憶體控制器與記憶體儲存裝置
TWI517165B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TWI451247B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
TWI635495B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TWI428743B (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置
TW201312351A (zh) 資料寫入方法、記憶體控制器與記憶體儲存裝置