TWI622044B - 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 - Google Patents
記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 Download PDFInfo
- Publication number
- TWI622044B TWI622044B TW105128705A TW105128705A TWI622044B TW I622044 B TWI622044 B TW I622044B TW 105128705 A TW105128705 A TW 105128705A TW 105128705 A TW105128705 A TW 105128705A TW I622044 B TWI622044 B TW I622044B
- Authority
- TW
- Taiwan
- Prior art keywords
- memory
- storage space
- plane
- data
- buffer
- Prior art date
Links
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本發明提出一種記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置。本方法包括:將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器;釋放緩衝記憶體的第一儲存空間,其中第一儲存空間用以儲存暫存資料;利用第一儲存空間對第二記憶體平面執行第一操作;以及在完成對第二記憶體平面所執行的第一操作之後,將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體的第一儲存空間,其中上述對第一記憶體平面以及第二記憶體平面的操作為非同步操作。
Description
本發明是有關於一種管理記憶體的技術,且特別是有關於一種能暫時增加緩衝記憶體的儲存空間的記憶體管理方法及使用此方法的記憶體控制電路單元與記憶體儲存裝置。
數位相機、手機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體(rewritable non-volatile memory)具有資料非揮發性、省電、體積小、無機械結構、讀寫速度快等特性,最適於可攜式電子產品,例如筆記型電腦。固態硬碟就是一種以快閃記憶體模組作為儲存媒體的記憶體儲存裝置。因此,近年快閃記憶體產業成為電子產業中相當熱門的一環。
在使用可複寫式非揮發性記憶體作為儲存媒體的記憶體儲存裝置中,通常也會配置緩衝記憶體,用以暫存程式碼或是資料。由於成本的考量,這樣的緩衝記憶體並不會有很大的儲存空間。因此,當緩衝記憶體的可用儲存空間不足時,如何能夠快速且暫時的空出緩衝記憶體的儲存空間,以執行需較多暫存空間的操作,為此領域技術人員所關心的議題。
本發明提出一種記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置,其能夠暫時且快速的空出緩衝記憶體的儲存空間。
本發明的一範例實施例提供一種記憶體管理方法,用於操作記憶體儲存裝置的緩衝記憶體。其中,記憶體儲存裝置包括可複寫式非揮發性記憶體模組且可複寫式非揮發性記憶體模組包括多個記憶體平面,此些記憶體平面被平行地操作。記憶體管理方法包括:將暫存資料從緩衝記憶體中傳送至上述記憶體平面之中的第一記憶體平面的暫存器;釋放緩衝記憶體的第一儲存空間,其中第一儲存空間用以儲存暫存資料;使用第一儲存空間對上述記憶體平面之中的第二記憶體平面執行第一操作;以及在完成對第二記憶體平面所執行的第一操作之後,將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體的第一儲存空間,其中上述對第一記憶體平面以及第二記憶體平面的操作為非同步操作。
在本發明的一實施例中,其中記憶體平面中的每一個記憶體平面具有多個實體抹除單元,其中在將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的步驟之前,記憶體管理方法更包括:執行寫入操作以將第一資料寫入至第二記憶體平面的第一實體抹除單元;以及當對應寫入操作產生寫入失敗訊息時,執行上述將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的步驟。
在本發明的一實施例中,其中在使用第一儲存空間執行第一操作的步驟中,更包括:使用第一儲存空間以及緩衝記憶體的第二儲存空間對第二記憶體平面執行第一操作。
在本發明的一實施例中,其中使用第一儲存空間以及緩衝記憶體的第二儲存空間對第二記憶體平面執行第一操作的步驟包括:從第二記憶體平面的第一實體抹除單元中複製第二資料與第三資料至緩衝記憶體的第一儲存空間以及第二儲存空間;以及將第二資料與第三資料從緩衝記憶體的第一儲存空間以及第二儲存空間中同時寫入至第二記憶體平面的第二實體抹除單元中。
在本發明的一實施例中,記憶體管理方法更包括:將第一資料寫入至第二記憶體平面的第二實體抹除單元。
在本發明的一實施例中,其中緩衝記憶體的第一儲存空間的大小為16K位元組。
本發明一範例實施例提供一種用於控制可複寫式非揮發性記憶體模組的記憶體控制電路單元,其中可複寫式非揮發性記憶體模組包括多個記憶體平面,此些記憶體平面被平行地操作。此記憶體控制電路單元包括:用以耦接至主機系統的主機介面;用以耦接至可複寫式非揮發性記憶體模組的記憶體介面;耦接至主機介面及記憶體介面的緩衝記憶體;以及耦接至主機介面、記憶體介面與緩衝記憶體的記憶體管理電路。記憶體管理電路用以將暫存資料從緩衝記憶體中傳送至上述記憶體平面之中的第一記憶體平面的暫存器。記憶體管理電路更用以釋放緩衝記憶體的第一儲存空間,其中第一儲存空間用以儲存暫存資料。記憶體管理電路更用以使用第一儲存空間對上述記憶體平面之中的第二記憶體平面執行第一操作。在完成對第二記憶體平面所執行的第一操作之後,記憶體管理電路更用以將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體的第一儲存空間,其中上述對第一記憶體平面以及第二記憶體平面的操作為非同步操作。
在本發明的一實施例中,記憶體平面中的每一個記憶體平面具有多個實體抹除單元。其中在將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的運作之前,記憶體管理電路更用以執行寫入操作以將第一資料寫入至第二記憶體平面的第一實體抹除單元。當記憶體管理電路對應寫入操作產生寫入失敗訊息時,記憶體管理電路更用以執行上述將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的運作。
在本發明的一實施例中,其中在使用第一儲存空間執行第一操作的運作中,記憶體管理電路更用以使用第一儲存空間以及緩衝記憶體的第二儲存空間對第二記憶體平面執行第一操作。
在本發明的一實施例中,其中在使用第一儲存空間以及緩衝記憶體的第二儲存空間對第二記憶體平面執行第一操作的運作中,記憶體管理電路更用以從第二記憶體平面的第一實體抹除單元中複製第二資料與第三資料至緩衝記憶體的第一儲存空間以及第二儲存空間。記憶體管理電路更用以將第二資料與第三資料從緩衝記憶體的第一儲存空間以及第二儲存空間中同時寫入至第二記憶體平面的第二實體抹除單元中。
在本發明的一實施例中,記憶體管理電路更用以將第一資料寫入至第二記憶體平面的第二實體抹除單元。
在本發明的一實施例中,其中緩衝記憶體的第一儲存空間的大小為16K位元組。
本發明一範例實施例提供一種記憶體儲存裝置。其包括:用以耦接至主機系統的連接介面單元、可複寫式非揮發性記憶體模組以及耦接至連接介面單元與可複寫式非揮發性記憶體模組的記憶體控制電路單元。其中可複寫式非揮發性記憶體模組包括多個記憶體平面,此些記憶體平面被平行地操作。其中記憶體控制電路單元包括緩衝記憶體。記憶體控制電路單元用以將暫存資料從緩衝記憶體中傳送至上述記憶體平面之中的第一記憶體平面的暫存器。記憶體控制電路單元更用以釋放緩衝記憶體的第一儲存空間,其中第一儲存空間用以儲存暫存資料。記憶體控制電路單元更用以使用第一儲存空間對上述記憶體平面之中的第二記憶體平面執行第一操作。在完成對第二記憶體平面所執行第一操作之後,記憶體控制電路單元更用以將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體的第一儲存空間,其中上述對第一記憶體平面以及第二記憶體平面的操作為非同步操作。
在本發明的一實施例中,其中記憶體平面中的每一個記憶體平面具有多個實體抹除單元,其中在將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的運作之前,記憶體控制電路單元用以執行寫入操作以將第一資料寫入至第二記憶體平面的第一實體抹除單元。當記憶體控制電路單元對應寫入操作產生寫入失敗訊息時,記憶體控制電路單元更用以執行上述將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的運作。
在本發明的一實施例中,其中在使用第一儲存空間執行第一操作的運作中,記憶體控制電路單元更用以使用第一儲存空間以及緩衝記憶體的第二儲存空間對第二記憶體平面執行第一操作。
在本發明的一實施例中,其中在使用第一儲存空間以及緩衝記憶體的第二儲存空間對第二記憶體平面執行第一操作的運作中,記憶體控制電路單元更用以從第二記憶體平面的第一實體抹除單元中複製第二資料與第三資料至緩衝記憶體的第一儲存空間以及第二儲存空間。記憶體控制電路單元更用以將第二資料與第三資料從緩衝記憶體的第一儲存空間以及第二儲存空間中同時寫入至第二記憶體平面的第二實體抹除單元中。
在本發明的一實施例中,記憶體控制電路單元更用以將第一資料寫入至第二記憶體平面的第二實體抹除單元。
在本發明的一實施例中,其中緩衝記憶體的第一儲存空間的大小為16K位元組(Bytes)。
基於上述,本發明提出的記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置,可以暫時地空出緩衝記憶體的儲存空間。特別是,由於資料被暫存在可複寫式非揮發性記憶體的一記憶體平面的暫存器,記憶體控制器可以利用緩衝記憶體的儲存空間來對另外一個記憶體平面中的實體抹除單元進行操作。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中讀取資料。
圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。
請參照圖1與圖2,主機系統11一般包括處理器111、隨機存取記憶體(random access memory, RAM)112、唯讀記憶體(read only memory, ROM)113及資料傳輸介面114。處理器111、隨機存取記憶體112、唯讀記憶體113及資料傳輸介面114皆耦接至系統匯流排(system bus)110。
在本範例實施例中,主機系統11是透過資料傳輸介面114與記憶體儲存裝置10耦接。例如,主機系統11可經由資料傳輸介面114將資料寫入至記憶體儲存裝置10或從記憶體儲存裝置10中讀取資料。此外,主機系統11是透過系統匯流排110與I/O裝置12耦接。例如,主機系統11可經由系統匯流排110將輸出訊號傳送至I/O裝置12或從I/O裝置12接收輸入訊號。
在本範例實施例中,處理器111、隨機存取記憶體112、唯讀記憶體113及資料傳輸介面114是可設置在主機系統11的主機板20上。資料傳輸介面114的數目可以是一或多個。透過資料傳輸介面114,主機板20可以經由有線或無線的方式耦接至記憶體儲存裝置10。其中記憶體儲存裝置10可例如是隨身碟201、記憶卡202、固態硬碟(Solid State Drive, SSD)203或無線記憶體儲存裝置204。其中,無線記憶體儲存裝置204可例如是近距離無線通訊(Near Field Communication, NFC)記憶體儲存裝置、無線傳真(WiFi)記憶體儲存裝置、藍牙(Bluetooth)記憶體儲存裝置或低功耗藍牙記憶體儲存裝置(例如,iBeacon)等以各式無線通訊技術為基礎的各種類型記憶體儲存裝置。此外,主機板20也可以透過系統匯流排110耦接至全球定位系統(Global Positioning System, GPS)模組205、網路介面卡206、無線傳輸裝置207、鍵盤208、螢幕209、喇叭210等各種類型的式I/O裝置。例如,在一範例實施例中,主機板20可透過無線傳輸裝置207存取無線記憶體儲存裝置204。
在一範例實施例中,所提及的主機系統為可實質地與記憶體儲存裝置配合以儲存資料的任意系統。雖然在上述範例實施例中,主機系統是以電腦系統來作說明,然而,圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。請參照圖3,在另一範例實施例中,主機系統31也可以是數位相機、攝影機、通訊裝置、音訊播放器、視訊播放器或平板電腦等系統,而記憶體儲存裝置30可為其所使用的SD卡32、CF卡33或嵌入式儲存裝置34等各式非揮發性記憶體儲存裝置。嵌入式儲存裝置34包括嵌入式多媒體卡(embedded MMC, eMMC)341及/或嵌入式多晶片封裝儲存裝置(embedded Multi Chip Package, eMCP)342等各類型將記憶體模組直接耦接於主機系統的基板上的嵌入式儲存裝置。
圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。
請參照圖4,記憶體儲存裝置10包括連接介面單元402、記憶體控制電路單元404與可複寫式非揮發性記憶體模組406。
在本範例實施例中,連接介面單元402是相容於序列先進附件(Serial Advanced Technology Attachment, SATA)標準。然而,必須瞭解的是,本發明不限於此,連接介面單元402亦可以是符合並列先進附件(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-Chip Package)介面標準、多媒體儲存卡(Multi Media Card, MMC)介面標準、崁入式多媒體儲存卡(Embedded Multimedia Card, eMMC)介面標準、通用快閃記憶體(Universal Flash Storage, UFS)介面標準、嵌入式多晶片封裝(embedded Multi Chip Package, eMCP)介面標準、小型快閃(Compact Flash, CF)介面標準、整合式驅動電子介面(Integrated Device Electronics, IDE)標準或其他適合的標準。連接介面單元402可與記憶體控制電路單元404封裝在一個晶片中,或者連接介面單元402是佈設於一包含記憶體控制電路單元404之晶片外。
記憶體控制電路單元404用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令,並且根據主機系統11的指令在可複寫式非揮發性記憶體模組406中進行資料的寫入、讀取與抹除等運作。
可複寫式非揮發性記憶體模組406是耦接至記憶體控制電路單元404並且用以儲存主機系統11所寫入之資料。可複寫式非揮發性記憶體模組406可以是單階記憶胞(Single Level Cell, SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個位元的快閃記憶體模組)、多階記憶胞(Multi Level Cell, MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個位元的快閃記憶體模組)、複數階記憶胞(Triple Level Cell,TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個位元的快閃記憶體模組)、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
在本範例實施例中,上述可複寫式非揮發性記憶體模組406的裝置是依據可複寫式非揮發性記憶體模組406的記憶體晶粒(die)中的記憶體平面(plane)所劃分的。具體來說,可複寫式非揮發性記憶體模組406可具有1個或多個記憶體晶粒,每一記憶體晶粒具有1個或多個記憶體平面,並且每一記憶體平面會有多個實體抹除單元。在出廠時,廠商會根據其需求將1個或多個記憶體平面劃分為1個裝置。藉此,廠商可依裝置為單位來管理整個可複寫式非揮發性記憶體模組406。特別是,本發明並不限定每一裝置所包含的記憶體平面的數量。
在本範例實施例中,可複寫式非揮發性記憶體模組406包括記憶體平面408(以下稱為第二記憶體平面)以及記憶體平面414(以下稱為第一記憶體平面)。其中,記憶體平面408包括暫存器410以及實體抹除單元412(0)~412(N)。
暫存器410是用以暫存來自於記憶體控制電路單元404或是暫存實體抹除單元412(0)~412(N)的資料。具體來說,在可複寫式非揮發性記憶體模組406中寫入資料的過程包括資料傳輸以及資料程式化兩個部分。在資料傳輸的部分,記憶體控制電路單元404的記憶體管理電路502會將欲寫入的資料傳輸至暫存器410。而在資料程式化的部分,欲寫入的資料會從暫存器410中程式化至實體抹除單元412(0)~412(N)中。在一範例實施例中,暫存器410可為揮發性記憶體,例如動態隨機存取記憶體(dynamic random access memory, DRAM),但是暫存器410也可以是靜態隨機存取記憶體(static random access memory, SRAM)、磁電阻式隨機存取記憶(Magnetoresistive Random Access Memory, MRAM)、快取隨機存取記憶體(Cache RAM)、同步動態隨機存取記憶體(synchronous dynamic random access memory, SDRAM)、視頻隨機存取記憶器(Video RAM, VRAM)嵌入式動態隨機存取記憶體(embedded DRAM, eDRAM) 或其他的記憶體。在另一範例實施例中,暫存器410可為非揮發性記憶體,例如反或閘快閃記憶體(NOR Flash)或其他的記憶體。
此外,實體抹除單元412(0)~412(N)分別具有複數個實體程式化單元,其中屬於同一個實體抹除單元之實體程式化單元可被獨立地寫入且被同時地抹除。然而,必須瞭解的是,本發明不限於此,每一實體抹除單元可以是由64個實體程式化單元、256個實體程式化單元或其他任意個實體程式化單元所組成。
在本範例實施例中,記憶體平面414包括暫存器416以及實體抹除單元418(0)~418(N)。暫存器416以及實體抹除單元418(0)~418(N)可以是類似上述記憶體平面408中的暫存器410以及實體抹除單元412(0)~412(N),在此並不再贅述。特別是,本發明並不用於限定可複寫式非揮發性記憶體模組406所包括的記憶體平面的數量,且本發明亦不用於限定每個記憶體平面所具有的實體抹除單元的數量。
在一般的情況下,記憶體平面408以及記憶體平面414是被平行地進行操作。具體來說,當記憶體控制電路單元404的記憶體管理電路502在執行寫入操作以將一筆資料寫入至可複寫式非揮發性記憶體模組406時,記憶體控制電路單元404的記憶體管理電路502可以將此資料分為多個子資料,並將此些子資料平行地程式化至記憶體平面408中的實體程式化單元以及記憶體平面414中的實體程式化單元。藉由此方式可以同時地對記憶體平面408以及記憶體平面414進行寫入,並且提升寫入操作的執行效率。當記憶體控制電路單元404的記憶體管理電路502在執行讀取操作時,記憶體控制電路單元404的記憶體管理電路502可以平行地(或同時地)從記憶體平面408中以及記憶體平面414中讀取多個子資料,並且將此些子資料重組為原始的資料。此外,當記憶體控制電路單元404的記憶體管理電路502在執行抹除操作時,記憶體控制電路單元404的記憶體管理電路502也可以平行地(或同時地)對記憶體平面408中的實體抹除單元以及記憶體平面414中的實體抹除單元同時進行抹除。
也就是說,在一般的情況下,記憶體平面408以及記憶體平面414是被同步地進行操作。特別是,本發明不限於此。在一實施例中,記憶體控制電路單元404的記憶體管理電路502也可以平行地(或同步地)對記憶體平面408以及記憶體平面414執行其他的操作。
圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。
請參照圖5,記憶體控制電路單元404包括記憶體管理電路502、主機介面504及記憶體介面506。
記憶體管理電路502用以控制記憶體控制電路單元404的整體運作。具體來說,記憶體管理電路502具有多個控制指令,並且在記憶體儲存裝置10運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。以下說明記憶體管理電路502執行各項操作的同時,可以理解為由記憶體控制電路單元404來執行此些操作。
在本範例實施例中,記憶體管理電路502的控制指令是以韌體型式來實作。例如,記憶體管理電路502具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置10運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在另一範例實施例中,記憶體管理電路502的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組406的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路502具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有開機碼(boot code),並且當記憶體控制電路單元404被致能時,微處理器單元會先執行此開機碼來將儲存於可複寫式非揮發性記憶體模組406中之控制指令載入至記憶體管理電路502的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。
此外,在另一範例實施例中,記憶體管理電路502的控制指令亦可以一硬體型式來實作。例如,記憶體管理電路502包括微控制器、記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路。記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路是耦接至微控制器。記憶胞管理電路用以管理可複寫式非揮發性記憶體模組406的記憶胞或其群組。記憶體寫入電路用以對可複寫式非揮發性記憶體模組406下達寫入指令序列以將資料寫入至可複寫式非揮發性記憶體模組406中。記憶體讀取電路用以對可複寫式非揮發性記憶體模組406下達讀取指令序列以從可複寫式非揮發性記憶體模組406中讀取資料。記憶體抹除電路用以對可複寫式非揮發性記憶體模組406下達抹除指令序列以將資料從可複寫式非揮發性記憶體模組406中抹除。資料處理電路用以處理欲寫入至可複寫式非揮發性記憶體模組406的資料以及從可複寫式非揮發性記憶體模組406中讀取的資料。寫入指令序列、讀取指令序列及抹除指令序列可各別包括一或多個程式碼或指令碼並且用以指示可複寫式非揮發性記憶體模組406執行相對應的寫入、讀取及抹除等操作。在一範例實施例中,記憶體管理電路502還可以下達其他類型的指令序列給可複寫式非揮發性記憶體模組406以指示執行相對應的操作。
主機介面504是耦接至記憶體管理電路502並且用以接收與識別主機系統11所傳送的指令與資料。也就是說,主機系統11所傳送的指令與資料會透過主機介面504來傳送至記憶體管理電路502。在本範例實施例中,主機介面504是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面504亦可以是相容於PATA標準、IEEE 1394標準、PCI Express標準、USB標準、SD標準、UHS-I標準、UHS-II標準、MS標準、MMC標準、eMMC標準、UFS標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面506是耦接至記憶體管理電路502並且用以存取可複寫式非揮發性記憶體模組406。也就是說,欲寫入至可複寫式非揮發性記憶體模組406的資料會經由記憶體介面506轉換為可複寫式非揮發性記憶體模組406所能接受的格式。具體來說,若記憶體管理電路502要存取可複寫式非揮發性記憶體模組406,記憶體介面506會傳送對應的指令序列。例如,這些指令序列可包括指示寫入資料的寫入指令序列、指示讀取資料的讀取指令序列、指示抹除資料的抹除指令序列、以及用以指示各種記憶體操作(例如,改變讀取電壓準位或執行垃圾回收操作等等)的相對應的指令序列。這些指令序列例如是由記憶體管理電路502產生並且透過記憶體介面506傳送至可複寫式非揮發性記憶體模組406。這些指令序列可包括一或多個訊號,或是在匯流排上的資料。這些訊號或資料可包括指令碼或程式碼。例如,在讀取指令序列中,會包括讀取的辨識碼、記憶體位址等資訊。
錯誤檢查與校正電路508是耦接至記憶體管理電路502並且用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,當記憶體管理電路502從主機系統11中接收到寫入指令時,錯誤檢查與校正電路508會為對應此寫入指令的資料產生對應的錯誤更正碼(error correcting code, ECC)及/或錯誤檢查碼(error detecting code,EDC),並且記憶體管理電路502會將對應此寫入指令的資料與對應的錯誤更正碼及/或錯誤檢查碼寫入至可複寫式非揮發性記憶體模組406中。之後,當記憶體管理電路502從可複寫式非揮發性記憶體模組406中讀取資料時會同時讀取此資料對應的錯誤更正碼及/或錯誤檢查碼,並且錯誤檢查與校正電路508會依據此錯誤更正碼及/或錯誤檢查碼對所讀取的資料執行錯誤檢查與校正程序。
緩衝記憶體510是耦接至記憶體管理電路502並且用以暫存來自於主機系統11的資料與指令或來自於可複寫式非揮發性記憶體模組406的資料。電源管理電路512是耦接至記憶體管理電路502並且用以控制記憶體儲存裝置10的電源。
圖6是根據一範例實施例所繪示之緩衝記憶體的示意圖。
請參照圖6,在本範例實施例中,緩衝記憶體510具有512個緩存單元(即,緩存單元610(0)~610(511)),且每一個緩存單元的大小為4KB。具體而言,四個緩存單元的大小為對應可複寫式非揮發性記憶體406的一個實體程式化單元的大小。換句話說,在本範例實施例中,一個實體程式化單元的大小為16KB。為了方便於描述,在此將四個緩存單元邏輯上定義為一個緩存單元組。例如,緩衝記憶體510中的緩存單元610(0)~610(3)可以邏輯上地被定義為緩存單元組620,緩存單元610(4)~610(7)可以邏輯上地被定義為緩存單元組630,以此類推。當記憶體管理電路502從可複寫式非揮發性記憶體模組406的一個實體程式化單元讀取資料時,此實體程式化單元的資料可以剛好被儲存至一個緩存單元組中。然而,必須暸解的是,本範例實施例不限定配置在緩衝記憶體510中的緩存單元的個數、緩存單元的大小、實體程式化單元的大小以及主機系統11所傳送之資料的大小。例如,在其他範例實施例中,緩衝記憶體510中緩存單元的個數可以多於或少於512個緩存單元。此外,主機系統11例如是以4KB為單位來傳送或存取資料。或者,在另一範例實施例中,主機系統11每次所傳送或存取之資料的大小亦可以大於或小於4KB。再者,本發明亦不用於限定一個實體程式化單元的大小,且在另一範例實施例中,一個緩存單元組可以包括更多個或更少個緩存單元。在另一範例實施例中,緩存單元組中的緩存單元也可以不連續。
需注意的是,在反及(NAND)型快閃記憶體模組中,實體程式化單元是由排列在同一條字元線上的數個記憶胞所組成。依據每個記憶胞可儲存的位元數, 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個位元的資料。
由於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所組成的實體程式化單元稱為下實體程式化單元(lower physical programming unit),並且由此些記憶胞之MSB所組成的實體程式化單元稱為上實體程式化單元(upper physical programming unit)。特別是,當程式化上實體程式化單元發生錯誤時,下實體程式化單元所儲存之資料亦可能因此遺失。
此外,在3D MLC NAND型快閃記憶體模組中,若要確保一條字元線上的資料可穩定地被儲存,必須同時地對上實體程式化單元以及下實體程式化單元進行程式化。特別是,當記憶體管理電路502欲對可複寫式非揮發性記憶體模組406執行一預設操作時,倘若緩衝記憶體510中保留給此預設操作的儲存空間僅可以容納一個實體程式化單元的大小的資料,則當此預設操作對於可複寫式非揮發性記憶體模組406進行寫入操作時容易造成寫入失敗。換句話說,在上述的情況下,由於緩衝記憶體510的容量關係,緩衝記憶體510一次只能對一個實體程式化單元進行寫入,故容易造成寫入失敗。
特別是,上述的預設操作例如是發生寫入失敗時所需進行的壞區塊取代(Bad block replace)操作(又稱為,壞實體抹除單元取代操作)。由於壞區塊取代操作通常會對多個實體程式化單元進行寫入,倘若緩衝記憶體510保留給此壞區塊取代操作的儲存空間僅可以容納一個實體程式化單元的大小的資料,則當壞區塊取代操作對可複寫式非揮發性記憶體模組406進行寫入操作時,容易造成寫入失敗。
特別是,由於壞區塊取代操作通常會針對某一個記憶體平面來執行,因此在本範例實施例中,可以通過將緩衝記憶體510中的部份資料暫存至另一個記憶體平面的暫存器中,使得緩衝記憶體510能夠暫時地增加儲存空間來執行壞區塊取代操作。
為了更請楚地了解本發明的資料管理方法,圖7A~圖7E是根據一範例實施例說明空出緩衝記憶體的部分記憶體空間的示意圖。
請參照圖7A,為方便說明,在此僅繪示出記憶體平面408中部份的實體抹除單元(即,實體抹除單元412(0)~412(1))以及記憶體平面414中部份的實體抹除單元(即,實體抹除單元418(0)~418(1))進行描述。此外,在本範例實施例中假設一個實體抹除單元具有64個實體程式化單元。
特別是,在圖7A~圖7E的範例實施例中,可複寫式非揮發性記憶體模組406是MLC NAND型快閃記憶體模組,也就是說,每一個實體抹除單元所擁有的實體程式化單元包括多個下實體程式化單元以及多個上實體程式化單元。
如圖7A所示,假設緩衝記憶體510中的緩存單元組620儲存有暫存資料BD而緩存單元組630尚未儲存資料,並且假設資料ID(0)~ID(1)已成功地被分別寫入實體抹除單元412(0)(以下稱為第一實體抹除單元)的第0個實體程式化單元以及實體抹除單元412(0)的第1個實體程式化單元。其中,實體抹除單元412(0)的第0個實體程式化單元以及實體抹除單元412(0)的第1個實體程式化單元分別為同一個記憶胞的下實體程式化單元以及上實體程式化單元。
接著,倘若記憶體管理電路502執行寫入操作將資料ID(2)(以下稱為第一資料)寫入至實體抹除單元412(0)的第2個實
體程式化單元時發生寫入失敗。此時,記憶體管理電路502會產生寫入失敗訊息,並且執行壞區塊取代操作。
詳細來說,請參照圖7B,記憶體管理電路502會將緩衝記憶體中510中儲存在緩存單元組620中的暫存資料BD傳送(或複製)到記憶體平面414的暫存器416。此時,記憶體管理電路502可以釋放緩衝記憶體510中緩存單元組620的儲存空間(以下稱為第一儲存空間)。之後,記憶體管理電路502可以利用緩存單元組620的儲存空間以及緩存單元組630的儲存空間(以下稱為第二儲存空間)來對記憶體平面408執行壞區塊取代操作。
請參照圖7C,在執行壞區塊取代操作時,記憶體管理電路502會將已成功寫入實體抹除單元412(0)的資料ID(0)(以下稱為第二資料)以及資料ID(1)(以下稱為第三資料)分別複製至緩衝記憶體510的緩存單元組620~630。之後,請參照圖7D,記憶體管理電路502會將資料ID(0)~ID(1)從緩衝記憶體510的緩存單元組620~630寫入(或複製)至記憶體平面408的實體抹除單元412(1)(以下稱為第二實體抹除單元)中的第0個實體程式化單元以及實體抹除單元412(1)的第1個實體程式化單元。其中,實體抹除單元412(1)的第0個實體程式化單元以及實體抹除單元412(1)的第1個實體程式化單元分別為同一個記憶胞的下實體程式化單元以及上實體程式化單元。
請參照圖7E,在利用緩存單元組620~630的儲存空間對記憶體平面408執行上述的壞區塊取代操作的步驟之後,假設資料ID(0)~ID(1)已成功地被寫入實體抹除單元412(1)的第0個實體程式化單元以及實體抹除單元412(1)的第1個實體程式化單元。之後,記憶體管理電路502可以釋放緩存單元組620~630的儲存空間,並且將暫存資料BD從記憶體平面414的暫存器416重新載入至緩衝記憶體510的緩存單元組620中。此外,記憶體管理電路502可以接著將前次發生寫入失敗的資料ID(2)重新寫入至實體抹除單元412(1)的第2個實體程式化單元,並且再繼續執行其他寫入操作以將更多資料寫入至實體抹除單元412(1)中。
特別是,在上述圖7B~圖7E的實施例中,記憶體管理電路502對記憶體平面408以及記憶體平面414的操作為非同步操作。換句話說,記憶體管理電路502在將暫存資料BD傳送(或複製)到記憶體平面414的暫存器416後,可以對記憶體平面408執行壞區塊取代操作。而在對記憶體平面408執行壞區塊取代操作的同時,記憶體管理電路502並不會對記憶體平面414進行壞區塊取代操作或其他的操作。
此外,上述將緩衝記憶體510中的暫存資料複製到一記憶體平面的暫存器並且使用緩衝記憶體510中所空出的儲存空間對另一記憶體平面進行操作的實施例也可以應用至其他操作。例如,在一範例實施例中,當記憶體管理電路502從可複寫式非揮發性記憶體406中讀取資料發生讀取錯誤時,記憶體管理電路502可以執行本發明的方法以暫時增加緩衝記憶體510的儲存空間,並且執行在發生讀取錯誤後所需執行的預設操作。
圖8是根據一範例實施例所繪示的記憶體的管理方法的流程圖。
請參照圖8,在步驟S801中,記憶體管理電路502將暫存資料從緩衝記憶體510中傳送至第一記憶體平面的暫存器。在步驟S803中,記憶體管理電路502釋放緩衝記憶體510的第一儲存空間,其中第一儲存空間用以儲存暫存資料。在步驟S805中,記憶體管理電路502利用第一儲存空間對第二記憶體平面執行第一操作。在完成對第二記憶體平面所執行的第一操作之後,在步驟S807中,記憶體管理電路502將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體的第一儲存空間。特別是,上述步驟S801至步驟S807中記憶體管理電路502對第一記憶體平面以及第二記憶體平面的操作為非同步操作。
圖9是根據另一範例實施例所繪示的記憶體的管理方法的流程圖。
請參照圖9,在步驟S901中,記憶體管理電路502執行寫入操作以將第一資料寫入至第二記憶體平面的第一實體抹除單元。在步驟S903中,記憶體管理電路502會判斷是否發生寫入失敗。
當沒有發生寫入失敗時,此流程會結束。例如,記憶體管理電路502會根據指令執行其他操作。
當發生寫入失敗時,在步驟S905中,記憶體管理電路502會將暫存資料從緩衝記憶體510中傳送至第一記憶體平面的暫存器。特別是,在步驟S905中,記憶體管理電路502會指示可複寫式非揮發性記憶體406,不將暫存資料程式化至第一記憶體平面的記憶體抹除單元。
接著,在步驟S907中,記憶體管理電路502釋放緩衝記憶體510的第一儲存空間,其中第一儲存空間用以儲存暫存資料。在步驟S909中,記憶體管理電路502會從第二記憶體平面的第一實體抹除單元中複製第二資料與第三資料至緩衝記憶體的第一儲存空間以及第二儲存空間。在步驟S911中,記憶體管理電路502將第二資料與第三資料從緩衝記憶體的第一儲存空間以及第二儲存空間中同時寫入至第二記憶體平面的第二實體抹除單元中。在步驟S913中,記憶體管理電路502將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體510的第一儲存空間。最後,在步驟S915中,記憶體管理電路502將第一資料寫入至第二記憶體平面的第二實體抹除單元。特別是,上述步驟S905至步驟S915中記憶體管理電路502對第一記憶體平面以及第二記憶體平面的操作為非同步操作。
綜上所述,本發明提出的記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置,可以暫時地空出緩衝記憶體的儲存空間。並且,由於資料被暫存在可複寫式非揮發性記憶體的一記憶體平面的暫存器,記憶體控制器可以利用緩衝記憶體的儲存空間來對另外一個記憶體平面中的實體抹除單元進行操作。因此,緩衝記憶體的可用儲存空間可以暫時地增加。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
10:記憶體儲存裝置 11:主機系統 110:系統匯流排 111:處理器 112:隨機存取記憶體 113:唯讀記憶體 114:資料傳輸介面 12:輸入/輸出(I/O)裝置 20:主機板 201:隨身碟 202:記憶卡 203:固態硬碟 204:無線記憶體儲存裝置 205:全球定位系統模組 206:網路介面卡 207:無線傳輸裝置 208:鍵盤 209:螢幕 210:喇叭 32:SD卡 33:CF卡 34:嵌入式儲存裝置 341:嵌入式多媒體卡 342:嵌入式多晶片封裝儲存裝置 402:連接介面單元 404:記憶體控制電路單元 406:可複寫式非揮發性記憶體模組 408、414:記憶體平面 410、416:暫存器 412(0)~ 412(N)、418(0)~ 418(N):實體抹除單元 502:記憶體管理電路 504:主機介面 506:記憶體介面 508:錯誤檢查與校正電路 510:緩衝記憶體 512:電源管理電路 610(0)~610(511):緩存單元 620、630:緩存單元組 BD:暫存資料 ID(0)、ID(1)、ID(2):資料 S801:將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的步驟 S803:釋放緩衝記憶體的第一儲存空間,其中第一儲存空間用以儲存暫存資料的步驟 S805:使用第一儲存空間對第二記憶體平面執行第一操作的步驟 S807:將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體的第一儲存空間的步驟 S901:執行寫入操作以將第一資料寫入至第二記憶體平面的第一實體抹除單元的步驟 S903:判斷是否寫入失敗的步驟 S905:當發生寫入失敗時,將暫存資料從緩衝記憶體中傳送至第一記憶體平面的暫存器的步驟 S907:釋放緩衝記憶體的第一儲存空間,其中第一儲存空間用以儲存暫存資料的步驟 S909:從第二記憶體平面的第一實體抹除單元中複製第二資料與第三資料至緩衝記憶體的第一儲存空間以及第二儲存空間的步驟 S911:將第二資料與第三資料從緩衝記憶體的第一儲存空間以及第二儲存空間中同時寫入至第二記憶體平面的第二實體抹除單元中的步驟 S913:將暫存資料從第一記憶體平面的暫存器中重新載入至緩衝記憶體的第一儲存空間的步驟 S915:將第一資料寫入至第二記憶體平面的第二實體抹除單元的步驟
圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。 圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。 圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。 圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。 圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。 圖6是根據一範例實施例所繪示之緩衝記憶體的示意圖。 圖7A~圖7E是根據一範例實施例說明空出緩衝記憶體的部分記憶體空間的示意圖。 圖8是根據一範例實施例所繪示的記憶體的管理方法的流程圖。 圖9是根據另一範例實施例所繪示的記憶體的管理方法的流程圖。
Claims (18)
- 一種記憶體管理方法,用於一記憶體儲存裝置的一緩衝記憶體,其中該記憶體儲存裝置包括一可複寫式非揮發性記憶體模組且該可複寫式非揮發性記憶體模組包括多個記憶體平面,該些記憶體平面被平行地操作,該記憶體管理方法包括: 將一暫存資料從該緩衝記憶體中傳送至該些記憶體平面之中的一第一記憶體平面的一暫存器; 釋放該緩衝記憶體的一第一儲存空間,其中該第一儲存空間用以儲存該暫存資料; 使用該第一儲存空間對該些記憶體平面之中的一第二記憶體平面執行一第一操作;以及 在完成對該第二記憶體平面所執行的該第一操作之後,將該暫存資料從該第一記憶體平面的暫存器中重新載入至該緩衝記憶體的該第一儲存空間, 其中上述對該第一記憶體平面以及該第二記憶體平面的操作為非同步操作。
- 如申請專利範圍第1項所述的記憶體管理方法,其中該些記憶體平面中的每一個記憶體平面具有多個實體抹除單元,該記憶體管理方法更包括: 在將該暫存資料從該緩衝記憶體中傳送至該第一記憶體平面的暫存器的步驟之前, 執行一寫入操作以將一第一資料寫入至該第二記憶體平面的一第一實體抹除單元;以及 當對應該寫入操作產生一寫入失敗訊息時,執行上述將該暫存資料從該緩衝記憶體中傳送至該第一記憶體平面的暫存器的步驟。
- 如申請專利範圍第1項所述的記憶體管理方法,其中使用該第一儲存空間執行該第一操作的步驟包括: 使用該第一儲存空間以及該緩衝記憶體的一第二儲存空間對該第二記憶體平面執行該第一操作。
- 如申請專利範圍第3項所述的記憶體管理方法,其中使用該第一儲存空間以及該緩衝記憶體的該第二儲存空間對該第二記憶體平面執行該第一操作的步驟包括: 從該第二記憶體平面的該第一實體抹除單元中複製一第二資料與一第三資料至該緩衝記憶體的該第一儲存空間以及該第二儲存空間;以及 將該第二資料與該第三資料從該緩衝記憶體的該第一儲存空間以及該第二儲存空間中同時寫入至該第二記憶體平面的一第二實體抹除單元中。
- 如申請專利範圍第4項所述的記憶體管理方法,更包括: 將該第一資料寫入至該第二記憶體平面的該第二實體抹除單元。
- 如申請專利範圍第1項所述的記憶體管理方法,其中該緩衝記憶體的該第一儲存空間的大小為16千位元組。
- 一種記憶體控制電路單元,用於控制一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組包括多個記憶體平面,該些記憶體平面被平行地操作,其中該記憶體控制電路單元包括: 一主機介面,用以耦接至一主機系統; 一記憶體介面,用以耦接至該可複寫式非揮發性記憶體模組; 一緩衝記憶體,耦接至該主機介面及該記憶體介面;以及 一記憶體管理電路,耦接至該主機介面、該記憶體介面與該緩衝記憶體, 其中該記憶體管理電路用以將一暫存資料從該緩衝記憶體中傳送至該些記憶體平面之中的一第一記憶體平面的一暫存器, 其中該記憶體管理電路更用以釋放該緩衝記憶體的一第一儲存空間,其中該第一儲存空間用以儲存該暫存資料, 其中該記憶體管理電路更用以使用該第一儲存空間對該些記憶體平面之中的一第二記憶體平面執行一第一操作, 在完成對該第二記憶體平面所執行的該第一操作之後,該記憶體管理電路更用以將該暫存資料從該第一記憶體平面的暫存器中重新載入至該緩衝記憶體的該第一儲存空間, 其中上述對該第一記憶體平面以及該第二記憶體平面的操作為非同步操作。
- 如申請專利範圍第7項所述的記憶體控制電路單元,其中該些記憶體平面中的每一個記憶體平面具有多個實體抹除單元, 其中在將該暫存資料從該緩衝記憶體中傳送至該第一記憶體平面的暫存器的運作之前, 該記憶體管理電路更用以執行一寫入操作以將一第一資料寫入至該第二記憶體平面的一第一實體抹除單元, 當該記憶體管理電路對應該寫入操作產生一寫入失敗訊息時,該記憶體管理電路執行上述將該暫存資料從該緩衝記憶體中傳送至該第一記憶體平面的暫存器的運作。
- 如申請專利範圍第7項所述的記憶體控制電路單元,其中在使用該第一儲存空間執行該第一操作的運作中, 該記憶體管理電路更用以使用該第一儲存空間以及該緩衝記憶體的一第二儲存空間對該第二記憶體平面執行該第一操作。
- 如申請專利範圍第9項所述的記憶體控制電路單元,其中在使用該第一儲存空間以及該緩衝記憶體的該第二儲存空間對該第二記憶體平面執行該第一操作的運作中, 該記憶體管理電路更用以從該第二記憶體平面的該第一實體抹除單元中複製一第二資料與一第三資料至該緩衝記憶體的該第一儲存空間以及該第二儲存空間, 該記憶體管理電路更用以將該第二資料與該第三資料從該緩衝記憶體的該第一儲存空間以及該第二儲存空間中同時寫入至該第二記憶體平面的一第二實體抹除單元中。
- 如申請專利範圍第10項所述的記憶體控制電路單元,其中 該記憶體管理電路更用以將該第一資料寫入至該第二記憶體平面的該第二實體抹除單元。
- 如申請專利範圍第7項所述的記憶體控制電路單元,其中該緩衝記憶體的該第一儲存空間的大小為16千位元組。
- 一種記憶體儲存裝置,包括: 一連接介面單元,用以耦接至一主機系統; 一可複寫式非揮發性記憶體模組,其中該可複寫式非揮發性記憶體模組包括多個記憶體平面,該些記憶體平面被平行地操作;以及 一記憶體控制電路單元,耦接至該連接介面單元與該可複寫式非揮發性記憶體模組,其中該記憶體控制電路單元包括一緩衝記憶體, 其中該記憶體控制電路單元用以將一暫存資料從該緩衝記憶體中傳送至該些記憶體平面之中的一第一記憶體平面的一暫存器, 其中該記憶體控制電路單元更用以釋放該緩衝記憶體的一第一儲存空間,其中該第一儲存空間用以儲存該暫存資料, 其中該記憶體控制電路單元更用以使用該第一儲存空間對該些記憶體平面之中的一第二記憶體平面執行一第一操作, 在完成對該第二記憶體平面所執行的該第一操作之後,該記憶體控制電路單元更用以將該暫存資料從該第一記憶體平面的暫存器中重新載入至該緩衝記憶體的該第一儲存空間, 其中上述對該第一記憶體平面以及該第二記憶體平面的操作為非同步操作。
- 如申請專利範圍第13項所述的記憶體儲存裝置,其中該些記憶體平面中的每一個記憶體平面具有多個實體抹除單元, 其中在將該暫存資料從該緩衝記憶體中傳送至該第一記憶體平面的暫存器的運作之前, 該記憶體控制電路單元更用以執行一寫入操作以將一第一資料寫入至該第二記憶體平面的一第一實體抹除單元, 當該記憶體控制電路單元對應該寫入操作產生一寫入失敗訊息時,該記憶體控制電路單元執行上述將該暫存資料從該緩衝記憶體中傳送至該第一記憶體平面的暫存器的運作。
- 如申請專利範圍第13項所述的記憶體儲存裝置,其中在使用該第一儲存空間執行該第一操作的運作中, 該記憶體控制電路單元更用以使用該第一儲存空間以及該緩衝記憶體的一第二儲存空間對該第二記憶體平面執行該第一操作。
- 如申請專利範圍第15項所述的記憶體儲存裝置,其中在使用該第一儲存空間以及該緩衝記憶體的該第二儲存空間對該第二記憶體平面執行該第一操作的運作中, 該記憶體控制電路單元更用以從該第二記憶體平面的該第一實體抹除單元中複製一第二資料與一第三資料至該緩衝記憶體的該第一儲存空間以及該第二儲存空間, 該記憶體控制電路單元更用以將該第二資料與該第三資料從該緩衝記憶體的該第一儲存空間以及該第二儲存空間中同時寫入至該第二記憶體平面的一第二實體抹除單元中。
- 如申請專利範圍第16項所述的記憶體儲存裝置,其中 該記憶體控制電路單元更用以將該第一資料寫入至該第二記憶體平面的該第二實體抹除單元。
- 如申請專利範圍第13項所述的記憶體儲存裝置,其中該緩衝記憶體的該第一儲存空間的大小為16千位元組。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105128705A TWI622044B (zh) | 2016-09-06 | 2016-09-06 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105128705A TWI622044B (zh) | 2016-09-06 | 2016-09-06 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201810258A TW201810258A (zh) | 2018-03-16 |
TWI622044B true TWI622044B (zh) | 2018-04-21 |
Family
ID=62189961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105128705A TWI622044B (zh) | 2016-09-06 | 2016-09-06 | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
Country Status (1)
Country | Link |
---|---|
TW (1) | TWI622044B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI816205B (zh) * | 2021-06-21 | 2023-09-21 | 日商鎧俠股份有限公司 | 記憶體系統及控制方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050119369A (ko) * | 2004-06-16 | 2005-12-21 | 주식회사 팬택 | 직접 실행 불가 저장 장치의 관리 방법 |
JP2008181381A (ja) * | 2007-01-25 | 2008-08-07 | Toshiba Corp | 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム |
TW201015314A (en) * | 2008-10-03 | 2010-04-16 | Phison Electronics Corp | Memory managing method for non-volatile memory and controller using the same |
US20130073792A1 (en) * | 2011-09-21 | 2013-03-21 | Acer Incorporated | Electronic apparatus using nand flash and memory management method thereof |
JP2013149112A (ja) * | 2012-01-20 | 2013-08-01 | Hitachi Ltd | 記憶媒体の管理方法 |
TW201506621A (zh) * | 2013-08-15 | 2015-02-16 | Htc Corp | 頁面移出機制之記憶體管理方法及系統,及其電腦程式產品 |
TW201531855A (zh) * | 2014-02-14 | 2015-08-16 | Phison Electronics Corp | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
TWI537728B (zh) * | 2015-09-23 | 2016-06-11 | 群聯電子股份有限公司 | 緩衝記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 |
TW201631595A (zh) * | 2015-02-17 | 2016-09-01 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
-
2016
- 2016-09-06 TW TW105128705A patent/TWI622044B/zh active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20050119369A (ko) * | 2004-06-16 | 2005-12-21 | 주식회사 팬택 | 직접 실행 불가 저장 장치의 관리 방법 |
JP2008181381A (ja) * | 2007-01-25 | 2008-08-07 | Toshiba Corp | 半導体メモリカード、半導体メモリカードのデータ管理方法、データベースエンジン、及び半導体メモリシステム |
TW201015314A (en) * | 2008-10-03 | 2010-04-16 | Phison Electronics Corp | Memory managing method for non-volatile memory and controller using the same |
TWI470428B (zh) * | 2008-10-03 | 2015-01-21 | Phison Electronics Corp | 用於非揮發性記憶體的資料程式規劃系統、記憶體管理方法及其控制器 |
US20130073792A1 (en) * | 2011-09-21 | 2013-03-21 | Acer Incorporated | Electronic apparatus using nand flash and memory management method thereof |
JP2013149112A (ja) * | 2012-01-20 | 2013-08-01 | Hitachi Ltd | 記憶媒体の管理方法 |
TW201506621A (zh) * | 2013-08-15 | 2015-02-16 | Htc Corp | 頁面移出機制之記憶體管理方法及系統,及其電腦程式產品 |
TW201531855A (zh) * | 2014-02-14 | 2015-08-16 | Phison Electronics Corp | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 |
TW201631595A (zh) * | 2015-02-17 | 2016-09-01 | 群聯電子股份有限公司 | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 |
TWI537728B (zh) * | 2015-09-23 | 2016-06-11 | 群聯電子股份有限公司 | 緩衝記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI816205B (zh) * | 2021-06-21 | 2023-09-21 | 日商鎧俠股份有限公司 | 記憶體系統及控制方法 |
Also Published As
Publication number | Publication date |
---|---|
TW201810258A (zh) | 2018-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10126953B2 (en) | Memory management method for buffer memory, and memory control circuit unit and memory storage device using the same | |
TWI592799B (zh) | 映射表更新方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI607448B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI597730B (zh) | 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置 | |
CN107590080B (zh) | 映射表更新方法、存储器控制电路单元及存储器存储装置 | |
TWI498899B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN107544922B (zh) | 数据写入方法、存储器控制电路单元及存储器存储装置 | |
TWI447579B (zh) | 程式碼載入與存取方法、記憶體控制器與記憶體儲存裝置 | |
TWI607309B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI523030B (zh) | 緩衝記憶體管理方法、記憶體控制器與記憶體儲存裝置 | |
TW201324145A (zh) | 用於非揮發性記憶體的資料合併方法、控制器與儲存裝置 | |
TWI540428B (zh) | 資料寫入方法、記憶體控制器與記憶體儲存裝置 | |
TWI785876B (zh) | 映射資訊記錄方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI717751B (zh) | 資料寫入方法、記憶體控制電路單元及記憶體儲存裝置 | |
TW201525693A (zh) | 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI635495B (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
US8738847B2 (en) | Data writing method, and memory controller and memory storage apparatus using the same | |
TWI622044B (zh) | 記憶體管理方法、記憶體控制電路單元與記憶體儲存裝置 | |
TWI603335B (zh) | 映射表載入方法、記憶體控制電路單元與記憶體儲存裝置 | |
CN112835536B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
TW201611035A (zh) | 非揮發性記憶體裝置的操作方法 | |
TWI591641B (zh) | 資料程式化方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI813362B (zh) | 部分抹除管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI814501B (zh) | 映射表重建方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI780003B (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 |