TWI405214B - 快閃記憶體儲存系統之資料燒錄方法 - Google Patents

快閃記憶體儲存系統之資料燒錄方法 Download PDF

Info

Publication number
TWI405214B
TWI405214B TW098114976A TW98114976A TWI405214B TW I405214 B TWI405214 B TW I405214B TW 098114976 A TW098114976 A TW 098114976A TW 98114976 A TW98114976 A TW 98114976A TW I405214 B TWI405214 B TW I405214B
Authority
TW
Taiwan
Prior art keywords
data
physical memory
memory block
physical
block
Prior art date
Application number
TW098114976A
Other languages
English (en)
Other versions
TW201040983A (en
Inventor
Tso Cheng Su
Shih Fang Hung
Tzu Wei Fang
Original Assignee
A Data Technology Co Ltd
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 A Data Technology Co Ltd filed Critical A Data Technology Co Ltd
Priority to TW098114976A priority Critical patent/TWI405214B/zh
Priority to US12/562,294 priority patent/US8521947B2/en
Publication of TW201040983A publication Critical patent/TW201040983A/zh
Application granted granted Critical
Publication of TWI405214B publication Critical patent/TWI405214B/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
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • 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/7202Allocation control and policies
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Description

快閃記憶體儲存系統之資料燒錄方法
本發明有關於一種資料燒錄方法,尤其是指一種資料於快閃記憶體中的燒錄配置方法,以改善快閃記憶體儲存空間的使用效率及提升其工作效能。
快閃記憶體(Flash memory)是一種非揮發性的儲存元件,由於其具有低耗電、高存取速率、耐震及重量輕等優點,因此已逐漸地取代部分傳統的硬碟裝置,而廣泛的被使用在電腦系統及可攜式電子裝置等作為儲存單元之用。
一般快閃記憶體儲存系統的架構圖如第一圖所示,快閃記體5包括一控制單元51及一記憶單元53。快閃記憶體5利用控制單元51來處理主機系統4傳來的寫入指令與資料。控制單元51接收主機系統4的指令後,配合邏輯與實體位址的轉換運算,對記憶單元53執行資料存取的動作。
請參閱第二圖,記憶單元53被規劃成若干個實體記憶區塊(本例為m+1個實體記憶區塊PBA0~PBAm),其中實體記憶區塊就是記憶單元53最小的資料抹除單位。而一個實體記憶區塊中又劃分成複數個實體記憶頁(本例中每個實體記憶區塊中有n+1個實體記憶頁PPA0~PPAn),其中實體記憶頁則為記憶單元53最小的資料寫入單位。
當主機系統4傳送資料寫入指令及相關的資料給控制單元51,控制單元51執行邏輯與實體位址轉換後,便從記憶單元53中任意挑選一已抹除的實體記憶區塊(假設為實體記憶區塊PBA0),然後再將欲寫入的資料依實體記憶頁之順序(0,1,2,‧‧‧‧‧‧,n),寫入實體記憶區塊中。
習知的記憶單元53之資料更新方法如第三圖所示,首先,控制單元51收到一筆資料更新的指令,該指令指示將更新記憶單元53的實體記憶區塊PBA0之實體記憶頁PPA0上的資料D00。於是控制單元51便於記憶單元53上任意挑選一已抹除的實體記憶區塊PBA1,來儲存主機系統4傳來的更新資料D00’。然後控制單元51將更新資料D00’由實體記憶區塊PBA1頭端的實體記憶頁PPA0開始儲存,並且將實體記憶區塊PBA0之實體記憶頁PPA0上的資料D00註記為無效資料,完成資料更新。
接著控制單元51收到第二筆資料更新的指令,該指令指示將更新實體記憶區塊PBA2之實體記憶頁PPA2的資料D22。因為目前正在寫入之實體記憶區塊為PBA1,所以控制單元51便將主機系統4傳來的更新資料D22’接續儲存於實體記憶區塊PBA1中的實體記憶頁PPA1,然後將實體記憶區塊PBA2的資料D22註記為無效資料。
同樣地,接著控制單元51又接到第三筆更新指令,將更新資料D33’存於實體記憶區塊PBA1之實體記憶頁PPA2中,然後註記實體記憶區塊PBA3上的實體記憶頁PPA3的資料D33為無效資料。而第四筆更新指令則是將更新資料D34’寫入實體記憶區塊PBA1之實體記憶頁PPA3中,並將實體記憶區塊PBA3之實體記憶頁PPA4上的資料D34標記為無效資料。
由第三圖中可知,當更新資料越來越多時,被標記為無效的實體記憶頁也會越來越多。當記憶單元53剩餘中的儲存空間將要不夠或是剩餘儲存容量達到一預設值時,便需要執行所謂的無效資料回收作業(garbage collection),來釋放被無效資料所占用的實體記憶頁,以讓後續寫入的資料可以順利的繼續寫入記憶單元53中。
以第四圖並配合第三圖的例子來進行無效資料回收的說明,控制單元51從記憶單元53中挑選了無效資料最多的實體記憶區塊PBA3,然後將實體記憶區塊PBA3上的有效資料D30~D32以及D35~D3n共n-1個實體記憶頁的資料,複製到另一已抹除的實體記憶區塊PBA4中,然後抹除實體記憶區塊PBA3以提供後續資料寫入。如此便可釋放出實體記憶區塊PBA4最後的兩個實體記憶頁PPAn-1與PPAn的儲存空間,供後續寫入資料使用。
由第四圖可觀察到,一個實體記憶區塊中所包含的無效資料越多,在執行無效資料回收作業時,將會有較佳的記憶空間釋放效益;反之,若實體記憶區塊中所包含的無效資料不多,則儲存空間的釋放效益則較不佳。如實體記憶區塊PBA3中只包含兩個無效實體記憶頁PPA3以及PPA4,經無效資料回收後,實體記憶區塊PBA4上便只釋放出兩個實體記憶頁PPAn-1和PPAn的儲存空間。而且,要是記憶單元53中大部分實體記憶區塊都只有少數無效的實體記憶頁的情況,控制單元51在執行無效資料回收作業時,將增加挑選回收的實體記憶區塊的難度,其儲存空間釋放的效益便不理想。
而除了前述的原因之外,寫入資料於儲存位址對齊與否的問題,也是造成記憶空間釋放作業效益不佳的因素之一。由於主機系統4所傳來的資料,不會剛好都是記憶單元53最小的資料寫入單位(實體記憶頁)的倍數,因此會發生寫入資料位址無法對齊的情形。
請參閱第五A圖,若有一筆資料D1欲寫入,包括了D10、D11以及D12,其中D10與D11是寫滿一個實體記憶頁的資料,可剛好寫入實體記憶區塊PBA0之實體記憶頁PPA0與實體記憶頁PPA1中。而資料D12則不夠一個實體記憶頁的大小,所以控制單元51將資料D12傳到記憶單元53時,會連同實體記憶頁PPA2之前所存的舊資料Dd2一起燒錄到實體記憶頁PPA2中。例如,實體記憶頁PPA2先前為已抹除的空間,因此裡面的位元儲存的舊資料Dd2都是1,則可將部份資料D12未填滿一個實體記憶頁的剩餘部份之位元填入1,並將其與D12一起存入實體記憶頁PPA2。
接著請參閱第五B圖,若控制單元51所接收的下一筆資料D2(包含有資料D20、D21、D22和D23)其資料寫入的起始位址剛好是接在前一筆資料D1的位址後面,也就是接在資料D12後面,則控制單元51便從實體記憶頁PPA2將資料D12複製出來,並與資料D20合併成一個實體記憶頁的容量,接續寫入於實體記憶頁PPA3,然後將實體記憶頁PPA2標記為無效。
由第五B圖中可發現,在實體記憶頁PPA6的地方又出現資料D23填入後還不足一個實體記憶頁的情形,即如同實體記憶頁PPA2紀錄資料D12的方法一樣,剩餘的空間則填入實體記憶頁PPA6先前的舊資料Dd6。
因此由第五A圖和第五B圖可觀察到,不足一個實體記憶頁的寫入資料,會在下一筆連續資料寫入時,造成實體記憶區塊中部分實體記憶頁被標記為無效。若記憶單元53中大部分的實體記憶區塊都個別包含少數無效的實體記憶頁,其執行儲存空間釋放作業的效益同樣會不盡理想。
有鑑於此,本發明所欲解決的問題在於,將欲寫入快閃記憶體(flash memory)之記憶單元中的資料燒錄位址進行配置,讓之後產生的無效實體記憶頁能夠集中於某些記憶單元的實體記憶區塊,進而提昇執行無效資料回收作業(garbage collection)時,儲存空間的釋放效率。
為了達到上述目的,根據本發明的一方案,提供一種快閃記憶體之資料燒錄方法,應用於一快閃記憶體,該快閃記憶體中包含有一控制單元以及一記憶單元,其中記憶單元又劃分為複數個實體記憶區塊(Physical Block),而一個實體記憶區塊的容量即是快閃記憶體最小的資料抹除單位,其方法步驟如下:首先,控制單元接收到一主機系統傳送而來之一資料以及一寫入指令,其中寫入指令包含資料欲寫入的邏輯位址,與資料的資料長度。接著,控制單元依據資料的長度,判斷資料是否為經常更新的資料。若判斷結果顯示該資料是經常更新之資料,控制單元便將資料分配並寫入已存有經常更新之資料的實體記憶區塊,讓之後因為資料更新而產生的無效實體記憶頁能夠集中,以提昇儲存空間釋放的效率。
而根據本發明的另一方案,提供了另一種快閃記憶體之資料燒錄方法,同樣應用於一快閃記憶體,該快閃記憶體包含有一控制單元以及一記憶單元,其中記憶單元劃分成複數個實體記憶區塊,實體記憶區塊又包含有複數實體記憶頁(Physical Page),而一個實體記憶頁的容量即是快閃記憶體最小的資料寫入單位,其方法步驟包括:控制單元接收到一主機系統傳送而來之一資料以及一寫入指令,其中寫入指令包含了資料欲寫入之邏輯位址與資料的資料長度。接著,控制單元依據邏輯實體位址對應表的對應關係、資料的長度、以及實體記憶頁之容量,來判斷欲寫入的資料是否有部份資料未切齊一個實體記憶頁。若判斷出有部份資料未切齊一個實體記憶頁,則控制單元便將該部份之資料分配並寫入已存有未切齊之資料的實體記憶區塊,讓之後因為未切齊實體記憶頁且位址連續的寫入資料所造成的無效實體記憶頁能夠集中於某些實體記憶區塊中,來提昇儲存空間釋放的效益。
另外,根據本發明的又一方案,提供了一種快閃記憶體之資料燒錄方法,應用於一快閃記憶體,該快閃記憶體包含一控制單元以及一記憶單元,其中記憶單元劃分成複數個實體記憶區塊,而實體記憶區塊又包含有複數個實體記憶頁,其方法步驟如下:首先,控制單元接收到一主機系統傳送而來之一資料以及一寫入指令,其中寫入指令包含有資料欲寫入之邏輯位址,與資料的資料長度。接著控制單元依據資料的長度,判斷其是否為經常更新之資料,若是,則將該資料與之前所儲存之經常更新的資料作集中儲存。
然後,若該資料被判定為不常更新之資料,控制單元便再依據一邏輯實體位址對應表的對應關係、資料的長度、以及實體記憶頁之容量,進一步判斷該資料是否有部份未切齊一個實體記憶頁,然後將部份未切齊之資料集中寫入先前已存有未切齊之資料的實體記憶區塊。值得一提的是,經常更新之資料與未切齊一個實體記憶頁之零碎資料,兩者可以一起集中儲存於某些實體記憶區塊,讓之後產生的無效實體記憶頁能盡量集中,提昇執行無效資料回收的效益。
在資料寫入於快閃記憶體時,藉由將經常更新之資料與未切齊之零碎資料集中於一實體記憶區塊中來儲存,讓之後無效的記憶空間能夠集中與某些實體記憶區塊,使得執行無效資料回收作業時,儲存空間的釋放效率能進一步提昇。
以上之概述與接下來的實施例,皆是為了進一步說明本發明之技術手段與達成功效,然所敘述之實施例與圖式僅提供參考說明用,並非用來對本發明加以限制者。
為了提昇無效資料回收作業(garbage collection)的儲存空間釋放效益,本發明提供了一些資料燒錄的方法,藉由將經常更新之資料以及未對齊之零碎資料作配置寫入快閃記憶體中,讓無效實體記憶頁產生時能夠集中於某些實體記憶區塊。
請參閱第六圖,為快閃記憶體儲存系統的一種實施例之硬體方塊圖。快閃記憶體2中包括一控制單元21及一記憶單元23,其中控制單元21中又包括有一微處理單元211、一主機介面213、一記憶體介面215、一非揮發性儲存單元217及一揮發性儲存單元219,而記憶單元23則包括一記憶胞陣列231。記憶單元23中的記憶胞陣列231被規劃成若干個實體記憶區塊(Physical Block),為記憶單元23最小的資料抹除單位;而一個實體記憶區塊中則又劃分有若干個實體記憶頁(Physical Page),為記憶單元23最小的資料寫入單位。
控制單元21利用主機介面213與外部的主機系統1進行指令與資料的傳輸,而透過記憶體介面215與記憶單元23進行指令與資料的傳輸。非揮發性儲存單元217,如唯讀記憶體(Read Only Memory,ROM),是用於儲存管理記憶單元23的相關程式碼,而微處理單元211就是根據儲存在非揮發性儲存單元217中的程式碼,以及由主機系統1傳來的指令和資料,來管理與控制記憶單元23。
揮發性儲存單元219,如隨機存取記憶體(Random Access Memory,RAM),可設於控制單元21的內部或外部,用於暫時存放管理記憶單元23的相關資訊(諸如邏輯實體位址對應表、儲存空間資料配置資訊表或區塊資訊表等相關管理表單),以及控制單元21與記憶單元23間的存取資料。
接著請參閱第七圖,為快閃記憶體儲存系統的一種實施例之功能方塊圖,如圖所示,控制單元21中包括有一邏輯實體位址轉換單元31、一資料檢視單元32、一資料配置管理單元33、一資料存取單元34、及一資料抹除單元35。
其中,邏輯實體位址轉換單元31是用來將主機系統1所傳來的邏輯位址轉換成記憶單元23中對應之實體位址,並透過一邏輯實體位址對應表(logical to physical address mapping table)來管理並紀錄邏輯位址與實體位址的對應關係。資料檢視單元32則是用於辨識主機系統1所傳來欲寫入之資料的大小,以及該資料儲存於實體位址上的對應情形。
而資料配置管理單元33用於管理記憶單元23中儲存資料的配置資訊,可透過區塊資訊表(block information table)的建立與管理,來紀錄每個實體記憶頁的狀態,如已抹除(Free)、有效或無效,以及儲存於各個實體記憶區塊中所包含的無效之實體記憶頁的數量。根據區塊資訊表,即可於記憶單元23中找出存有無效資料之實體記憶頁較多的實體記憶區塊,來進行無效資料回收(garbage collection)的作業。
另外,資料存取單元34即是用於進行記憶單元23中的資料存取的動作,而資料抹除單元35則是用來對記憶單元23進行實體記憶區塊資料抹除的作業。
復參閱第七圖,並配合參考第六圖,當控制單元21由主機介面213接收到主機系統1所傳來的資料寫入指令與所欲儲存的使用者資料後,便將該欲儲存的資料暫存於揮發性儲存單元219中;其中寫入指令包括有資料欲寫入之邏輯位址以及資料的長度。接著利用邏輯實體位址轉換單元31,將寫入指令所指定的邏輯位址轉換為實體位址。
資料檢視單元32根據寫入指令所指示的資料長度,辨識該筆資料的大小,以及使用者資料於實體儲存位址的邊界對齊情況。然後,資料存取單元34便根據資料檢視單元32的分析結果,以及根據資料配置管理單元33的區塊資訊表等等之管理表單,將資料經由記憶體介面215寫入記憶單元23中。
而記憶單元23陸續儲存使用者資料後,將可能發生記憶單元23中儲存空間越來越少的情況。為避免儲存空間不夠使用而造成新的使用者資料無法繼續寫入的窘境,控制單元21會在可使用的儲存空間的數量減少到一預設值時,執行無效資料回收(garbage collection)作業,以釋放被無效資料佔用的儲存空間。
控制單元21是利用資料配置管理單元33、資料存取單元34、及資料抹除單元35,來進行無效資料回收的作業。透過資料配置管理單元33,找出大部分儲存空間被無效資料佔用的實體記憶區塊來進行無效資料回收。值得注意的是,由於本發明的資料配置燒錄方法,可將經常更新的小資料及不滿一個最小寫入單位(實體記憶頁)的資料集中管理,因此無效的實體記憶頁將會集中產生於某些實體記憶區塊中,所以控制單元21針對該些實體記憶區塊進行無效資料回收作業,將可得到較佳的儲存空間釋放效益。
一般來說,小資料的更新頻率,通常會較大資料的更新頻率高得多,因此利用資料檢視單元32辨識使用者資料的大小,即可判斷出該筆資料是否為經常更新之資料,進而再將經常更新的小資料與不常更新的大資料配置於不同的實體記憶區塊來儲存。
進一步說明之,控制單元21的資料檢視單元32可預先設定資料長度的一門限值(threshold value),若控制單元21所接收的使用者資料小於或等於門限值時,即將該筆資料判斷為經常更新的小資料。在一較佳的實施例中,由作業系統資料統計分析的結果顯示,4KB以下大小的資料,即為作業系統上最常更新的資料長度,因此門限值可以設定為4KB大小的資料長度。
請參閱第八A圖,為記憶單元23中資料處理方法的一種實施例之示意圖,控制單元21接收主機系統1傳來之指令,指示有一寫入資料D00其邏輯位址為邏輯區塊LBA0上之邏輯記憶頁LPA0,以及有一更新資料D10’其位址為邏輯區塊LBA1之邏輯記憶頁LPA0。其中邏輯區塊LBA1之邏輯記憶頁LPA0原是對應實體記憶區塊PBA1之實體記憶頁PPA0,而資料D00與更新資料D10’皆小於控制單元21中所設定的資料門限值。
首先使用者資料D00經邏輯實體位址的轉換和資料大小的檢視,控制單元21可於記憶單元23中挑選一已抹除過的實體記憶區塊PBA2來儲存小於或等於門限值之使用者資料D00。故使用者資料D00即儲存到實體記憶區塊PBA2上的實體記憶頁PPA0中,並於邏輯實體位址轉換表上,建立起邏輯區塊LBA0之邏輯記憶頁LPA0與實體記憶區塊PBA2之實體記憶頁PPA0間的對應關係。而實體記憶區塊PBA2後續便將被用來儲存資料長度小於門限值的資料。
而更新資料D10’同樣被判斷為經常更新之小資料,所以被接著配置於實體記憶區塊PBA2的實體記憶頁PPA1中,然後邏輯實體位址對應表也跟著進行更新,將邏輯區塊LBA1之邏輯記憶頁LPA0對應至實體記憶區塊PBA2上的實體記憶頁PPA1;以及一併更新區塊資訊表,將實體記憶區塊PBA1的實體記憶頁PPA0註記為無效,並將實體記憶區塊PBA1紀錄無效資料實體記憶頁之數目增加一。
接著,若控制單元21接收來欲儲存於邏輯區塊LBA2的使用者資料D2,其中使用者資料D2的長度大於門限值,則控制單元21便於記憶單元23中尋找另一已抹除的實體記憶區塊PBA3來儲存使用者資料D2,如此一來,經常更新之小資料以及不常更新之大資料便被分別儲存於不同的實體記憶區塊中。
接著請參閱第八B圖,為快閃記憶體資料處理方法之一種實施例之示意圖,承第八A圖,若接下來控制單元21接收到邏輯區塊LBA0之邏輯記憶頁LPA0的更新資料D00’,則將資料D00’接續儲存於實體記憶區塊PBA2的實體記憶頁PPA2中。然後控制單元21更新邏輯實體位址對應表,將邏輯區塊LBA0的邏輯記憶頁LPA0對應至實體記憶區塊PBA2的實體記憶頁PPA2;以及更新區塊資訊表,將實體記憶區塊PBA2之實體記憶頁PPA0註記為無效,並將紀錄實體記憶區塊PBA2中無效實體記憶頁之數目的值增加一。
又若主機系統1接著更新邏輯區塊LBA1的邏輯記憶頁LPA0的資料,控制單元21便將更新資料D10”寫入實體記憶區塊PBA2的實體記憶頁PPA3中,然後更新邏輯實體位址對應表,將邏輯區塊LBA1之邏輯記憶頁LPA0對應至實體記憶區塊PBA2之實體記憶頁PPA3;以及更新區塊資訊表,將實體記憶區塊PBA2之實體記憶頁PPA1標記為無效,並將實體記憶區塊PBA2之無效實體記憶頁數目再加一。
然後更進一步地,主機系統1又繼續傳送指令,指示再一次更新邏輯區塊LBA0之邏輯記憶頁LPA0的資料,控制單元21便將更新資料D00”接續寫入於實體記憶區塊PBA2上的實體記憶頁PPA4,然後更新邏輯實體位址對應表,將邏輯區塊LBA0之邏輯記憶頁LPA0對應至實體記憶區塊PBA2之實體記憶頁PPA4;以及更新區塊資訊表,將實體記憶區塊PBA2之實體記憶頁PPA2註記為無效,並將實體記憶區塊PBA2之無效實體記憶頁數目再加一。
實體記憶區塊PBA2儲存該些小於資料門限值的資料,經過數次資料的寫入與更新作業後,因更新動作產生的無效實體記憶頁也較容易產生於實體記憶區塊PBA2中,如第八B圖所示的實體記憶區塊PBA2之實體記憶頁PPA0、PPA1以及PPA2。
由第八B圖可發現,這種資料配置燒錄的方法,可有效的將因資料更新所產生的無效實體記憶頁,集中於儲存有長度小於門限值之資料的實體記憶區塊上。因此,控制單元21若要執行無效資料回收作業時,便可透過檢查區塊資訊表,搜尋無效的實體記憶頁較多的實體記憶區塊,即可輕易的挑出大多數實體記憶頁被無效資料佔用的實體記憶區塊,然後將該些實體記憶區塊中的有效資料複製至一已抹除的實體記憶區塊中儲存,然後再抹除被無效資料佔用的實體記憶區塊,有效率的釋放出儲存空間供資料寫入。
如第八C圖所示,為快閃記憶體無效資料回收方法示意圖,承接第八A圖以及第八B圖,當控制單元21要執行儲存空間釋放無效資料回收作業時,儲存小於門限值之小資料的實體記憶區塊PBA2的無效實體記憶頁,會較儲存大於門限值之資料的實體記憶區塊PBA3的無效實體記憶頁來的多。因此透過搜尋區塊資訊表,即可找到記憶單元23中如實體記憶區塊PBA2這樣的實體記憶區塊來進行無效資料回收的作業,以釋放被無效資料佔用的記憶空間。
然後控制單元21便於記憶單元23中挑出一已抹除的實體記憶區塊PBA6來紀錄實體記憶區塊PBA2上的有效資料。因為實體記憶區塊PBA2中所存的多數為無效資料,所以需複製的有效資料相對的少,因此實體記憶區塊PBA6上所釋放出來的儲存空間也就較習知無效資料回收作業技術多得多。
請參閱第九圖,為快閃記憶體之資料燒錄方法的一種實施例之流程圖,應用於一快閃記憶體的資料燒錄。首先,控制單元21接收到主機系統1傳送而來之資料以及寫入指令(S901),其中寫入指令包含資料欲寫入的邏輯位址,與資料的資料長度。接著,控制單元21依據資料的長度,判斷資料是否為經常更新的資料(S903)。
若判斷結果顯示該資料是經常更新之資料,便更進一步判斷是否有已存有經常更新之資料的實體記憶區塊(S904),若確實有已存有經常更新之資料的實體記憶區塊,則控制單元21便將資料分配並寫入已存有經常更新之資料的實體記憶區塊中(S905),然後更新邏輯實體位址對應表中紀錄的對應關係(S909);若沒有已存著經常更新之資料的實體記憶區塊,則控制單元21便將該資料存入一已抹除之實體記憶區塊中(S906),並同樣更新邏輯實體位址對應表(S909)。而若判斷該資料為不常更新之資料,控制單元21便將該資料寫入非已存有經常更新之資料的實體記憶區塊中,也就是其可為已抹除的實體記憶區塊或已存有不常更新之資料的實體記憶區塊(S907),並更新邏輯實體位址對應表(S909)。
請參閱第十A圖,為快閃記憶體資料處理方法的另一種實施例之示意圖。當控制單元21由主機系統1接收一筆資料D0,包括有資料D00、資料D01及資料D02,其所欲寫入之邏輯位址分別為邏輯區塊LBA4之邏輯記憶頁LPA0、LPA1及 LPA2。透過邏輯實體位址轉換與資料長度的分析,可得知資料D00與資料D01能夠填滿一個實體記憶頁並與實體記憶頁之位址切齊,而資料D02則不滿一個實體記憶頁。
控制單元21於記憶單元23中挑選一實體記憶區塊PBA4,利用實體記憶區塊PBA4來儲存資料D00與資料D01。因此資料D00與資料D01便依序寫入實體記憶區塊PBA4中的實體記憶頁PPA0與實體記憶頁PPA1中。接著,控制單元21於記憶單元23中另外挑選一實體記憶區塊PBA5,將無法填滿一個實體記憶頁之容量的資料D02,儲存在實體記憶區塊PBA5的實體記憶頁PPA0中。
而實體記憶區塊PBA5之實體記憶頁PPA0中未被資料D02填滿的剩餘空間,可填入實體記憶頁PPA0先前的舊資料Dd0,使得資料D02加上舊資料Dd0能夠填滿一個記憶單元23的最小寫入單位,也就是一個實體記憶頁。最後,資料D0於對應的實體儲存空間儲存完畢後,控制單元21便依其更新邏輯實體位址對應表311所紀錄的對應關係,如第十A圖所示。
請接著參閱第十B圖,為快閃記憶體資料處理方法的一種實施例之示意圖。承第十A圖,若接下來控制單元21從主機系統1接收到一筆資料D1,其包括資料D10、資料D11、資料D12及資料D13,其欲寫入之邏輯位址則接續前筆寫入的資料D0之位址,也就是分別為邏輯區塊LBA4之邏輯記憶頁LPA2、LPA3、LPA4和LPA5。
控制單元21在分析使用者資料D1之位址與長度後,將先前所存之資料D02從實體記憶區塊PBA5之實體記憶頁PPA0讀取出來,然後再和資料D10合併一起繼續寫入實體記憶區塊PBA4尚未寫入資料之實體記憶頁中。
復參閱第十B圖,原本實體記憶區塊PBA5中的實體記憶頁PPA0因為其儲存的資料已為無效,而被標記為無效的實體記憶頁,故區塊資訊表中實體記憶區塊PBA5之無效的實體記憶頁數目便增加一。而資料D11與資料D12接著分別被配置到實體記憶區塊PBA4中的實體記憶頁PPA3與PPA4。
最後,資料D13未能填滿一個實體記憶頁,其將造成儲存位址無法切齊(not align)實體記憶頁之位址的情況。於是控制單元21便將資料D13寫入實體記憶區塊PBA5的實體記憶頁PPA1中,而實體記憶區塊PBA5的實體記憶頁PPA1中無法填滿的儲存空間一樣由實體記憶頁PPA1先前所存的舊資料Dd1來填滿。最後,依據所有資料的燒錄位址分配,來更新邏輯實體位址對應表311,以利後續追蹤該些資料的儲存位址。
由第十B圖可觀察到,將沒有切齊記憶單元23之最小寫入單位的使用者資料,集中配置於另一實體記憶區塊PBA5管理之方法,將會使無效的實體記憶頁集中於同一實體記憶區塊PBA5中,可有效避免因無法切齊實體記憶頁之位址的資料連續寫入時,造成無效的實體記憶頁分散產生於實體記憶區塊中的現象。而控制單元21則可由區塊資訊表中找到的無效之實體記憶頁較多的實體記憶區塊,使在無效資料回收時,可釋放出較多的儲存空間。
另外,用於儲存無法寫滿一個實體記憶頁之資料的實體記憶區塊(如第十A圖與第十B圖所示之實體記憶區塊PBA5),其可與用於儲存小於門限值的經常更新之資料的實體記憶區塊(如第八A圖和第八B圖所示之實體記憶區塊PBA2)為同一個實體記憶區塊。也就是控制單元21可將無法切齊一個實體記憶頁之位址的資料,以及小於門限值的資料儲存於同一個實體記憶區塊中,藉此進一步提高儲存空間釋放作業的效益。
請參閱第十一圖,為快閃記憶體之燒錄方法的一種實施例之流程圖,包含:控制單元21接收到主機系統1傳送而來之資料以及寫入指令(S1101),其中寫入指令包含了資料欲寫入之邏輯位址與資料的資料長度。接著,控制單元21依據邏輯實體位址對應表311的對應關係、資料的長度、以及實體記憶頁之容量,來判斷欲寫入的資料是否有資料未切齊一個實體記憶頁(S1103)。
若判斷出有部份零碎的資料未能切齊一個實體記憶頁,控制單元21便將該資料有切齊的部份存入非已存有未對齊之資料的實體記憶區塊中(S1106),接著判斷記憶單元23中是否有已存有未對齊之資料的實體記憶區塊(S1104)。若確實有已存有未對齊之資料的實體記憶區塊,則控制單元21便將該部份之零碎資料分配並寫入該已存有未切齊之資料的實體記憶區塊(S1105),但要是記憶單元中23並未有已存有未對齊之資料的實體記憶區塊,則控制單元21便找尋另一個已抹除之實體記憶區塊,來存放未對齊之資料(S1108),並更新邏輯實體位址對應表311紀錄的對應關係(S1109)。若判斷該資料沒有未對齊一個實體記憶頁的零碎資料,則將其存入非已存有未對齊之資料的實體記憶區塊,也就是該資料可存入一已抹除的實體記憶區塊或一已存有可對齊之資料的實體記憶區塊中(S1107),並同樣更新邏輯實體位址對應表311所紀錄的對應關係(S1109)。
接著請參閱第十二圖,為快閃記憶體之燒錄方法的另一種實施例之流程圖,首先,控制單元21接收到主機系統1傳送而來之資料以及寫入指令(S1201)。接著控制單元21依據資料的長度,判斷其是否為經常更新之資料(S1203),若是,進一步判斷記憶單元23中是否有已存有經常更新之資料的實體記憶區塊存在(S1204),若確實存在已存有經常更新之資料的實體記憶區塊,則將該資料寫入與已存有經常更新的資料之實體記憶區塊(S1205);若記憶單元23中目前無已存有經常更新之資料的實體記憶區塊,則將該資料存入一已抹除之實體記憶區塊中(S1206)。
而若該資料被判定為不常更新之資料,控制單元21便再依據邏輯實體位址對應表311中紀錄的對應關係、資料的長度、以及實體記憶頁之容量,進一步判斷該資料是否有未切齊一個實體記憶頁的零碎資料(S1207),若有,控制單元21便先將該資料有對齊的部份寫入非已存有經常更新之資料以及非已存有未對齊之零碎資料的實體記憶區塊中(S1210),接著進一步判斷記憶單元23中是否有已存有未切齊之資料的實體記憶區塊存在(S1208),若確實有已存有未切齊之資料的實體記憶區塊,則將部份未切齊之零碎資料寫入先前已存有未切齊之資料的實體記憶區塊中(S1209);而若無已存有未切齊之資料的實體記憶區塊,則將該資料未切齊之部份存入一已抹除之實體記憶區塊中(S1212)。
若該不常更新之資料沒有未對齊的零碎部份,則將該資料存入非已存有經常更新之資料以及非已存有未對齊之零碎資料的實體記憶區塊,也就是可將該資料存入一已抹除的實體記憶區塊或一已存有可對齊的資料的實體記憶區塊中(S1211)。最後,控制單元21依據該些資料的燒錄分配,更新邏輯實體位址對應表311(S1213)。
值得一提的是,第十二圖所示之經常更新之資料與未切齊一個實體記憶頁之零碎資料,兩者可以儲存於同一實體記憶區塊中,讓之後產生的無效之實體記憶頁能盡量集中,提昇執行無效資料回收的效益。
綜上所述,藉由資料長度的分析,將資料依其性質作分配並燒錄於記憶單元23中,使得之後產生無效的實體記憶頁盡量集中於記憶單元23某部分的實體記憶區塊中。如此一來,在執行無效資料回收作業來釋放儲存空間時,可容易的挑選到大部分實體記憶頁皆為儲存無效資料的實體記憶區塊,來進行無效資料的回收(garbage collection),以得到較佳的儲存空間釋放效益。
以上所述為本發明的具體實施例之說明與圖式,而本發明之所有權利範圍應以下述之申請專利範圍為準,任何在本發明之領域中熟悉該項技藝者,可輕易思及之變化或修飾皆可涵蓋在本案所界定之專利範圍之內。
習知技術:
4...主機系統
5...快閃記憶體
51...控制單元
53...記憶單元
PBA...實體記憶區塊
PPA...實體記憶頁
本發明:
1...主機系統
2...快閃記憶體
21...控制單元
211...微處理單元
213...主機介面
215...記憶體介面
217...非揮發性儲存單元
219...揮發性儲存單元
23...記憶單元
231...記憶胞陣列
32‧‧‧資料檢視單元
33‧‧‧資料配置管理單元
34‧‧‧資料存取單元
35‧‧‧資料抹除單元
PBA‧‧‧實體記憶區塊
PPA‧‧‧實體記憶頁
LBA‧‧‧邏輯區塊
LPA‧‧‧邏輯記憶頁
S901~S909‧‧‧流程圖步驟說明
S1101~S1109‧‧‧流程圖步驟說明
S1201~S1213‧‧‧流程圖步驟說明
第一圖為習知快閃記憶體儲存系統的架構圖;
第二圖為習知快閃記憶體之記憶單元的儲存空間劃分之示意圖;
第三圖為習知的記憶單元之資料更新方法的示意圖;
第四圖為習知無效資料回收作業的示意圖;
第五A圖以及第五B圖為習知資料連續寫入之方法的示意圖;
第六圖為本發明一種實施例之快閃記憶體儲存系統的硬體方塊圖;
第七圖為本發明一種實施例之快閃記憶體儲存系統的功能方塊圖;
第八A圖以及第八B圖為本發明快閃記憶體之燒錄方法的一種實施例之示意圖;
第八C圖為本發明執行無效資料回收作業時的示意圖;
第九圖為本發明快閃記憶體之資料燒錄方法的一種實施例之流程圖;
第十A圖以及第十B圖為本發明資料處理方法的另一種實施例之示意圖;
第十一圖為本發明快閃記憶體之資料燒錄方法的又一種實施例之流程圖;以及
第十二圖為本發明快閃記憶體之資料燒錄方法的再一種實施例之流程圖。
S901~S909...流程圖步驟說明

Claims (21)

  1. 一種快閃記憶體儲存系統之資料燒錄方法,該快閃記憶體儲存系統包含一控制單元以及一記憶單元,其中該記憶單元包含複數實體記憶區塊,該實體記憶區塊為該記憶單元最小的抹除單位;而該實體記憶區塊包括複數個實體記憶頁,該實體記憶頁為該記憶單元最小的寫入單位,該方法包括:該控制單元接收一主機系統傳來之一寫入指令以及一資料,其中該寫入指令係包含該資料的一邏輯位址與該資料的一資料長度;以及該控制單元依據該資料長度將該資料分配並寫入該實體記憶區塊;其中該控制單元依據該資料長度將該資料分配並寫入該實體記憶區塊,係將該資料長度與預設之一門限值作比較,若該資料長度小於或等於該門限值,則將該資料寫入該些實體記憶區塊其中的一個非已儲存資料長度大於該門限值之資料的實體記憶區塊;反之,若該資料長度大於該門限值,則將該資料寫入該些實體記憶區塊其中的一個非已儲存資料長度小於該門限值之資料的實體記憶區塊。
  2. 如申請專利範圍第1項所述的快閃記憶體儲存系統之資料燒錄方法,其中該非已儲存資料長度大於該門限值之資料的實體記憶區塊與該非已儲存資料長度小於該門限值之資料的實體記憶區塊分別為一已抹除的實體記憶區塊。
  3. 如申請專利範圍第1項所述的快閃記憶體儲存系統之資 料燒錄方法,其中該非已儲存資料長度大於該門限值之資料的實體記憶區塊係可為一已儲存儲存資料長度小於該門限值之資料的實體記憶區塊,而該非已儲存資料長度小於該門限值之資料的實體記憶區塊係可為一已儲存儲存資料長度大於該門限值之資料的實體記憶區塊。
  4. 如申請專利範圍第3項所述的快閃記憶體儲存系統之資料燒錄方法,其中若用來寫入該資料的該實體記憶區塊已寫滿,則使用另一已抹除之該實體記憶區塊來寫入該資料。
  5. 如申請專利範圍第1項所述的快閃記憶體儲存系統之資料燒錄方法,更包括:依據該資料的寫入分配,更新該控制單元中的一邏輯實體位址對應表所紀錄的該資料的邏輯記憶頁與實體記憶頁的對應關係。
  6. 一種快閃記憶體儲存系統之資料燒錄方法,該快閃記憶體儲存系統包含一控制單元以及一記憶單元,其中該記憶單元包含複數實體記憶區塊,而該實體記憶區塊又包含有複數實體記憶頁;以及該控制單元包含一邏輯實體位址對應表,該邏輯實體位址對應表係用於紀錄一主機系統與該記憶單元間的傳輸資料的邏輯位址與實體位址之對應關係,該方法包括:該控制單元接收該主機系統傳送之一寫入指令以及一資料,其中該寫入指令係包含該資料之邏輯位址與該資料的資料長度;該控制單元依據該邏輯實體位址對應表以及該寫入指令,來判斷該資料是否有部份資料未切齊該實體記憶 頁;以及該控制單元依據判斷結果,將該資料分配並寫入該實體記憶區塊。
  7. 如申請專利範圍第6項所述的快閃記憶體儲存系統之資料燒錄方法,其中該控制單元判斷該資料是否有部份資料未切齊該實體記憶頁,係依據該資料之邏輯位址與實體位址之對應關係,以及依據該實體記憶頁之大小與該資料的資料長度,來計算出該資料中是否有部份資料未能寫滿一個該實體記憶頁。
  8. 如申請專利範圍第6項所述的快閃記憶體儲存系統之資料燒錄方法,其中該控制單元將該資料分配並寫入該實體記憶區塊,係將該資料中未切齊該實體記憶頁之部份資料,寫入該些實體記憶區塊其中的一個實體記憶區塊,而將該資料中可切齊該實體記憶頁之部份資料,寫入該些實體記憶區塊其中的另一個實體記憶區塊。
  9. 如申請專利範圍第8項所述的快閃記憶體儲存系統之資料燒錄方法,其中該資料中未切齊該實體記憶頁之部份資料與該資料中可切齊該實體記憶頁之部份資料係分別寫入不同的已抹除的實體記憶區塊。
  10. 如申請專利範圍第8項所述的快閃記憶體儲存系統之資料燒錄方法,其中該資料中未切齊該實體記憶頁之部份資料係寫入該些實體記憶區塊其中的一個已存有未切齊該實體記憶頁之部分資料的實體記憶區塊,而該資料中可切齊該實體記憶頁之部份資料係寫入已存有可切齊該實體記憶頁之部分資料的實體記憶區塊。
  11. 如申請專利範圍第6項所述的快閃記憶體儲存系統之資 料燒錄方法,其中該控制單元將該資料分配並寫入該實體記憶區塊,係將該資料中未切齊該實體記憶頁之部份資料,寫入該些實體記憶區塊其中的一個已抹除的實體記憶區塊或一已存有未切齊該實體記憶頁之部份資料的實體記憶區塊,而將該資料中可切齊該實體記憶頁之部份資料,寫入該些實體記憶區塊其中的另一個已抹除的實體記憶區塊或一已存有可切齊該實體記憶頁之部份資料的實體記憶區塊。
  12. 如申請專利範圍第6項所述的快閃記憶體儲存系統之資料燒錄方法,更包括:依據該資料的寫入分配,更新該資料於該邏輯實體位址對應表上之邏輯記憶頁與實體記憶頁的對應關係。
  13. 一種快閃記憶體儲存系統之資料燒錄方法,該快閃記憶體儲存系統包含一控制單元以及一記憶單元,其中該記憶單元包含複數實體記憶區塊,而該實體記憶區塊又包含有複數實體記憶頁;以及該控制單元包含一邏輯實體位址對應表,該邏輯實體位址對應表係用於紀錄一主機系統與該記憶單元間的傳輸資料的邏輯位址與實體位址之對應關係,該方法包括:該控制單元接收該主機系統傳送之一寫入指令以及一資料,其中該寫入指令係包含該資料之邏輯位址與該資料的資料長度;該控制單元將該資料的資料長度與預設的一門限值作比較,將資料長度小於或等於該門限值的該資料寫入於該些實體記憶區塊中的一第一實體記憶區塊;以及該控制單元依據該邏輯實體位址對應表與該寫入指令,來 判斷資料長度大於該門限值的該資料是否有部份資料未切齊該實體記憶頁,並將該資料中可切齊該實體記憶頁的部份資料寫入於該些實體記憶區塊中的一第二實體記憶區塊,而將該資料中未能切齊該實體記憶頁的部份資料寫入於該些實體記憶區塊中的一第三實體記憶區塊。
  14. 如申請專利範圍第13項所述的快閃記憶體儲存系統之資料燒錄方法,其中該第一實體記憶區塊與該第三實體記憶區塊係為該記憶單元中的同一個實體記憶區塊。
  15. 如申請專利範圍第14項所述的快閃記憶體儲存系統之資料燒錄方法,其中該第一實體記憶區塊與該第三實體記憶區塊係為一至少已存有一資料長度小於或等於該門限值的資料的實體記憶區塊。
  16. 如申請專利範圍第14項所述的快閃記憶體儲存系統之資料燒錄方法,其中該第一實體記憶區塊與該第三實體記憶區塊係為一至少已存有一未能切齊該實體記憶頁的部份資料的實體記憶區塊。
  17. 如申請專利範圍第13項所述的快閃記憶體儲存系統之資料燒錄方法,其中該第一實體記憶區塊與該第三實體記憶區塊係可為一已抹除的實體記憶區塊。
  18. 如申請專利範圍第13項所述的快閃記憶體儲存系統之資料燒錄方法,其中該第二實體記憶區塊係為一已抹除的實體記憶區塊或一已存有可切齊該實體記憶頁的部份資料的實體記憶區塊。
  19. 如申請專利範圍第13項所述的快閃記憶體儲存系統之資 料燒錄方法,更包括:依據該資料的寫入分配,更新該資料於該邏輯實體位址對應表的邏輯記憶頁與實體記憶頁的對應關係。
  20. 如申請專利範圍第13項所述的快閃記憶體儲存系統之資料燒錄方法,其中該門限值係為該實體記憶頁之大小。
  21. 如申請專利範圍第13項所述的快閃記憶體儲存系統之資料燒錄方法,其中該控制單元判斷該資料是否有部份資料未切齊該實體記憶頁,係依據該資料之邏輯位址與實體位址之對應關係,以及依據該實體記憶頁之大小與該資料的資料長度,來計算出該資料中是否有部份資料未能寫滿一個該實體記憶頁。
TW098114976A 2009-05-06 2009-05-06 快閃記憶體儲存系統之資料燒錄方法 TWI405214B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW098114976A TWI405214B (zh) 2009-05-06 2009-05-06 快閃記憶體儲存系統之資料燒錄方法
US12/562,294 US8521947B2 (en) 2009-05-06 2009-09-18 Method for writing data into flash memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW098114976A TWI405214B (zh) 2009-05-06 2009-05-06 快閃記憶體儲存系統之資料燒錄方法

Publications (2)

Publication Number Publication Date
TW201040983A TW201040983A (en) 2010-11-16
TWI405214B true TWI405214B (zh) 2013-08-11

Family

ID=43063037

Family Applications (1)

Application Number Title Priority Date Filing Date
TW098114976A TWI405214B (zh) 2009-05-06 2009-05-06 快閃記憶體儲存系統之資料燒錄方法

Country Status (2)

Country Link
US (1) US8521947B2 (zh)
TW (1) TWI405214B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI628542B (zh) * 2017-04-21 2018-07-01 慧榮科技股份有限公司 快閃記憶體的垃圾回收斷電回復方法以及使用該方法的裝置

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI457940B (zh) * 2009-05-15 2014-10-21 Macronix Int Co Ltd 區塊為基礎快閃記憶體之位元組存取
US9183135B2 (en) * 2011-01-21 2015-11-10 Micron Technology, Inc. Preparation of memory device for access using memory access type indicator signal
US9898402B2 (en) * 2011-07-01 2018-02-20 Micron Technology, Inc. Unaligned data coalescing
US8924631B2 (en) * 2011-09-15 2014-12-30 Sandisk Technologies Inc. Method and system for random write unalignment handling
JP2015001908A (ja) * 2013-06-17 2015-01-05 富士通株式会社 情報処理装置、制御回路、制御プログラム、および制御方法
US20160179399A1 (en) * 2014-12-23 2016-06-23 Sandisk Technologies Inc. System and Method for Selecting Blocks for Garbage Collection Based on Block Health
KR20170015760A (ko) * 2015-07-31 2017-02-09 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
CN107844432B (zh) * 2017-11-22 2021-01-12 深圳忆联信息系统有限公司 一种固态硬盘动态垃圾回收的方法及固态硬盘
CN113312065B (zh) * 2021-06-06 2022-10-21 深圳市昂科技术有限公司 数据烧录方法、装置、终端及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010023472A1 (en) * 1997-10-21 2001-09-20 Noriko Kubushiro Data storage control method and apparatus for external storage device using a plurality of flash memories
US20050166005A1 (en) * 2003-02-28 2005-07-28 Fujitsu Limited Flash memory and method for controlling the memory
US20060020744A1 (en) * 2004-07-21 2006-01-26 Sandisk Corporation Method and apparatus for maintaining data on non-volatile memory systems
US20070043900A1 (en) * 2005-08-20 2007-02-22 Samsung Electronics Co., Ltd. Flash memory management method and flash memory system
US20080109590A1 (en) * 2006-11-03 2008-05-08 Samsung Electronics Co., Ltd. Flash memory system and garbage collection method thereof
US20090100244A1 (en) * 2007-10-15 2009-04-16 Li-Pin Chang Adaptive hybrid density memory storage device and control method thereof

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI398770B (zh) * 2008-07-08 2013-06-11 Phison Electronics Corp 用於快閃記憶體的資料存取方法、儲存系統與控制器

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010023472A1 (en) * 1997-10-21 2001-09-20 Noriko Kubushiro Data storage control method and apparatus for external storage device using a plurality of flash memories
US20050166005A1 (en) * 2003-02-28 2005-07-28 Fujitsu Limited Flash memory and method for controlling the memory
US20060020744A1 (en) * 2004-07-21 2006-01-26 Sandisk Corporation Method and apparatus for maintaining data on non-volatile memory systems
US20070043900A1 (en) * 2005-08-20 2007-02-22 Samsung Electronics Co., Ltd. Flash memory management method and flash memory system
US20080109590A1 (en) * 2006-11-03 2008-05-08 Samsung Electronics Co., Ltd. Flash memory system and garbage collection method thereof
US20090100244A1 (en) * 2007-10-15 2009-04-16 Li-Pin Chang Adaptive hybrid density memory storage device and control method thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI628542B (zh) * 2017-04-21 2018-07-01 慧榮科技股份有限公司 快閃記憶體的垃圾回收斷電回復方法以及使用該方法的裝置

Also Published As

Publication number Publication date
US20100287330A1 (en) 2010-11-11
US8521947B2 (en) 2013-08-27
TW201040983A (en) 2010-11-16

Similar Documents

Publication Publication Date Title
TWI405214B (zh) 快閃記憶體儲存系統之資料燒錄方法
CN106708424B (zh) 对用户数据执行选择性底层暴露映射的设备和方法
US9134918B2 (en) Physical compression of data with flat or systematic pattern
KR102586805B1 (ko) 저장 매체를 다중 모드로 동작시키는 관리 시스템, 그것을 포함하는 저장 시스템, 및 그것을 이용하여 저장 매체를 관리하는 방법
JP4931810B2 (ja) 最適化されたシーケンシャルなクラスタの管理のためのfat分析
JP4988215B2 (ja) 複数のマッピング技法を採用した適応型フラッシュメモリ制御装置及びそれを含むフラッシュメモリシステム
US8095723B2 (en) Log-based flash translation layer and operating method thereof
US9104554B2 (en) Storage apparatus, storage controller and method for relocating data in solid state drive
WO2015185002A1 (zh) 一种数据写入方法及装置
US20100011154A1 (en) Data accessing method for flash memory and storage system and controller using the same
TWI619018B (zh) 可用於資料儲存裝置之垃圾蒐集方法
US20090198875A1 (en) Data writing method for flash memory, and controller and system using the same
EP3752905B1 (en) Append only streams for storing data on a solid state device
US20120290769A1 (en) Flash memory device, memory control device, memory control method, and storage system
EP3346387B1 (en) Storage system and system garbage collection method
JP2005222550A (ja) フラッシュメモリのリマッピング方法
US20160110107A1 (en) Method for writing data into flash memory apparatus, flash memory apparatus, and storage system
US9009442B2 (en) Data writing method, memory controller and memory storage apparatus
WO2014185037A1 (ja) データ記憶システムおよびその制御方法
JP2019169101A (ja) 電子機器、コンピュータシステム、および制御方法
US20100318726A1 (en) Memory system and memory system managing method
KR102349381B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
CN106557428A (zh) 数据存储设备的映射系统选择
CN110674056A (zh) 一种垃圾回收方法及装置
TWI553481B (zh) 固態硬碟的資料管理方法、寫入管理系統及其方法