[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

TWI385516B - 快閃記憶體儲存系統及其資料寫入方法 - Google Patents

快閃記憶體儲存系統及其資料寫入方法 Download PDF

Info

Publication number
TWI385516B
TWI385516B TW097130697A TW97130697A TWI385516B TW I385516 B TWI385516 B TW I385516B TW 097130697 A TW097130697 A TW 097130697A TW 97130697 A TW97130697 A TW 97130697A TW I385516 B TWI385516 B TW I385516B
Authority
TW
Taiwan
Prior art keywords
data
flash memory
memory
controller
nand flash
Prior art date
Application number
TW097130697A
Other languages
English (en)
Other versions
TW201007449A (en
Inventor
Chih Kang Yeh
Original Assignee
Phison Electronics Corp
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 Phison Electronics Corp filed Critical Phison Electronics Corp
Priority to TW097130697A priority Critical patent/TWI385516B/zh
Priority to US12/263,040 priority patent/US8234466B2/en
Publication of TW201007449A publication Critical patent/TW201007449A/zh
Application granted granted Critical
Publication of TWI385516B publication Critical patent/TWI385516B/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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0866Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches for peripheral storage systems, e.g. disk cache
    • G06F12/0868Data transfer between cache memory and other subsystems, e.g. storage devices or host systems
    • 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0804Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with main memory updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/21Employing a record carrier using a specific recording technology
    • G06F2212/214Solid state disk

Landscapes

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

Description

快閃記憶體儲存系統及其資料寫入方法
本發明是有關於一種儲存系統,且特別是有關於一種使用多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體作為儲存媒體的快閃記憶體儲存系統及其資料寫入方法。
數位相機、手機相機與MP3在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於快閃記憶體(Flash Memory)具有資料非揮發性、省電、體積小與無機械結構等的特性,適合可攜式應用,最適合使用於這類可攜式由電池供電的產品上。固態硬碟就是一種以NAND快閃記憶體作為儲存媒體的儲存裝置。
一般來說,快閃記憶體儲存系統的快閃記憶體會劃分為多個實體區塊並且此些實體區塊會分組為資料區(data area)與備用區(spare area)。歸類為資料區的實體區塊中會儲存由寫入指令所寫入的有效資料,而備用區中的實體區塊是用以在執行寫入指令時替換資料區中的實體區塊。具體來說,當快閃記憶體儲存系統接受到主機的寫入指令而欲對資料區的實體區塊進行寫入時,快閃記憶體儲存系統會從備用區中提取一實體區塊並且將在資料區中欲寫入的實體區塊中的有效舊資料與欲寫入的新資料寫入至從備用區中提取的實體區塊並且將已寫入新資料的實體區塊關聯 為資料區,並且將原本資料區的實體區塊進行抹除並關聯為備用區。為了能夠讓主機能夠順利地存取以輪替方式儲存資料的實體區塊,快閃記憶體儲存系統會提供邏輯區塊給主機。也就是說,快閃記憶體儲存系統會建立邏輯-實體區塊對映表,並且在此表中記錄與更新邏輯區塊與資料區的實體區塊之間的對映關係來反映實體區塊的輪替,所以主機僅需要針對所提供邏輯區塊進行寫入而快閃記憶體儲存系統會依據邏輯-實體區塊對映表對所對映的實體區塊進行讀取或寫入資料。
然而,隨著快閃記憶體製程上的進步而使得每一實體區塊的設計容量會越來越大的同時,亦造成上述搬移有效舊資料的時間會相對的增加而使得當主機執行寫入指令時必須等待較長的回應時間。特別是當以多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體作為儲存媒體的快閃記憶體儲存系統(例如,固態硬碟)當作主機系統的主硬碟時,此上述的長回應時間會嚴重影響主機系統的運作效能。為了克服此問題,目前會在快閃記憶體儲存系統中設置一動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)作為一個快取記憶體。在此架構中,主機系統會被告知快閃記憶體儲存系統支援快取存取的功能,因此從主機系統接收的資料會先暫時地儲存在此DRAM中以加速主機的運作。然而,由於DRAM中的資料會在關機時清除或者在容量不足時被新資料所取代,因此在此架構下主機系統會在準備關機時或一特定需求時對快閃記憶 體儲存系統下達清除指令(flush command)以指示快閃記憶體儲存系統立刻將DRAM中的暫存資料寫入至MLC NAND快閃記憶體中。然而,倘若暫存於DRAM的資料是相當零散,也就是此些暫存的資料是屬於多個不同的實體區塊時,將DRAM中的資料寫入至MLC NAND快閃記憶體會需要一段較長的時間。此時,主機系統需會處於等候狀態以等待快閃記憶體儲存系統完成上述動作,此延遲時間將造成使用者的不便。因此,有需要針對使用MLC NAND快閃記憶體的儲存系統發展一套能夠加速暫存DRAM中之暫存資料的系統。
有鑑於此,本發明提供一種快閃記憶體儲存系統,其能夠在使用MLC NAND快閃記憶體作為儲存媒體且開啟快取記憶體功能的架構中有效地縮短主機系統下達清除(flush)快取記憶體時的回應時間,以提升系統的整體效能。
本發明提供一種資料寫入方法,其能夠在使用MLC NAND快閃記憶體作為儲存媒體且開啟快取記憶體功能的架構中有效地縮短主機系統下達清除(flush)快取記憶體時的回應時間,以提升系統的整體效能。
本發明提出一種快閃記憶體儲存系統,其包括控制器以及電性連接至該控制器的連接器、快取記憶體、單層記憶胞(Single Level Cell,SLC)NAND快閃記憶體與多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體。當控制器 透過連接器從主機中接收到欲寫入至MLC NAND快閃記憶體的資料時,控制器會將資料暫時地儲存在快取記憶體中並且之後將資料從快取記憶體中寫入至MLC NAND快閃記憶體中。此外,控制器會在SLC NAND快閃記憶體中暫存在快取記憶體中所儲存的資料。
在本發明之一實施例中,上述之控制器會在接收到主機的清除指令時將快取記憶體中的資料暫存至SLC NAND快閃記憶體中。
在本發明之一實施例中,上述之控制器會將暫存在SLC NAND快閃記憶體中的資料重新載入至快取記憶體。
在本發明之一實施例中,上述之控制器會將暫存在SLC NAND快閃記憶體中的資料寫入至MLC NAND快閃記憶體。
在本發明之一實施例中,上述之控制器會在快取記憶體已存滿資料時將快取記憶體中所儲存的資料暫存至SLC NAND快閃記憶體中。
在本發明之一實施例中,上述之SLC NAND快閃記憶體的容量是快取記憶體的容量的兩倍。
在本發明之一實施例中,上述之快取記憶體為動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)或雙倍資料傳輸率動態隨機存取記憶體(Double Data Rate DRAM,DDR DRAM)。
本發明提出一種資料寫入方法,其適用於具有快取記憶體、SLC NAND快閃記憶體與MLC NAND快閃記憶體 的快閃記憶體儲存系統。此資料寫入方法包括將欲寫入至快閃記憶體儲存系統的資料暫時地儲存在快取記憶體中,並且將資料從快取記憶體中寫入至MLC NAND快閃記憶體中。此方法也包括在SLC NAND快閃記憶體中暫存在快取記憶體中所儲存的資料。
在本發明之一實施例中,上述之在SLC NAND快閃記憶體中暫存儲存在快取記憶體中的資料的步驟包括在接收到主機的清除指令時將快取記憶體中所儲存的資料暫存至SLC NAND快閃記憶體中。
在本發明之一實施例中,上述之資料寫入方法更包括將暫存在SLC NAND快閃記憶體中的資料重新載入至快取記憶體中。
在本發明之一實施例中,上述之資料寫入方法更包括將暫存在SLC NAND快閃記憶體中的資料寫入至MLC NAND快閃記憶體中。
在本發明之一實施例中,上述之在SLC NAND快閃記憶體中暫存在快取記憶體中所儲存的資料的步驟包括在快取記憶體已存滿資料時將快取記憶體中所儲存的資料暫存至SLC NAND快閃記憶體中。
本發明提出一種快閃記憶體儲存系統,其包括控制器以及電性連接至此控制器的連接器、快取記憶體與MLC NAND快閃記憶體,其中MLC NAND快閃記憶體會分割為緩衝儲存區域與資料儲存區域。緩衝儲存區域與資料儲存區域分別地具有多個實體區塊且每一實體區塊包括下 頁位址與上頁位址,其中當控制器透過連接器從主機中接收到欲寫入至MLC NAND快閃記憶體的資料時,控制器會將資料暫時地儲存在快取記憶體中並且之後將資料從快取記憶體中寫入至資料儲存區域,並且控制器會在緩衝儲存區域的下頁位址中暫存儲存在快取記憶體中的資料。
在本發明之一實施例中,上述之控制器會在接收到主機的清除指令時將快取記憶體中的資料暫存至緩衝儲存區域的下頁位址中。
在本發明之一實施例中,上述之控制器會將暫存在緩衝儲存區域的下頁位址中的資料重新載入至快取記憶體中。
在本發明之一實施例中,上述之控制器會將暫存在緩衝儲存區域的下頁位址中的資料寫入至資料儲存區域中。
在本發明之一實施例中,上述之控制器會在快取記憶體已存滿資料時將快取記憶體中的資料暫存至緩衝儲存區域的下頁位址中。
在本發明之一實施例中,上述之緩衝儲存區域的下頁位址的容量是快取記憶體的容量的兩倍。
在本發明之一實施例中,上述之快取記憶體為動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)或雙倍資料傳輸率動態隨機存取記憶體(Double Data Rate DRAM,DDR DRAM)。
本發明提出一種資料寫入方法,其適用於具有快取記憶體與MLC NAND快閃記憶體的快閃記憶體儲存系統, 其中MLC NAND快閃記憶體具有緩衝儲存區域與資料儲存區域,而緩衝儲存區域與資料儲存區域分別地具有多個實體區塊且每一實體區塊包括下頁位址與上頁位址。此資料寫入方法包括將欲寫入至快閃記憶體儲存系統的資料暫時地儲存在快取記憶體中,並且將資料從該快取記憶體中寫入至MLC NAND快閃記憶體的資料儲存區域。此方法也包括在緩衝儲存區域的下頁位址中暫存在快取記憶體中所儲存的資料。
在本發明之一實施例中,上述之在緩衝儲存區域的下頁位址中暫存儲存在快取記憶體中的資料的步驟包括在接收到主機的清除指令時將快取記憶體中的資料暫存至緩衝儲存區域的下頁位址中。
在本發明之一實施例中,上述之資料寫入方法更包括將暫存在緩衝儲存區域的下頁位址中的資料重新載入至快取記憶體中。
在本發明之一實施例中,上述之資料寫入方法更包括將暫存在緩衝儲存區域的下頁位址中的資料寫入至MLC NAND快閃記憶體的資料儲存區中。
在本發明之一實施例中,上述之在緩衝儲存區域的下頁位址中暫存在快取記憶體中所儲存的資料的步驟包括在快取記憶體已存滿資料時將快取記憶體中的資料暫存至緩衝儲存區域的下頁位址中。
本發明提出一種快閃記憶體儲存系統,其包括控制器以及電性連接至該控制器的連接器、快取記憶體、第一非 揮發性記憶體與第二非揮發性記憶體,其中第一非揮發性記憶體的寫入速度快於第二非揮發性記憶體。當控制器透過連接器從主機中接收到欲寫入至第二非揮發性記憶體的資料時,控制器會將資料暫時地儲存在快取記憶體中並且之後將資料從快取記憶體中寫入至第二非揮發性記憶體中。此外,控制器會在第一非揮發性記憶體中暫存在快取記憶體中所儲存的資料。
本發明因採用速度較快的暫存取來暫存快取記憶體中的資料,因此能夠避免主機系統因等候快閃記憶體儲存系統整理快取記憶體中的資料而造成的延遲。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉較佳實施例,並配合所附圖式,作詳細說明如下。
為了解決上述在具有快取記憶體的MLC NAND快閃記憶體儲存系統中由於快取記憶體的資料過於零散而使得在接受到主機的清除指令(flush command)需要較長時間的運作以將快取記憶體中的資料寫入至MLC NAND快閃記憶體而產生的延遲,本發明利用在快閃記憶體儲存系統配置具非揮發性且寫入速度較快的暫存區域(例如,另一非揮發性記憶體)來暫時地儲存快取記憶體中的資料。基此,快閃記憶體儲存系統就可在接收到主機的清除指令時先將資料快速地暫存至此暫存區域中,以完成快取記憶體中之資料的暫存。為能更清楚瞭解本發明,以下將以數個範例實 施例並配合圖式來詳細說明。
[第一實施例]
圖1是根據本發明第一實施例繪示快閃記憶體儲存系統的概要方塊圖。請參照圖1,快閃記憶體儲存系統100包括控制器110、連接器120、MLC NAND快閃記憶體130、快取記憶體140以及SLC NAND快閃記憶體150。
通常快閃記憶體儲存系統100會與主機系統200一起使用,以使主機系統200可將資料寫入至快閃記憶體儲存系統100或從快閃記憶體儲存系統100中讀取資料。在本實施例中,快閃記憶體儲存系統100是固態硬碟(Solid State Drive,SSD),且是配置在主機系統200中用作為主硬碟。但必須瞭解的是,在本發明另一實施例中快閃記憶體儲存系統100亦可以是記憶卡或隨身碟。
控制器110會執行以硬體型式或韌體型式實作的多個指令以配合連接器120、MLC NAND快閃記憶體130、快取記憶體140以及SLC NAND快閃記憶體150來進行資料的儲存、讀取與抹除等運作。控制器110包括微處理器單元110a、記憶體管理模組110b、快閃記憶體介面模組110c、緩衝記憶體110d與主機介面模組110e。
微處理器單元110a用以與記憶體管理模組110b、快閃記憶體介面模組110c、緩衝記憶體110d與主機介面模組110e等協同合作以進行快閃記憶體儲存系統100的各種運作。
記憶體管理模組110b是耦接至微處理器單元110a。 記憶體管理模組110b具有可由微處理器單元110a執行的多個機器指令以管理MLC NAND快閃記憶體130與SLC NAND快閃記憶體150,例如區塊管理功能、維護邏輯-實體區塊對映表(mapping table)功能等的機器指令。特別是,在本發明實施例中,記憶體管理模組110b包含可完成根據本實施例的資料寫入步驟(如圖3所示)的機器指令。
在本實施例中,記憶體管理模組110b是以一韌體型式實作在控制器110中,例如以程式語言撰寫程式相關機械指令並且儲存於程式記憶體(例如,唯讀記憶體(Read Only Memory,ROM))來實作記憶體管理模組110b。當快閃記憶體儲存系統100運作時,記憶體管理模組110b的多個機器指令會間接地被載入至緩衝記憶體110d中並且由微處理器單元110a來執行或直接由微處理器單元110a來執行以完成上述平均磨損功能、壞區塊管理功能、維護邏輯-實體區塊對映表功能等。特別是,控制器110藉由執行記憶體管理模組110b的多個機械指令來此完成根據本發明實施例的資料寫入步驟(如圖3所示)。
在本發明另一實施例中,記憶體管理模組110b的機械指令亦可以韌體型式儲存於MLC NAND快閃記憶體130或SLC NAND快閃記憶體150的特定區域(例如,快閃記憶體中專用於存放系統資料的系統區)中。同樣的,當快閃記憶體儲存系統100運作時,記憶體管理模組110b的多個機器指令會被載入至緩衝記憶體110d中並且由微處理器單元110a來執行。此外,在本發明另一實施例中記憶體管 理模組110b亦可以一硬體型式實作在控制器110中。
快閃記憶體介面模組110c是耦接至微處理器單元110a並且用以存取MLC NAND快閃記憶體130與SLC NAND快閃記憶體150。也就是,欲寫入至MLC NAND快閃記憶體130與SLC NAND快閃記憶體150的資料會經由快閃記憶體介面模組110c轉換為MLC NAND快閃記憶體130與SLC NAND快閃記憶體150所能接受的格式。
緩衝記憶體110d是耦接至微處理器單元110a並且用以暫時地儲存系統資料(例如邏輯-實體區塊對映表)與記憶體管理模組110b的機械指令。在本實施例中,緩衝記憶體110d為靜態隨機存取記憶體(static random access memory,SRAM)。然而,必須瞭解的是,本發明不限於此,動態隨機存取記憶體(Dynamic Random Access memory,DRAM)、磁阻式記憶體(Magnetoresistive Random Access Memory,MRAM)、相變化記憶體(Phase Change Random Access Memory,PRAM)或其他適合的記憶體亦可應用於本發明。
主機介面模組110e是耦接至微處理器單元110a並且用以接收與識別主機系統200所傳送的指令。也就是,主機系統200所傳送的指令與資料會透過主機介面模組110e來傳送至微處理器單元110a。在本實施例中,主機介面模組110e為SATA介面。然而,必須瞭解的是本發明不限於此,主機介面模組110e亦可以是USB介面、IEEE 1394介面、PCI Express介面、MS介面、MMC介面、SD介面、 CF介面、IDE介面或其他適合的資料傳輸介面。特別是,主機介面模組110e會與連接器120相對應。也就是,主機介面模組110e必須與連接器120互相搭配。
此外,雖未繪示於本實施例,但控制器110可更包括錯誤校正模組與電源管理模組等用於控制快閃記憶體的一般功能模組。
連接器120用以透過匯流排300連接主機系統200。在本實施例中,連接器120為SATA連接器。然而,必須瞭解的是本發明不限於此,連接器120亦可以是USB連接器、IEEE 1394連接器、PCI Express連接器、MS連接器、MMC連接器、SD連接器、CF連接器、IDE連接器或其他適合的連接器。
MLC NAND快閃記憶體130是電性連接至控制器110並且用以儲存資料。MLC NAND快閃記憶體130會分割為多個實體區塊(physical block),並且以輪替的方式對映邏輯區塊來儲存資料。一般而言,在快閃記憶體中實體區塊為抹除之最小單位。亦即,每一實體區塊含有最小數目之一併被抹除之記憶胞。每一實體區塊通常會分割為數個頁面位址(page)。頁面位址通常為程式化(program)的最小單元。但要特別說明的是於有些不同的快閃記憶體設計,最小的程式化單位也可為一個扇區(sector)。也就是說,一頁面位址中有多個扇區並以一扇區為程式化的最小單元。換言之,頁面位址為寫入資料或讀取資料的最小單元。每一頁面位址通常包括使用者資料區D與冗餘區R。使用者資 料區用以儲存使用者的資料,而冗餘區用以儲存系統的資料(例如,錯誤校正碼(error correcting code,ECC))。
為對應於磁碟驅動器的扇區(sector)大小,一般而言,使用者資料區D通常為512位元組,而冗餘區R通常為16位元組。也就是,一頁為一個扇區。然而,亦可以多個扇區形成一頁,例如一頁包括4個扇區。
一般而言,實體區塊可由任意數目的頁面位址所組成,例如64個頁面位址、128個頁面位址、256個頁面位址等。實體區塊通常也可被分組為數個區域(zone),以區域來管理記憶體某種程度上是彼此獨立地操作以增加操作執行的平行程度且簡化管理的複雜度。
值得一提的是,MLC NAND快閃記憶體130之實體區塊的程式化可分為多階段。例如,以4層記憶胞為例,如圖2A所示,實體區塊的程式化可分為2階段。第一階段是下頁位址(lower page)的寫入部分,其物理特性類似於單層記憶胞(Single Level Cell,SLC)NAND快閃記憶體,在完成第一階段之後才會程式化上頁位址(upper page),其中下頁位址的寫入速度會快於上頁位址。因此,如圖2B所示每一實體區塊的頁面位址可區分為快慢頁面(即,上頁位址)與快速頁面(即,下頁位址)。類似地,在8層記憶胞或16層記憶胞的案例中,記憶胞會包括更多個頁面位址並且會以更多階段來寫入。在此,將寫入速度最快的頁面位址稱為下頁位址,其他寫入速度較慢的頁面位址統稱為上頁位址。例如,上頁位址包括具有不同寫入速度的多個頁面。 此外,在其他實施例中,上頁位址也可為寫入速度最慢的頁面,或者寫入速度最慢與部份寫入速度快於寫入速度最慢頁面的頁面。例如,在4層記憶胞中,下頁位址為寫入速度最快與寫入速度次快的頁面,上頁則為寫入速度最慢與寫入速度次慢的頁面。
特別是,由於在本發明實施例中MLC NAND快閃記憶體130的實體區塊的多個頁面位址可如上述區分為上頁位址與下頁位址,因此在記憶體管理模組110b會包含有一頁面位址查詢表。此頁面位址查詢表會記錄在每一區塊中哪些頁面位址屬於上頁位址以及哪些頁面位址屬於下頁位址。必須瞭解的是,圖2B所示的上頁位址與下頁位址的配置僅為範例,本發明不限於此。因此,在使用不同上頁與下頁位址之配置的MLC NAND快閃記憶體時可使用上述頁面位址查詢表來記錄。
如上所述,雖然MLC NAND快閃記憶體的容量大於SLC NAND快閃記憶體,但MLC NAND快閃記憶體的有些頁面位址是屬於寫入速度較慢的上頁位址,因此MLC NAND快閃記憶體的寫入速度會慢於SLC NAND快閃記憶體,特別是當MLC NAND快閃記憶體的層數越多時其寫入速度會越慢於SLC NAND快閃記憶體。
基於上述理由,在本實施例中為了提升快閃記憶體儲存系統100的效能,快閃記憶體儲存系統100中會配置快取記憶體140來快速與暫時地儲存主機系統200所傳送的資料。之後,控制器110會利用快閃記憶體儲存系統100 的非忙碌時間將資料從快取記憶體140中寫入至MLC NAND快閃記憶體130中。
請參照圖1,快取記憶體140是電性連接至控制器110。在本實施例中,快取記憶體140為動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)。然而,本發明不限於此,在本發明另一實施例中亦可使用雙倍資料傳輸率動態隨機存取記憶體(Double Data Rate DRAM,DDR DRAM)作為快取記憶體140。值得一提的是,在考量快閃記憶體儲存系統100的成本與尺寸下,快取記憶體140的儲存空間一般不會太大,例如在本實施例中是使用64Mb的DRAM作為快取記憶體140。
SLC NAND快閃記憶體150是電性連接至控制器110並且具有多個實體區塊。SLC NAND快閃記憶體150之實體區塊的管理方式是類似於MLC NAND快閃記憶體130,因此在此不再重複說明。SLC NAND快閃記憶體150與MLC NAND快閃記憶體130不同之處在於SLC NAND快閃記憶體150之實體區塊的程式化僅為單階,因此SLC NAND快閃記憶體150的寫入速度與穩定度會高於MLC NAND快閃記憶體130。
在本實施例中SLC NAND快閃記憶體150是用以暫時地儲存快取記憶體140所儲存的資料。具體來說,當主機系統200對快閃記憶體儲存系統100下達清除指令時控制器110會將快取記憶體140中的資料寫入至SLC NAND快閃記憶體150中。如上所述,由於SLC NAND快閃記憶 體150的寫入速度會高於MLC NAND快閃記憶體130,基此可快速地暫存快取記憶體140中的資料,以避免主機系統200在下達清除指令後造成主機系統200運作上的延遲。此外,SLC NAND快閃記憶體150是非揮發性記憶體,因此在主機系統200關機後所暫存的資料可被保留,並且在主機系統200再次開機時所暫存的資料會被重新載入至快取記憶體140中以利快閃記憶體儲存系統100繼續運作,或者在本發明另一實施例中當主機系統200再次開機啟動時暫存至SLC NAND快閃記憶體150中的資料會被寫入至MLC NAND快閃記憶體130以完成快閃記憶體儲存系統100於關機前應執行而未執行的寫入運作,並且在將資料從SLC NAND快閃記憶體150中直接寫入至MLC NAND快閃記憶體130後SLC NAND快閃記憶體150中所暫存的資料就可進行刪除或繼續保留。
在本實施例中,SLC NAND快閃記憶體150暫存快取記憶體140的資料是用以避免快取記憶體140中的資料因主機系統200執行關機指令或清除指令而遺失,因此將資料暫存於快取記憶體140中也可視為一種將資料作備份的動作。特別是,當將在快取記憶體140中的資料暫存於SLC NAND快閃記憶體150後,倘若快取記憶體140中的資料未被刪除,控制器100仍會繼續從快取記憶體140中寫入資料至MLC NAND快閃記憶體130。
值得一提的是,SLC NAND快閃記憶體150的實體區塊是以輪替方式儲存資料。也就是,控制器110會先從 SLC NAND快閃記憶體150的備用區中提取一實體區塊並且將在資料區中欲寫入之實體區塊中的有效舊資料與欲寫入的新資料寫入至從備用區中提取的實體區塊並且將已寫入新資料的實體區塊關聯為資料區,並且然後才將原本資料區的實體區塊進行抹除並關聯為備用區。基於此理由,在本實施例中SLC NAND快閃記憶體150的儲存空間是快取記憶體140的兩倍,例如SLC NAND快閃記憶體150為128MB。由此,SLC NAND快閃記憶體150才能夠可靠地暫存快取記憶體140中的所有資料。
圖3是根據本發明第一實施例繪示資料寫入步驟的流程圖,其中此些步驟是控制器110的微處理器單元110a執行記憶體管理模組110b的機械指令所完成。
請參照圖3,在步驟S301中會待命與接收主機系統200的寫入指令與資料。必須瞭解的是,在此流程圖中僅描述快閃記憶體儲存系統100針對寫入指令所執行的步驟,因此在步驟S301中僅於接收到寫入指令時才產生後續的運作。
在步驟S303中,從主機系統200中所接收的資料會暫時地儲存在快取記憶體140中。特別是,在將資料儲存至快取記憶體140後,快閃記憶體儲存系統100會回應主機系統200已完成此寫入指令,並且在快閃記憶體儲存系統100的非忙碌期間(例如,主機系統200已一段時間(例如,30秒)未對快閃儲存系統100下達寫入指令,或控制器110使用效能低於一特定門檻值)將暫存於快取快取記 憶體140中的資料寫入或整理至MLC NAND快閃記憶體130。
接著,在步驟S305中會判斷是否接收到主機系統200的清除指令。倘若在步驟S305中判斷接收到清除指令時,則在步驟S307中會將快取記憶體140中的資料暫時地暫存至SLC NAND快閃記憶體150中。之後,運作步驟會返回至步驟S301,並且資料寫入步驟會在快閃記憶體儲存系統100關機時結束。
在本發明另一實施例中,上述資料寫入步驟更包括在步驟S301之後判斷快取記憶體140的所有儲存空間是否都已經儲存資料(步驟S361),倘若在快取記憶體140的所有儲存空間都已經儲存資料時,控制器110會可快速地先將快取記憶體140中的資料暫存至SLC NAND快閃記憶體150(步驟S363)中,然後空出快取記憶體140的儲存空間以執行主機系統200的寫入指令。之後,在於快閃記憶體儲存系統100的非忙碌時間(例如,主機系統200已一段時間(例如,30秒)未對快閃儲存系統100下達寫入指令,或控制器110使用效能低於一特定門檻值)將暫存至SLC NAND快閃記憶體150中寫入或整理至MLC NAND快閃記憶體中。
值得一提的是,在當下達清除指令後主機系統200即執行關機時,快閃記憶體儲存系統100會在重新啟動時確認SLC NAND快閃記憶體150中是否存有資料。因此,在步驟S301之前更包括在步驟S351中判斷SLC NAND快 閃記憶體150中是否儲存有前次關機前所暫存的資料。
倘若在步驟S351中判斷SLC NAND快閃記憶體150中儲存有前次運作所暫存的資料時,則在步驟S353中會將SLC NAND快閃記憶體150中的資料重新載入至快取記憶體140中以恢復快閃記憶體儲存系統100於關機前的運作狀態。
另外,在本發明另一實施例中亦可在判斷SLC NAND快閃記憶體150中儲存有前次關機前所暫存的資料時,直接從SLC NAND快閃記憶體150中將所暫存的資料寫入至MLC NAND快閃記憶體130中,以完成快閃記憶體儲存系統100於前次關機前應執行而未執行的寫入運作。。
藉由速度快於MLC NAND快閃記憶體130的SLC NAND快閃記憶體150作為快取記憶體140的暫存區域,可有效地縮短當快閃記憶體儲存系統100接收到清除指令時儲存快取記憶體140中之資料的時間。
[第二實施例]
圖5是根據本發明第二實施例繪示快閃記憶體儲存系統的概要方塊圖。請參照圖5,快閃記憶體儲存系統400包括控制器410、連接器420、MLC NAND快閃記憶體430以及快取記憶體440,其中快閃記憶體儲存系統400為固態硬碟(Solid State Drive,SSD)。
控制器410、連接器420與快取記憶體440的硬體結構是相同於第一實施例的控制器110、連接器120與快取記憶體140,在此不再重複描述。
值得一提的是,快閃記憶體儲存系統400具有不同於快閃記憶體儲存系統100的硬體配置,因此控制器410之記憶體管理模組410b具有執行根據本發明實施例之資料寫入步驟(如圖6所示)的機械指令。除此之外,控制器410的微處理器單元410a、快閃記憶體介面模組410c、緩衝記憶體410d與主機介面模組410e是分別地相同於控制器110的微處理器單元110a、快閃記憶體介面模組110c、緩衝記憶體110d與主機介面模組110e,在此不再重複描述。
MLC NAND快閃記憶體430是電性連接至控制器410並且用以儲存資料。相同於第一實施例的MLC NAND快閃記憶體130,MLC NAND快閃記憶體430亦包括多個實體區塊,並且以輪替的方式對映邏輯區塊來儲存資料。此外,MLC NAND快閃記憶體430的實體區塊的頁面位址可區分為上頁位址與下頁位址。
在本實施例中,MLC NAND快閃記憶體430會被分割為緩衝儲存區域430a與資料儲存區域430b,其中在資料儲存區域430b中控制器110會同時使用上頁位址與下頁位址來儲存資料,而在緩衝儲存區域430a中控制器110僅會使用下頁位址來儲存資料。如上所述,MLC NAND快閃記憶體的實體區塊的下頁位址的程式化是類似SLC NAND快閃記憶體,因此僅使用下頁位址之緩衝儲存區域430a的寫入速度與穩定度會高於同時使用上頁位址與下頁位址之資料儲存區域430b。
特別是,在本實施例中資料儲存區域430b是用以正常 地儲存使用者資料的區域,而緩衝儲存區域430a則是用以暫時地儲存快取記憶體440中的資料。也就是說,緩衝儲存區域430a是用以提供類似第一實施例的SLC NAND快閃記憶體150所提供的功能。類似在第一實施例中所述的理由,在本實施例中緩衝儲存區域430a的儲存空間會配置為快取記憶體440的兩倍。
具體來說,當主機系統200對快閃記憶體儲存系統400下達清除指令時控制器410會將快取記憶體440中的資料寫入至緩衝儲存區域430a。如上所述,由於緩衝儲存區域430a的寫入速度會高於資料儲存區域430b,因此可快速地暫存暫存於快取記憶體440中的資料,以避免主機系統200在下達清除指令後造成主機系統200運作上的延遲。
此外,在主機系統200於關機後再次開機時暫存在緩衝儲存區域430a的資料會被重新載入至快取記憶體140中以使快閃記憶體儲存系統400繼續運作,或者在本發明另一實施例中當主機系統200再次開機時暫存至緩衝儲存區域430a中的資料會被寫入或整理至資料儲存區域430b以完成快閃記憶體儲存系統400於關機前應執行而未執行的寫入運作。
圖6是根據本發明第二實施例繪示資料寫入步驟的流程圖,其中此些步驟是控制器410的微處理器單元110a執行記憶體管理模組410b的機械指令所完成。
請參照圖6,在步驟S501中會待命與接收主機系統200的寫入指令與資料。接著,在步驟S503中,將所接收 的資料暫時地儲存在快取記憶體440中,期間控制器410會利用快閃記憶體儲存系統410的非忙碌時間將所暫存的資料從快閃記憶體440中寫入至資料儲存區域430b。
接著,在步驟S305中會判斷是否接收到主機系統200的清除指令。倘若在步驟S305中判斷接收到清除指令時,則在步驟S307中會將快取記憶體440中的資料暫時地暫存至緩衝儲存區域430a中。
在本發明一實施例中,當在快取記憶體440的所有儲存空間都已經儲存資料的狀態下快閃記憶體儲存系統400接收到主機系統200的寫入指令時,控制器410亦可快速地先將快取記憶體440中的資料暫存至緩衝儲存區域430a中。之後,在於快閃記憶體儲存系統400的非忙碌時間,控制器410可將暫存至緩衝儲存區域430a中搬移至資料儲存區域430b中。
同樣地,在步驟S501之前更包括在步驟S551中判斷緩衝儲存區域430a中是否儲存有快閃記憶體儲存系統400於前次關機前所暫存的資料。
倘若在步驟S551中判斷緩衝儲存區域430a中儲存有前次關機前所暫存的資料時,則在步驟S553中會將此備用的資料重新載入至快取記憶體440中以恢復快閃記憶體儲存系統400於關機前的運作狀態。
藉由速度快於資料儲存區域430b的緩衝儲存區域430a作為快取記憶體440的暫存區域,可有效地縮短當快閃記憶體儲存系統400接收到清除指令而整理快取記憶體 440中之資料的時間。
綜上所述,本發明在MLC NAND快閃記憶體儲存系統中配置一個寫入速度較快的記憶體作為快取記憶體的暫存暫存區,基此,可以縮短整理快取記憶體140中之資料的時間,由此避免系統的延遲。特別是,目前固態硬碟廣泛應用為電腦系統的主硬碟時,更能有效地提升電腦系統的運作效能。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100、400‧‧‧快閃記憶體儲存系統
110、410‧‧‧控制器
110a、410a‧‧‧微處理器單元
110b、410b‧‧‧記憶體管理模組
110c、410c‧‧‧快閃記憶體介面模組
110d、410d‧‧‧緩衝記憶體
110e、410e‧‧‧主機介面模組
120、420‧‧‧連接器
130、430‧‧‧MLC NAND快閃記憶體
140、430‧‧‧快取記憶體
150‧‧‧SLC NAND快閃記憶體
200‧‧‧主機系統
300‧‧‧匯流排
430a‧‧‧緩衝儲存區域430a
430b‧‧‧資料儲存區域430b
S301、S303、S305、S307、S351、S353、S361、S636‧‧‧資料寫入步驟
S501、S503、S505、S507、S551、S553‧‧‧資料寫入步驟
圖1是根據本發明第一實施例繪示快閃記憶體儲存系統的概要方塊圖。
圖2A是繪示MLC NAND快閃記憶體的程式化示意圖。
圖2B是根據本發明實施例繪示MLC NAND快閃記憶體的實體區塊的上頁位址與下頁位址的配置範例。
圖3是根據本發明第一實施例繪示資料寫入步驟的流程圖。
圖4是根據本發明另一實施例繪示資料寫入步驟的流程圖。
圖5是根據本發明第二實施例繪示快閃記憶體儲存系統的概要方塊圖。
圖6是根據本發明第二實施例繪示資料寫入步驟的流程圖。
100‧‧‧快閃記憶體儲存系統
110‧‧‧控制器
110a‧‧‧微處理器單元
110b‧‧‧記憶體管理模組
110c‧‧‧快閃記憶體介面模組
110d‧‧‧緩衝記憶體
110e‧‧‧主機介面模組
120‧‧‧連接器
130‧‧‧MLC NAND快閃記憶體
140‧‧‧快取記憶體
150‧‧‧SLC NAND快閃記憶體
200‧‧‧主機系統
300‧‧‧匯流排

Claims (13)

  1. 一種快閃記憶體儲存系統,包括:一控制器;一連接器,電性連接至該控制器;一快取記憶體,電性連接至該控制器;一單層記憶胞(Single Level Cell,SLC)NAND快閃記憶體,電性連接至該控制器;以及一多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體,電性連接至該控制器,其中當該控制器透過該連接器從一主機中接收到欲寫入至該MLC NAND快閃記憶體的資料時,該控制器會將該資料暫時地儲存在該快取記憶體中並且之後將該資料從該快取記憶體中寫入至該MLC NAND快閃記憶體中,並且其中當該控制器從該主機中接收到一清除指令時,該控制器會在該SLC NAND快閃記憶體中暫存在該快取記憶體中所儲存的資料,其中當重開機時,該控制器會判斷該SLC NAND快閃記憶體是否存有資料,並且倘若該SLC NAND快閃記憶體存有資料時,該控制器將暫存在該SLC NAND快閃記憶體中的資料重新載入至該快取記憶體中。
  2. 如申請專利範圍第1項所述之快閃記憶體儲存系統,其中該控制器會在該快取記憶體的容量都已儲存資料時將該快取記憶體中所儲存的資料暫存至該SLC NAND 快閃記憶體中。
  3. 如申請專利範圍第1項所述之快閃記憶體儲存系統,其中該SLC NAND快閃記憶體的容量是該快取記憶體的容量的兩倍。
  4. 如申請專利範圍第1項所述之快閃記憶體儲存系統,其中該快取記憶體為一動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)或一雙倍資料傳輸率動態隨機存取記憶體(Double Data Rate DRAM,DDR DRAM)。
  5. 一種資料寫入方法,適用於具有一快取記憶體、一單層記憶胞(Single Level Cell,SLC)NAND快閃記憶體與一多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體的一快閃記憶體儲存系統,該資料寫入方法包括:將欲寫入至該快閃記憶體儲存系統的資料暫時地儲存在該快取記憶體中,並且將該資料從該快取記憶體中寫入至該MLC NAND快閃記憶體中;當從該主機中接收到一清除指令時,在該SLC NAND快閃記憶體中暫存在該快取記憶體中所儲存的資料;以及當重開機時,判斷該SLC NAND快閃記憶體是否存有資料,並且倘若該SLC NAND快閃記憶體存有資料時,將暫存在該SLC NAND快閃記憶體中的資料重新載入至該快取記憶體中。
  6. 如申請專利範圍第5項所述之資料寫入方法,其中在該SLC NAND快閃記憶體中暫存在該快取記憶體中所儲存的資料的步驟包括在該快取記憶體的容量都已儲存資 料時將該快取記憶體中所儲存的資料暫存至該SLC NAND快閃記憶體中。
  7. 一種快閃記憶體儲存系統,包括:一控制器;一連接器,電性連接至該控制器;一快取記憶體,電性連接至該控制器;以及一多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體,電性連接至該控制器並且分割為一緩衝儲存區域與一資料儲存區域,其中該緩衝儲存區域與該資料儲存區域分別地具有多個實體區塊,每一實體區塊包括多個下頁位址與多個上頁位址,並且該些下頁位址的寫入速度大於該些上頁位址的寫入速度,其中當該控制器透過該連接器從一主機中接收到欲寫入至該MLC NAND快閃記憶體的資料時,該控制器會將該資料暫時地儲存在該快取記憶體中,其中在該資料被儲存至該快取記憶體之後,該控制器將儲存在該快取記憶體中的資料暫存至該緩衝儲存區的該些下頁位址中,其中在該資料被儲存至該緩衝儲存區的下頁位址之後,該控制器將暫存在該緩衝儲存區的下頁位址中的資料寫入至該資料儲存區的下頁位址與上頁位址中。
  8. 如申請專利範圍第7項所述之快閃記憶體儲存系統,其中該控制器會在該快取記憶體的容量都已儲存資料 時將該快取記憶體中所儲存的資料暫存至該緩衝儲存區域的下頁位址中。
  9. 如申請專利範圍第7項所述之快閃記憶體儲存系統,其中該緩衝儲存區域的下頁位址的容量是該快取記憶體的容量的兩倍。
  10. 如申請專利範圍第7項所述之快閃記憶體儲存系統,其中該快取記憶體為一動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)或一雙倍資料傳輸率動態隨機存取記憶體(Double Data Rate DRAM,DDR DRAM)。
  11. 一種資料寫入方法,適用於具有一快取記憶體與一多層記憶胞(Multi Level Cell,MLC)NAND快閃記憶體的一快閃記憶體儲存系統,其中該MLC NAND快閃記憶體具有一緩衝儲存區域與一資料儲存區域,該緩衝儲存區域與該資料儲存區域分別地具有多個實體區塊,每一實體區塊包括多個下頁位址與多個上頁位址,並且該些下頁位址的寫入速度大於該些上頁位址的寫入速度,,該資料寫入方法包括:將欲寫入至該快閃記憶體儲存系統的資料暫時地儲存在該快取記憶體中,並且將該資料從該快取記憶體中寫入至該MLC NAND快閃記憶體的資料儲存區域中;當從該主機中接收到一清除指令時,在該緩衝儲存區域的下頁位址中暫存儲存在該快取記憶體中的資料;以及當重開機時,判斷該緩衝儲存區域的下頁位址是否存有資料,並且倘若該緩衝儲存區域的下頁位址存有資料 時,將暫存在該緩衝儲存區域的下頁位址中的資料重新載入至該快取記憶體中。
  12. 如申請專利範圍第11項所述之資料寫入方法,其中在該緩衝儲存區域的下頁位址中暫存在該快取記憶體中所儲存的資料的步驟包括在該快取記憶體的容量都已儲存資料時將該快取記憶體中所儲存的資料暫存至該緩衝儲存區域的下頁位址中。
  13. 一種快閃記憶體儲存系統,包括:一控制器;一連接器,電性連接至該控制器;一快取記憶體,電性連接至該控制器;一第一非揮發性記憶體,電性連接至該控制器;以及一第二非揮發性記憶體,電性連接至該控制器,其中當該控制器透過該連接器從一主機中接收到欲寫入至該第二非揮發性記憶體的資料時,該控制器會將該資料暫時地儲存在該快取記憶體中並且之後將該資料從該快取記憶體中寫入至該第二非揮發性記憶體中,並且其中當該控制器從該主機中接收到一清除指令時,該控制器會在該第一非揮發性記憶體中暫存在該快取記憶體中所儲存的資料,其中當重開機時,該控制器會判斷該第一非揮發性記憶體是否存有資料,並且倘若該第一非揮發性記憶體存有資料時,該控制器將暫存在該第一非揮發性記憶體中的資料重新載入至該快取記憶體中。
TW097130697A 2008-08-12 2008-08-12 快閃記憶體儲存系統及其資料寫入方法 TWI385516B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW097130697A TWI385516B (zh) 2008-08-12 2008-08-12 快閃記憶體儲存系統及其資料寫入方法
US12/263,040 US8234466B2 (en) 2008-08-12 2008-10-31 Flash memory storage system applying SLC NAND flash memory and MLC NAND flash memory and data writing method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW097130697A TWI385516B (zh) 2008-08-12 2008-08-12 快閃記憶體儲存系統及其資料寫入方法

Publications (2)

Publication Number Publication Date
TW201007449A TW201007449A (en) 2010-02-16
TWI385516B true TWI385516B (zh) 2013-02-11

Family

ID=41682063

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097130697A TWI385516B (zh) 2008-08-12 2008-08-12 快閃記憶體儲存系統及其資料寫入方法

Country Status (2)

Country Link
US (1) US8234466B2 (zh)
TW (1) TWI385516B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI505090B (zh) * 2013-03-12 2015-10-21 Macronix Int Co Ltd 差異邏輯至實體方法
TWI676105B (zh) * 2018-02-02 2019-11-01 大陸商光寶電子(廣州)有限公司 運用dram的儲存裝置及其相關資料處理方法

Families Citing this family (57)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7269708B2 (en) * 2004-04-20 2007-09-11 Rambus Inc. Memory controller for non-homogenous memory system
JP5317690B2 (ja) * 2008-12-27 2013-10-16 株式会社東芝 メモリシステム
US9377960B2 (en) 2009-07-29 2016-06-28 Hgst Technologies Santa Ana, Inc. System and method of using stripes for recovering data in a flash storage system
US8850128B2 (en) * 2009-12-23 2014-09-30 HGST Netherlands B.V. Implementing data storage and dual port, dual-element storage device
JP2011145838A (ja) * 2010-01-13 2011-07-28 Toshiba Corp 記憶装置管理装置および記憶装置の管理方法
JP5060574B2 (ja) * 2010-03-16 2012-10-31 株式会社東芝 メモリシステム
US8688897B2 (en) 2010-05-28 2014-04-01 International Business Machines Corporation Cache memory management in a flash cache architecture
CN102469357B (zh) * 2010-11-18 2013-09-04 深圳创维数字技术股份有限公司 一种用户操作数据的保存方法、系统及数字电视接收终端
JP5618818B2 (ja) * 2010-12-28 2014-11-05 任天堂株式会社 情報処理装置、情報処理プログラムおよび情報処理方法
DE102011010610B4 (de) 2011-02-08 2014-03-20 Austriamicrosystems Ag Schaltung zum Generieren einer Startsequenz und Verfahren zum Generieren einer Startfrequenz
US8799555B2 (en) * 2011-04-14 2014-08-05 Apple Inc. Boot data storage schemes for electronic devices
US8780659B2 (en) 2011-05-12 2014-07-15 Micron Technology, Inc. Programming memory cells
US8886911B2 (en) * 2011-05-31 2014-11-11 Micron Technology, Inc. Dynamic memory cache size adjustment in a memory device
KR20130051564A (ko) * 2011-11-10 2013-05-21 삼성전자주식회사 메모리 모듈, 이를 포함하는 보드 어셈블리, 이를 포함하는 메모리 시스템, 및 상기 메모리 시스템의 동작 방법
US8977803B2 (en) * 2011-11-21 2015-03-10 Western Digital Technologies, Inc. Disk drive data caching using a multi-tiered memory
US8990477B2 (en) 2012-04-19 2015-03-24 Sandisk Technologies Inc. System and method for limiting fragmentation
CN102681952B (zh) * 2012-05-12 2015-02-18 北京忆恒创源科技有限公司 将数据写入存储设备的方法与存储设备
CN102693198B (zh) * 2012-05-12 2015-03-25 北京忆恒创源科技有限公司 Dma传输方法及系统
US20140059271A1 (en) * 2012-08-27 2014-02-27 Apple Inc. Fast execution of flush commands using adaptive compaction ratio
US20140068313A1 (en) * 2012-08-31 2014-03-06 Shinobu SHIMPUKU Storage device
MX364783B (es) * 2012-11-20 2019-05-07 Thstyme Bermuda Ltd Estructuras de unidades de estado sólido.
US11037625B2 (en) * 2012-11-20 2021-06-15 Thstyme Bermuda Limited Solid state drive architectures
US9280482B2 (en) * 2012-12-13 2016-03-08 Western Digital Technologies, Inc. Methods and systems for provisioning a bootable image on to an external drive
JP5953245B2 (ja) * 2013-02-12 2016-07-20 株式会社日立製作所 情報処理システム
US9069660B2 (en) * 2013-03-15 2015-06-30 Apple Inc. Systems and methods for writing to high-capacity memory
US8656255B1 (en) * 2013-03-15 2014-02-18 Avalanche Technology, Inc. Method for reducing effective raw bit error rate in multi-level cell NAND flash memory
KR102025240B1 (ko) * 2013-04-01 2019-11-04 삼성전자주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
CN107741913B (zh) * 2013-08-05 2021-09-07 慧荣科技股份有限公司 用来管理一记忆装置的方法、记忆装置与控制器
CN107423231B (zh) 2013-08-05 2020-11-20 慧荣科技股份有限公司 用来管理一记忆装置的方法以及记忆装置与控制器
CN103500076A (zh) * 2013-10-13 2014-01-08 张维加 一种基于多通道slc nand与dram缓存的新usb协议计算机加速设备
TWI516934B (zh) * 2013-12-30 2016-01-11 群聯電子股份有限公司 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置
CN104765568B (zh) * 2014-01-08 2018-09-18 群联电子股份有限公司 数据存储方法、存储器控制电路单元与存储器存储装置
KR102218712B1 (ko) * 2014-02-11 2021-02-22 삼성전자주식회사 저장 장치의 어드레스 맵핑 방법 및 저장 장치의 데이터 독출 방법
KR102190670B1 (ko) 2014-03-03 2020-12-14 삼성전자주식회사 마이그레이션 관리자를 포함하는 메모리 시스템
US20150261444A1 (en) * 2014-03-12 2015-09-17 Kabushiki Kaisha Toshiba Memory system and information processing device
US8819337B1 (en) * 2014-04-16 2014-08-26 Sandisk Technologies Inc. Storage module and method for determining whether to back-up a previously-written lower page of data before writing an upper page of data
US9928169B2 (en) * 2014-05-07 2018-03-27 Sandisk Technologies Llc Method and system for improving swap performance
RU2671049C2 (ru) 2014-08-15 2018-10-29 МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи Выгрузка в файловой системе
US9836108B2 (en) 2014-09-10 2017-12-05 Toshiba Memory Corporation Memory system and controller
US10474569B2 (en) 2014-12-29 2019-11-12 Toshiba Memory Corporation Information processing device including nonvolatile cache memory and processor
US10394460B1 (en) * 2015-03-31 2019-08-27 Integrated Device Technology, Inc. Enhanced data buffer and intelligent NV controller for simultaneous DRAM and flash memory access
US9891846B2 (en) * 2015-03-31 2018-02-13 Dell Products, Lp System and method for preventing solid state drive corruption after dirty shutdown power loss
US9600417B2 (en) 2015-04-29 2017-03-21 Google Inc. Data caching
US10157012B2 (en) * 2015-09-29 2018-12-18 Sandisk Technologies Llc Zero read on trimmed blocks in a non-volatile memory system
US9530491B1 (en) * 2015-11-16 2016-12-27 Sandisk Technologies Llc System and method for direct write to MLC memory
TWI635495B (zh) * 2016-02-05 2018-09-11 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
CN106681652B (zh) * 2016-08-26 2019-11-19 合肥兆芯电子有限公司 存储器管理方法、存储器控制电路单元与存储器存储装置
TWI645290B (zh) 2016-10-11 2018-12-21 慧榮科技股份有限公司 資料儲存裝置及其資料寫入方法
TWI606388B (zh) 2016-12-14 2017-11-21 慧榮科技股份有限公司 資料儲存裝置及其資料維護方法
CN108733313B (zh) * 2017-04-17 2021-07-23 伊姆西Ip控股有限责任公司 利用预备盘建立多级闪速缓存的方法、设备和计算机可读介质
US10482014B2 (en) 2017-08-08 2019-11-19 Dell Products L.P. System and method of managing a memory medium
TWI649759B (zh) * 2017-09-28 2019-02-01 慧榮科技股份有限公司 資料儲存裝置與將資料寫入記憶體裝置之方法
TWI645404B (zh) * 2017-12-28 2018-12-21 慧榮科技股份有限公司 資料儲存裝置以及非揮發式記憶體操作方法
CN110134572B (zh) * 2018-02-02 2023-08-08 伊姆西Ip控股有限责任公司 验证存储系统中的数据
US10768853B2 (en) 2018-07-27 2020-09-08 Dell Products, L.P. Information handling system with memory flush during shut down
JP2020035128A (ja) * 2018-08-29 2020-03-05 キオクシア株式会社 メモリシステム
US11416177B2 (en) 2020-08-11 2022-08-16 Micron Technology, Inc. Memory sub-system storage mode control

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519831A (en) * 1991-06-12 1996-05-21 Intel Corporation Non-volatile disk cache
TW200521869A (en) * 2003-09-18 2005-07-01 Matsushita Electric Ind Co Ltd Semiconductor memory card, semiconductor memory control apparatus and semiconductor memory control method
US6940768B2 (en) * 2003-11-04 2005-09-06 Agere Systems Inc. Programmable data strobe offset with DLL for double data rate (DDR) RAM memory

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100858241B1 (ko) 2006-10-25 2008-09-12 삼성전자주식회사 하이브리드 플래시 메모리 장치 및 그것의 가용 블록 할당방법

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5519831A (en) * 1991-06-12 1996-05-21 Intel Corporation Non-volatile disk cache
TW200521869A (en) * 2003-09-18 2005-07-01 Matsushita Electric Ind Co Ltd Semiconductor memory card, semiconductor memory control apparatus and semiconductor memory control method
US6940768B2 (en) * 2003-11-04 2005-09-06 Agere Systems Inc. Programmable data strobe offset with DLL for double data rate (DDR) RAM memory

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JOURNAL OF SEMICONDUCTOR TECHNOLOGY AND SCIENCE, VOL.5, NO.4, DECEMBER, 2005 The cache memory book, ISBN 0-12-322980-4。 201007449 99/02/16 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI505090B (zh) * 2013-03-12 2015-10-21 Macronix Int Co Ltd 差異邏輯至實體方法
TWI676105B (zh) * 2018-02-02 2019-11-01 大陸商光寶電子(廣州)有限公司 運用dram的儲存裝置及其相關資料處理方法

Also Published As

Publication number Publication date
US8234466B2 (en) 2012-07-31
US20100042773A1 (en) 2010-02-18
TW201007449A (en) 2010-02-16

Similar Documents

Publication Publication Date Title
TWI385516B (zh) 快閃記憶體儲存系統及其資料寫入方法
TWI385519B (zh) 資料寫入方法及使用此方法的快閃儲存系統與其控制器
TWI385669B (zh) 用於快閃記憶體的平均磨損方法、儲存系統與控制器
TWI381274B (zh) 用於快閃記憶體的區塊管理方法、儲存系統與控制器
TWI385523B (zh) 用於快閃記憶體的資料備份方法及其控制器與儲存系統
US10776153B2 (en) Information processing device and system capable of preventing loss of user data
TWI398770B (zh) 用於快閃記憶體的資料存取方法、儲存系統與控制器
TWI467581B (zh) 複合式儲存裝置及其複合式儲存媒體控制器與定址方法
JP4524309B2 (ja) フラッシュメモリ用のメモリコントローラ
TWI381390B (zh) 快閃記憶體的損壞區塊辨識方法、儲存系統及其控制器
TWI506430B (zh) 映射資訊記錄方法、記憶體控制器與記憶體儲存裝置
US9519436B1 (en) Memory erasing method, memory controller, and memory storage apparatus
TWI385667B (zh) 用於快閃記憶體的資料管理方法、儲存系統與控制器
TWI405209B (zh) 資料管理方法及使用此方法的快閃儲存系統與控制器
US20100042774A1 (en) Block management method for flash memory, and storage system and controller using the same
TWI459400B (zh) 記憶體儲存裝置、及其記憶體控制器與電源控制方法
CN101656104B (zh) 快闪存储器储存系统及其数据写入方法
US20100241789A1 (en) Data storage method for flash memory and data storage system using the same
TW200951979A (en) Data writing method for flash memory and storage system and controller using the same
JP2010211734A (ja) 不揮発性メモリを用いた記憶装置
TWI479505B (zh) 資料管理方法、記憶體控制器與記憶體儲存裝置
US20120110243A1 (en) Data writing method, memory controller, and memory storage apparatus
TWI498899B (zh) 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
TWI381393B (zh) 區塊管理與更換方法、快閃記憶體儲存系統及其控制器
CN111399752B (zh) 不同类型存储单元的控制装置及方法