TWI379194B - Block management method for flash memory, and storage system and controller using the same - Google Patents
Block management method for flash memory, and storage system and controller using the same Download PDFInfo
- Publication number
- TWI379194B TWI379194B TW098101398A TW98101398A TWI379194B TW I379194 B TWI379194 B TW I379194B TW 098101398 A TW098101398 A TW 098101398A TW 98101398 A TW98101398 A TW 98101398A TW I379194 B TWI379194 B TW I379194B
- Authority
- TW
- Taiwan
- Prior art keywords
- unit
- area
- entity
- physical
- flash memory
- Prior art date
Links
- 238000007726 management method Methods 0.000 title claims description 81
- 230000005055 memory storage Effects 0.000 claims description 37
- 239000000463 material Substances 0.000 claims description 13
- 238000000034 method Methods 0.000 claims description 10
- 238000006467 substitution reaction Methods 0.000 claims description 6
- 238000002360 preparation method Methods 0.000 claims description 5
- 238000012423 maintenance Methods 0.000 claims description 2
- 238000012545 processing Methods 0.000 claims description 2
- 210000002784 stomach Anatomy 0.000 claims description 2
- 241000251468 Actinopterygii Species 0.000 claims 1
- 230000007704 transition Effects 0.000 claims 1
- 238000013507 mapping Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 7
- 239000000284 extract Substances 0.000 description 7
- 239000007787 solid Substances 0.000 description 6
- 230000007246 mechanism Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 206010011469 Crying Diseases 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000012937 correction Methods 0.000 description 2
- 230000006378 damage Effects 0.000 description 2
- 230000000977 initiatory effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 241000255925 Diptera Species 0.000 description 1
- 101100042474 Homo sapiens SFTPD gene Proteins 0.000 description 1
- 241000282320 Panthera leo Species 0.000 description 1
- 102100027845 Pulmonary surfactant-associated protein D Human genes 0.000 description 1
- 208000027418 Wounds and injury Diseases 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000002950 deficient Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 208000014674 injury Diseases 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000004898 kneading Methods 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/10—Providing a specific technical effect
- G06F2212/1032—Reliability improvement, data loss prevention, degraded operation etc
- G06F2212/1036—Life time enhancement
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)
Description
1379194 PSPD-2008-0036 29394twf.doc/n 六、發明說明: 【發明所屬之技術領域】 與快閃記憶體控制器 本發明是有關於一種用於快閃記憶體的區塊管理方 法,且特別是有關於一種能夠平均快閃記憶體實體^塊之 磨損的區塊f理方法及使用此方法的快閃記憶體儲^*** 【先前技術】 數位相機、手機相機與MP3在這幾年來的成+ 速’使得消費者對儲存媒體的需求也急速増加。^於閃 記憶體(Flash Memory)具有資料非揮發性、省㊉ 與無機械結構等的特性,適合可攜式應用,^ ^ 這類可攜式由電池供電的產品上。記憶卡 NAND快閃記憶體作為儲存媒體的儲存裝置。 體積小容量大且攜帶方便,所以已廣泛用於個人重要^料 =存。因此’近年快閃記憶體產業成 ’ 熱門的一環。 ]展呆1r祁田 -般來說,快閃記憶體儲存系統 塊會分組為多個實體單元並且此些實體單 ==用區(―)。歸類為資二= 中曰儲存由以指令所以的 實體單元是用以在執行寫㈣用£中的 亓。且#央1 曰7 4替換貧料區中的實體單 7G 體;§快閃記憶體儲存线接 指令而欲對資料區的實體單亓 機的寫入 貝體早7L進仃寫人時’快閃記憶體儲 3 PSPD-2008-0036 29394twf.doc/n 存系統會從備用區中提取一實體單元並且將在資料區中欲 寫入的實體單元中的有效舊資料與欲寫入的新資料寫入至 從備用區中提取的實體單元並且將已寫入新資料的實體單 兀關聯為資料區,並且將原本資料區的實體單元進行抹除 並關聯為備用區。為了能夠讓主機能夠順利地存取以輪替 儲存㈣的實料元"㈣記憶_存,、統會提供邏 輯,元給主機。也就是說,快閃記憶體儲存系統會透過在 邏輯位址-實體位址對映表(1〇gical address physical addfess mappmg table)中記錄與更新邏輯單元與資料區的實體單 元之間的對映_來反映實體單元的輪替,所以域僅需 要針對所提供邏輯單元進行寫人*快閃記憶雜存***备 依據邏輯位址·實體位址對映表對所對映的實體單元進 讀取或寫入資料。 然而’組成實料元之實體區塊的抹除讀是有限的 (例如實體區塊抹除-萬次後就會損壞)。倘若—個實體單 兀僅被程式化(pr〇gramming)—次,而後未被再程式時 此實體早元中的實體區塊的磨損是相對地低,反之 個實體單元被魏地㈣倾抹除時,則此實體單元 的磨損就會相對地高。因此,所謂—ϋ# 一只體單元被程式化或抹除的次數。 當實體區塊磨損程度過高而導致損毀時,系統會將損 毀的貫體區塊放置於顏塊^不會再使用,並代 區中提,新的實體區塊來取代。朗,取代區中的新2 區塊都疋未被使用的,因此當實體單元中的其中—個= PSPD-2008-0036 29394twf. doc/n 區塊損壞而以取代區中的實體區塊來取代時,新實體區塊 的磨損與此實體單元中其他的實體區塊的磨損會不平^。 特別是,一旦損毁的實體區塊數超過一定數量而使得實體 單元的數目不足以提供主機對上述邏輯單元的存取時,'即 使仍有其他實體區塊磨損程度仍低,此快閃記憶體儲存系 統依然會被判定為無法再使用。基此,此領域技術人^需 不斷研發能夠平均地使用快閃記憶體儲存系統中所有實二 區塊的區塊管理方法,以有效地延長快閃記憶體儲存= 的壽命。 【發明内容】 本發明提供一種區塊管理方法,其能夠平均地使用快 閃記憶體貫體區塊,進而有效地延長其使用壽命。 本發明提供一種快閃記憶體儲存系統,其使用上述區 塊管理方法來平均地使用其快閃記憶體實體區塊,進而有 效地延長其使用壽命。 本發明提供一種快閃記憶體控制器,其使用上述區塊 管理方法料均地使躲閃記缝實魅塊,進效 延長期使用壽命。 本發明提出一種區塊管理方法,用於管理多個快閃圮 憶體實體區塊。此區塊管理方法包括將快閃記憶體實體區 塊分組為多個實體單元(physieal unit),並且將實體單元邏 輯地分組為-資料區(data area)、—備々區㈣咖嶋)與一 取代區(replace _)。此區塊管理方法也包括在資料區與 PSPD-2008-0036 29394twf.doc/n 備用區之間執行一第一實體單元交換, 代區之間執行一第二實體單元交換,、其,在備用區與取 換是用以交換在備用區與取代區中;第^二實體單元交 physical unit)。 °° 的灵體單元(good 在本發明之一實施例中,上述之執 換的步驟包括:從屬於上述資料區的實—實體單元交 第-實體單S;從屬於上述備用區的實=之中選擇-第二實體單元;將第一實體單元鍅早兀之中選擇一 二實體單元W將第-實體單元關聯為二製到第 以及將第二實體單元關聯為屬於上述資料區^述備用區; 在本發明之一實施例中,上述在備用^盘 執行第二實體單元交換包括:备、取代£之間 除指令時,計數-抹除指令‘次數行一抹 執行次數大於一取代區平均磨損啟, 二實體單元交換。. 上Μ 细〜ΐ本Γ月實施例中,上述在備用區與取代區之間 抑仃第一貫||單兀祕包括:記錄屬於上述資料區的實體 =元與上賴題的倾單元的—第—平均抹除次數;、記 、彔屬於上述取傾的實體單元的—第二平均絲次數;以 及备此第一平均抹除次數與此第二平均抹除次數的一差異 值大於一差異門楹值時,則執行上述第二實體單元交換。 在本發明之一實施例中,上述在備用區與取代區之間 ,竹第二實體單元交換包括:記錄屬於上述備用區的實體 單疋的一第三平均抹除次數;記錄屬於上述取代區的實體 1379194 29394twf.doc/n PSPD*20〇8-〇〇36 單元的一第四平均抹除次數;以及當此第三平均抹除次數 與此第四平均抹除次數的一差異值大於一差異門檻值時, 則執行上述第二實體單元交換。 在本發明之一實施例中,上述執行第二實體單元交換 的^驟包括:從屬於上述備用區的實體單元之中選擇一第 三^體單元;從屬於上述取代區的實體單元之中選擇一第 四貫體單元;將此第三實體單元關聯為屬於上述取代區; 以及將此第四實體單元關聯為屬於上述備用區。 在本發明之-實關中,上述之區塊f理方法更包括 於=取代貫體單元表,其中此取代實體單元表中記錄屬 於上述取代區的實體單元。 括:實施财,上述之區塊扣方法更包 抹/^ 體早福—抹除次數;以及根據所記錄的 盘·^Ϊ將屬社述備用區的實體區塊區分為—高抹除區 元。-抹除區,亚且從此高抹除區中選擇上述第三實體單 記慎提出一種快閃記憶體控制器’用於管理—快閃 “體儲存系統的多個快閃記憶,^ ==:包括微處理器單元以及糕接此:處理單二S' 理模組;,丨、緩衝記憶體與記憶體管 分組為多個組將此些快閃記憶體實體區塊 為一資料/υΐ組的實體單元邏輯地分組 貝才十£、一備用區與—取代區,苴伙 會在資料區鱼備用區之門舳—洁Ζ 。己匕理模組 /、備用^之間執仃-苐-實體單元交換,以 i 7 1379194 0 PSPD-2008-0036 29394twf.doc/n 在備用區與取代區之間執行一第二實體單元交換,其中此 弟二實體单元交換是用以父換在備用區與取代區中好的實 體單元。 Λ
在本發明之一實施例中’上述之記憶體管理模組執行 第一實體單元交換包括下述步驟:從屬於上述資料區的實 體單元之中選擇一第一實體單元;從屬於上述備用區的實 體單元之中選擇一第二實體單元;將第一實體單元中所儲 存的資料複製到第二實體單元中;將第一實體單元關聯為 屬於上述備用區;以及將第二實體單元關聯為屬於上述資 料區。 、 在本發明之一實施例中,上述之記憶體管理模組執行 第二實體單元父換包括下述步驟:當對上述實體單元執行 一抹除指令時,計數一抹除指令執行次數;以及當此抹^ 指令執行次數大於一取代區平均磨損啟動值時,則執行2 述第二實體單元交換。
在本發明之一實施例中,上述之記憶體管理模組執疒 該第二實_元交換包括下述倾:記關於上述資料^ 的實體單元與上述備用區的實體單元的一第一平均抹除4 數;記錄屬於上述取代區的實體單元的一第二平均抹二= 數;以及當此第-平均抹除次數與此第二平均抹除次2 =差異值大於-差異門檻值時,則執行上述第二實體 交換。 在本發明之-實施例中,上述在備用區與取代區 執行第二實體單元交換包括:記錄屬於上述_區的實體 8 PSPD-2008-0036 29394twf.d〇c/n 單元的一第三平均抹除次數;記錄屬於上述取代區的實體 單元的一第四平均抹除次數;以及當此第三平均抹除次數 與此第四平均抹除次數的一差異值大於一差異門檻值時, 則執行上述第二實體單元交換。 ^ 在本發明之一實施例中,上述之記憶體管理模組執行 第二實體單元交換包括下述步驟··從屬於上述備用區的實 體單元之中選擇一第三實體單元;從屬於上述取代區的實 ,單元之中選擇一第四實體單元;將此第三實體單元關聯 為屬於上述取代區;以及將此第四實體單元關聯為屬於上 逑備用區。 〜在本發明之一實施例中,上述之記憶體管理單元維護 取代只體單元表,其中此取代實體單元表中記錄屬於上 述取代區的實體單元。 ^ ,本發明之一實施例中,上述之記憶體管理單元記錄 ^ Μ體單元的一抹除次數,並且根據所記錄的抹除次數 ^屬於上述制區的實體區塊區分為—高抹除區與一低抹 =區’其中記憶體管理單元會從高抹除區中選擇上 I體單元。 本發明提出一種快閃記憶體儲存系統,其包括具有多 快閃記鐘實體區塊的快閃記憶體晶片、連 ;^控制器’其中快閃記憶體控制器是電性 讀體晶片與此連接器。在此快閃記憶體儲存系統中, 記湘會將此独閃記憶體實體區塊分組為多 只體單元並且將所分組的實體單元邏輯地分組為一資料 PSPD-2008-0036 29394twf.doc/n 區、一備用區與一取代區,其中快閃記憶體控制器會在資 料區與備用區之間執行一第一實體單元交換,以及在備用 區與取代區之間執行一第二實體單元交換,其中第二實體 單元交換是用以交換在備用區與取代區中好的實體單元。 在本發明之一實施例中,上述之快閃記憶體控制器執 行上述第一實體單元交換包括下述步驟:從屬於上述資料 區的實體單元之中選擇一第一實體單元;從屬於上述備用 區的實體單元之中選擇一第二實體單元;將第一實體單元 中所儲存的資料複製到第二實體單元中;將第一實體單元 關聯為屬於上述備用區;以及將第二實體單元關聯為屬於 上述資料區。 ' 在本發明之一實施例中,上述之快閃記憶體控制器執 行上述第二實體單元交換包括下述步驟:當對上述實體單 元執行一抹除指令時計數一抹除指令執行次數;以及當此 抹除指令執行次數大於一取代區平均磨損啟動值時,則執 行上述第二實體單元交換。 本發明之一實施例中,上述之快閃記憶體控制器執行 上述第一貫體單元交換包括下述步驟:記錄屬於上述資料 區的實體單元與上述備用區的實體單元的一第一平均抹除 次數;記錄屬於上述取代區的實體單元的一第二平均抹二 次數;以及當此第一平均抹除次數與此第二平均抹除次^ 的—差異值大於一差異門檻值時’則執行上述第二實體卯 元交換。 ' 平 本發明之一實施例中,上述之快閃記憶體控制器執行 1379194 PSPD-2008-0036 29394twf.doc/n 上述第二實體單元交換包括下述少驟:從屬於上述備用區 的實體單元之中選擇一第三實體單元;從屬於上述取代區 的實體單元之中選擇一第四實體單元;將此第三實體單元 關聯為屬於上述取代區;以及將此第四實體單元關聯為屬 於上述備用區。 本發明之一實施例中,上述之快閃記憶體控制器維護 —取代實體單元表,其中此取代實體單元表中記錄屬於上 述取代區的實體單元。 —本發明之一實施例中,上述之快閃記憶體控制器記錄 每-貫體單7L的-抹除:欠數,並且根據所記錄的抹無、 將屬於上述備用區的實體區塊區分為一高抹除區與」^ 區’其巾快閃記憶體控•彳||從該高抹除區巾選擇該第: 實體單元。 吊二 本發n補巾’屬於上述取倾的實體 數目大於2000。 尾的 本發明之-實施例中,上述之快閃記憶體晶片包 少4個快閃記憶體模組。 枯至 基於上述,本發明因在資料區與備用區以及在 ^取代區之間執行貫體單元交換,@此可以平均資料°° =區與取代區的實體區塊的磨損,進而延長快閃^ 儲存系統的壽命。 隐體 為讓本發明之上述特徵和優點能更鴨㈣,下 舉貫施例,並配合所附圖式作詳細說明如下。 特 11 1379194 PSPD-2008-0036 29394twf.doc/n 【實施方式】 圖1是根據本發明一範例實施例所繪示的快閃記憶體 儲存系統的概要方塊圖。
5月參知、圖1,通常快閃記憶體儲存系統會與主機 200 —起使用’以使主機系統2〇〇可將資料寫入至快閃記 憶體儲存系統100或從快閃記憶體儲存系統1〇〇中讀取資 料。在本實施例中,快閃記憶體儲存系統100為固態硬碟 (Sohd State Drive,SSD)。但必須瞭解的是,在本發明另一
=施例中㈣記憶體儲料統⑽亦可以是記憶卡或隨 碼0 J 快閃記憶體儲存***1〇〇包括連接器i2( -控制益110與快閃記憶體晶片13Q。 快閃記憶體控制哭n / 實作的多個邏輯閘或硬體型式或城型式 憶體晶片13。來進行資二二以配^連接器120與快閃記
閃記憶體控制器11〇包:::二取與抹除等運作。快 模組_、UGa、記憶體管理 與主機介面模組11〇e。面模、,且110c、緩衝記憶體110d 微處理器單元lln 閃記憶體介面模組u a、'f與記憶體管理模組110b、快 組110e等協同合作 緩衝記憶體1繼與主機介面模 運作。 進仃快閃記憶體儲存系統100的各種 記憶體管理槿纟且 記憶體管理模組u b、疋耦接至微處理器單元ll〇a。 用以執行根據本範例實施例的區塊 12 1379194 PSPD-2008-0036 29394twf.doc/n
^本發明另-實施射’記憶體管理模組腿的機輔 型讀存於㈣記㈣q⑽的特定區 =例如’快閃記憶體中專用於存放系統資料的***區' =。同樣的,當快閃記憶體儲存系統⑽運作時,纪㈣ 二】=11〇b的多個機器指令會被载入至缓衝記; ^ :;oa °
管理機制。 在本實施例中,記憶體管理模組丨1%是以—勤 實作在控制器11G中,例如以程式語言撰寫相關機械指令 並且儲存於程式記憶體(例如,唯讀記憶雖咖 Memory,R0M))來實作記憶體管理編且u〇b。當 ^ 體儲存系統_運作時,記憶體管理模組11〇㈣多個機= =會間接地被載入至缓衝記憶體11〇d中,並且由微“ =早兀110a來執行或直接由微處理器單元來執行以 元成根據本發明實施例的區塊管理機制。 實作在控制ϋ IIG^。體S理減11%亦可以—硬體型式 n〇a並1=::二,1 且U〇c是耦接至微處理器單元 ,且用以存取快閃記憶體晶片130。也 11如=^體=片13G的資料會經由快閃記憶體介面模紐 =為快閃記憶體晶片130所能接受的格式。 以新體_是耦接至微處理器單元110a並且用 例如邏輯位址·實體位址對映表i 或者主機糸統測所讀取或寫人的資料。在本實施例中, 13 1379194 PSPD-2008-0036 29394tw£doc/n 缓衝記憶體llOd為靜態隨機存取記憶體(static random access memory,SRAM)。然而,必須瞭解的是,本發明不 限於此’動態隨機存取記憶體(Dynamic Random Access memory, DRAM)、磁阻式記憶體(Magnetoresistive Random Access Memory,MRAM)、相變化記憶體(phase Change
Random Access Memory,PRAM)或其他適合的記憶體亦可 應用於本發明。
主機介面模組ll〇e是耦接至微處理器單元11〇a並卫 用以接收與識別主機系統200所傳送的指令。也就是,主 機糸統200所傳送的指令與資料會透過主機介面模組ιι〇( 末傳送至微處理裔单元n〇a。在本實施例中,主機介面賴 組110e為SATA介面。然而,必須瞭解的是本發明不陌 於此’主機介面模組ll〇e亦可以是USB介面、IEEE 13% 介面、PCI Express介面、MS介面、MMC介面、SD介面、 CF介面、IDE介面或其他適合的資料傳輸介面。特別是, 主機介面模組ll〇e會與連接器12〇相對應。也就是,主機 介面模組110e必須與連接器12〇互相搭配。 此外,雖未繪示於本實施例,但控制器可更包括 錯誤校正觀與電源管賴_祕控職閃記憶體的一 般功能模組。 ,接器120用以透過匯流排遍連接主機系統獅。 在本貫施例_,連接器120為SATA連接哭。缺而 瞭解的是本發明不限於此,連接_亦‘ 器、鹏⑽連接器、PCIExpress連接器、廳連=接 14 1379194 PSPD-2008-0036 29394twf.doc/n MMC連接器、SD連接器、CF連接器、 他適合的連接器。
快閃記憶體晶片130是電性連接至快閃記憶體控制器 no並且用以儲存資料。在本實施中快閃記憶體晶片13〇 為多層記憶胞(Multi Level Cell,MLQNAND快閃記憶體。 然而,必須瞭解的是,本發明不限於此。在本發明另一實 施例中’單層記憶胞(Single Level Cell,SLQNAND快閃記 憶體亦可應用於本發明。 圖2是根據本發明一範例實施例所繪示的快閃記憶體 晶片的概要方塊圖。
IDE連接器或其 在本範例實施例中,快閃記憶體晶片130包括第一快 閃記憶體模魟210、第二快閃記憶體模組220、第三快閃記 憶體模組230與第四快閃記憶體模組240,其中第一快閃 記憶體模組210具有實體區塊210-(0)〜21〇_(n);第二快閃 記憶體模組220具有實體區塊220-(0)〜220-(N);第三快閃 記憶體模組230具有實體區塊230-(0)〜23〇-(n);以及第四 快閃記憶體模組240具有實體區塊240_(〇)〜240-(N)。值得 一提的是,雖然本發明範例實施例是以包括4個快閃記憶 體模組的快閃記憶體晶片130來描述’然而本發明不限於 此。特別是,具有4個或更多快閃記憶體模組的快閃於憶 體晶片更適於使用本發明範例實施例的區塊管理機制來進 行管理。 在快閃記憶體晶片130中實體區塊為抹除之最小單 位。亦即,每一實體區塊含有最小數目之一併被抹除之β 15 1379194 PSPD-2008-0036 29394twf.doc/n 憶胞。每一實體區塊通常會分割為數個頁面(page)。頁面 通常為程式化(program)的最小單元》但要特別說明的是於 有聲不同的快閃記憶體設計,最小的程式化單位也可為一 個扇區(sector)。也就是說,一個頁面中有多個扇區並以一 個扇區為程式化的最小單元。換言之,頁面為寫入資料或 頃取資料的最小單元。每一頁面通常包括使用者資料區D 與冗餘區R。使用者資料區用以儲存使用者的資料,而冗 餘區用以儲存系統的資料(例如,錯誤檢查與校正碼(Error
Checking and Correcting Code, ECC Code)。 為對應於磁碟驅動器的扇區(sect〇r)大小,一般而言, 使用者資料區D通常為512位元組,而冗餘區r通常為 16位元組。也就是,一個頁面位址為—個扇區。然而,亦 可以多個扇區形成一個頁面位址。在本範例實施例中,每 一頁面是包括4個扇區。 一般而言’實體區塊可由任意數目的頁面所組成,例 如64個頁面、128個頁面、256個頁面等。此外第一快 =記憶體模組21〇、第二快閃記憶體模組22〇、第三快閃記 十思體模組230與第四快閃記憶體模組24〇的實體區塊通常 士可被分組為數個區域(zone),以每一獨立的區域來管理 二體區塊 210~(0)〜21〇-(N)、實體區塊 220-(0)〜220-(N)、實 ,區塊23〇_(0)〜23〇·(Ν)與實體區塊24〇-(0)〜24〇-⑼可增加 知作執仃的平行程度且簡化管理的複雜度。 矣此外三快閃記憶體控制器110會將第一快閃記憶體模 、'且210、第二快閃記憶體模組220、第三快閃記憶體模組 16 1379194 PSPD-2008-0036 29394twf.doc/n 230與第四快閃記憶體模組240中的實體區塊邏輯地分址 為多個實體單元來管理,例如丨個實體單元包括4個實體 區塊。由於以實體單元進行管理時,快閃記憶體控制器ιι〇 是以較大的單位(即實體單元)來維護邏輯位址_實體位址 對映表,因此可節省所需使用之缓衝記憶體110d的空間。 在本發明範例實施例中,實體區塊210-(0)〜21〇_(N)、實體 區塊220-(0)~220-(N)、實體區塊230-(0)〜230-(N)與實體區 塊240-(0)〜240-(N)會被邏輯地分組為實體單元 31〇-(0)〜31〇-(N)。 圖3A〜3C是根據本發明一範例實施例繪示快閃記慎 體晶片的運作示意圖。 " 必須瞭解的是,在此描述快閃記憶體實體區塊的運作 時,以“提取,,、“搬移,,、“交換”、“替換,,、“輪替,,、,,分 割劃分’,等詞來操作快閃記憶體晶片130的實體區魏^ 邏輯上的概念。也就是說,快閃記憶體之實體區塊的實= 位置並未更動,而是邏輯上對快閃記憶體的實體區塊進行 操作。值得一提的是’下述的運作是由快閃記憶體控制器 110的記憶體管理模組110b所完成。 " 請參照圖3A,記憶體管理模組110b會將快閃記憔體 晶片130的實體區塊會邏輯地分組為實體單u元 31〇-(〇)〜310-(N),並且會將實體單元310_(〇)〜31〇_讲)邏輯 地分組為儲存區320以及取代區330。 在儲存區32〇中的實體單元310_(0)〜3l〇_(p)是快閃 記憶體儲存系統100中正常被使用的實體單元。也就是 1379194 PSPD-2008-0036 29394twf.doc/n 說,記憶體管理模組110b會將資料寫入至屬於儲存區32〇 的實體單元。 °° 凊參照圖3B,記憶體管理模組11〇b會將儲存區 的實體區塊邏輯地分組成一系統區3〇2、一資料區3〇4與 一備用區306。 八 系統區302包括實體單元310_(0)〜實體單元31〇_(s), 資料區304包括實體單元31〇_(s+1)〜實體單元 310-(S+M),並且備用區306包括實體單元31〇_(s+M+1)〜 實體單元310-(P)。在本實施例中,上述s、μ與p為正整 數,其代表各區配置的實體區塊數量,其可由快閃記憶體 儲存系統的製造商依據所使用的快閃記憶體模組的容量而 設定。 邏輯上屬於系統區302中的實體單元用以記錄系統資 料,此系統資料包括關於快閃記憶體晶片的製造商與型 號、每一快閃記憶體模組的區域數、每一區域的實體區塊 數、每一實體區塊的頁面數等。 邏輯上屬於資料區304中的實體單元用以儲存使用者 的資料’一般來說就是主機系統200所存取之邏輯單元所 對映的實體單元。也就是說,資料區304的實體單元為儲 存有效貧料的夺元。 邏輯上屬於備用區306中的實體單元是用以輪替資料 區304中的實體單元,因此在備用區306中的實體單元為 空或可使用的單元,即無記錄資料或標記為已沒用的無效 資料。也就是說’資料區304與備用區306的實體單元會 18 1379194 " PSPD-2008-0036 29394twf.doc/n 以輪替方式來儲存主機系統2〇〇對快閃記憶體儲存系統 100寫入的資料。 如前所述,快閃記憶體晶片13〇的實體單元會以輪替 方式提供主機系統200來儲存資料,因此記憶體管理模組 ll〇b會提供邏輯單元350-1〜350-M給主機系統200以進 行資料存取,並且透過維護邏輯位址_實體位址對映表 (logical address-physical address mapping table)來記錄邏輯 鲁 單元所對映的實體單元。 請同時參照圖3B與圖3C,例如,當主機系統欲寫入 貧料至邏輯單元350-1時,記憶體管理模組11〇b會透過邏 輯位址-實體位址對映表得知邏輯單元350-1目前是對映邏 輯上屬於資料區304的實體單元31〇-(S+l)。因此,記憶體 管理模組110b會對實體單元310_(s+1)中的資料進^更 新,期間,快閃記憶體控制器110會從備用區3〇6中提取 實體單元310-(S+M+1)來輪替資料區3〇4的實體單元 310-(S+1)。然而’當記憶體管理模組11〇b將新資料寫入 ® 至貫體單兀31〇-(s+M+1)的同時,記憶體管理模組110b不 會立刻將實體單元310-(S+1)中的所有有效資料搬移至實 體單元310-(S+M+1)而抹除實體單元31〇_(s+1)。具體來 •說,記憶體管理模組nob會將實體單元310_(s+1)中欲寫 - 入頁面之前的.有效資料(即,頁與ρι)複製至實體單元 310-(S+M+1)(如圖3C的(a)) ’並且將新資料(即,實體單元 310-(S+M+1)的頁P2與P3)寫入至實體單元 3HKS+M+D(如圖3C _))。此時,記憶體管理模組⑽ 19 1379194 PSPD-2008-0036 29394twf.doc/n 即完成寫入的動作。因為實體單元31〇_(s+1)中的有效資料 有可能在下個操作(例如’寫人指令)中變成無效,因此立 刻將實體單TO 310-(S+1)中的所有有效資料搬移至替換實 體單元31(HS着1}可能會造成無謂的搬移。在此案例 中’實體單7L 310-(s+l)與實體單元31〇 (8懒+1)的内容整 合起來才是所對映邏輯單元35Μ的完整内容。此等母子 關係(即,實體單兀310-(S+1)與實體單元310_(S+M+1))的 • 暫態關係可依據快閃記憶體控制器110中緩衝記憶體li〇d 的大小而定,而暫時地維持此種暫態關係的動作一般稱為 開啟(open)母子區塊。例如,在本實施财,記憶體管理 模組110b最多同時可開啟五組母子區塊。 之後’當需要將實體單元310_(s+1)與實體單元 310-(S+M+1)的内容真正合併時’記憶體管理模組 110b 才 會,貫體單t〇310-(S+1)與實體單元31〇_(s+M+1)聱併為— 個貫體單元,由此提升區塊的使用效率,此合併的動作又 I稱為關閉(close)母子區塊。例如,如圖3C的(c)所示, 虽進行關閉母子區塊時’記憶體管理模組u〇b會將實體單 = 31^(S+1)中剩餘的有效資料(即,頁p4〜pN)複製至替換 貫體單元310-(S+M+1) ’然後將實體單元31〇_(s+1)抹除並 關=為備用區3G6,同時,將實體單元31(HS+M+1)關聯 料區304,並且在邏輯位址_實體位址對映表中將邏輯 平兀350-1的對映更改為實體單元31〇 (s+M+1),由此完 成關閉母子區塊的動作。 —般來說,經常在資料區304與備用區3〇6之間輪替 20 1379194 PSPD-2008-0036 29394twf.doc/n 的實體單元稱為動態實體單元。另外,在資料區綱 往有-些資料寫入後就長時間未曾更動。例如, ,存漏首喜愛的刪歌曲後就不曾再去删除或更新。儲 存此類貧料的實體早7G-般稱為靜態實體單元 == 更動在?其抹除次數會^ ^貝私度較低)。在本發明實施中,記憶體管理模 =在資料區304與備用區观之間執行實體單元交換的動 二以料區3G4中較少輪替的實體單元有機會進行 輪替,由此有效地平均實體區塊的磨損。 仃 圖4是根據本發明-範例實施例所緣示在資 ”備用區306之間所執行的實體單元交換的流程圖。 睛參關4,當快閃記憶體儲存系統刚 =體管理模組11%會設定資以 3〇4與備用區30^^^ 胃 &口口 — _ ν 才' Ε间的貫體早兀父換的頻率,且中咨袓 二啟動值愈大’啟動實體單元交換的頻“愈低' 之’貧料ϋ平均賴啟動録 :械 =記憶體的品質以及欲達成平均磨 = =動值。需注意的是,執行實ίΐί 六心Γ讀彳平均磨損的效果愈佳,錢行•雕留-2太需的時間會影響快閃記憶體儲存系統^心;兀 =:7料區平均磨_值是致定為:。 ^ 令,快閃記憶體控制器110會待命並且 21 1379194 PSPD-2〇〇8-〇〇36 29394tw£doc/n ft實料元被抹除時,記龍管理· 1勘會計數第 一,除指令執行次數。例如,記憶體管理模組懸會將第 抹除指令執行次數加1。 之後,在步驟S405中記憶體管理模組祕會判斷第 =指令執行次數是否大於資料區平均磨損啟動值。倘 :在步驟S4G5中麟第—抹除指令執行錄大於資料區 平均磨損啟動值時,則在步驟S4〇7中合 換。具體來說’在步驟S4〇7中記憶體管理模組貝脳會從 ,輯上屬於資料區3〇4的實體單元之t隨機地提取一實體 單兀(S407-1.),並且從邏輯上屬於備用區3〇6的實體單元 之中隨機地提取-實體單元(別〇7_3),然後將從資料區3〇4 中所提取^體單元内的資料複製至從備腿3〇6中所提 取的貝體單元中(S407-5)。最後,將從備用區3〇6中所提 取的實體單元關聯為資料區304(S407_7)且將從資料區3〇4 中所提取的實體單元抹除後關聯為備用區3〇6(S4〇7_9)。也 就是說’在執行步驟S407_7與S4〇9_9之後,從備用區3〇6 中所提取的貫體單元會邏輯地展於資料區3〇4,而從資料 區304中所提取的實體單元會邏輯地屬於備用區306,由 此完成資料區304與備用區306之間的實體單元交換。 例如’倘若執行實體區塊交換時,從資料區3〇4中提 取貫體單元31〇-(S+M),並且從備用區306中提取實體單 元310_(P),其中實體單元310-(S+M)是對映邏輯單元 35〇-M。接著,實體單元310-(S+M)中的資料會被複製到實 體單元31〇-(P)中,實體單元310-(S+M)會被抹除並關聯為 22 1379194 PSPD-2008-0036 29394twf.doc/n 備用區306,而實體單元31(HP)會被關聯為資料區3〇4, 其t邏輯位址-實體位址對映表會被更新為邏輯單元 350-M對映實體單元310_(p)。 值得一 k的是,在本範例實施例中是以隨機的方式從 資料區304與備用區306中選擇進行交換的實體單元"。然 而,在本發明另一範例實施例中,記憶體管理模 亦可記錄每-實體單元的抹除次數,並且選擇在資料區 304 ^抹除次數較低的實體單元和在備用區中抹除次 數實體單元來進行交換。也就是說,備用區306中 的實,單元會區分為冑絲倾單元與低絲實體單元, ,中向抹除的實體單元會被作為進行實體單元交換的實體 如’備用區鄕中的高抹除實體單元是指抹除次 ^於備㈣中所有實體單元之抹除次數平均值的實 體导兀’而低抹除實體單元是指在備㈣遍中抹除次數 ϋ於備用區遍中所有實體單元之抹除次數平均值的實體 早兀。 ^後’在步㈣中會將第—抹除指令執行次數重 ^然後返回步驟S4〇3。在此,圖4所繪示的流程會 在决閃讀體儲存系統⑽關機時結束。 區30?:的4 :示的機制,可使資料區3〇4與備用 储存系統二;破平均地使用'進而延長快閃記憶體 抹除實施例中是以執行 、疋疋否進仃— 貝料區304與備用區306 23 1379194 PSPD-2008-0036 29394twf.d〇c/n 之間的實體單元交換。然而,在本發明另—實施例中在 ^量所儲存的f料可能因被多次讀取而產生錯誤(此亦稱 為讀取干财ead diSt_),上賴財料衫換的時機 更包括判斷在資料區304中的實體單元被讀取的次數是否 平均讀取干賴動值(例如,此平均餘干擾啟動值 疋设疋為5000),倘若資料區3〇4中任一 的次數超過平均讀取干·動值,縣此實料⑪備用 區30^中的實體單元進行上述實體單元交換程序。 請再參照圖3A,在取代.區33〇中的實體單元 3HKP+1)〜310_(N)是替代實體單元。例如,快閃記憶體晶 片^30於出廠時會預留4%的實體區塊作為更換使用。也 就是說,當儲存區320中的實體區塊損毀時,預留於取代 區330中的實體區塊可用以取代損壞的實體區塊(即,壞的 實體區塊(bad block))。因此,倘若取代區330中仍存有可 用之貫體區塊時,若發生實體區塊損毁,記憶體管理模組 110b會從取代區330中提取可用的實體區塊來更換損毀的 貫體區塊。倘若取代區330中無可用之實體區塊且發生實 體區塊損毁時,快閃記憶體儲存系統100將會被宣告無法. 再使用。特別是’在本範例實施例中,屬於取代區33〇的 實體區塊的數目會超過2〇〇〇個。 值得一提的是,如上所述由於取代區330中的實體區 塊是用於取代損毀的實體區塊,因此在一般的寫入與抹除 運作中並不會使用到屬於取代區33〇的實體單元。因此, 在本發明範例實施例中,記憶體管理模組110b會在取代區 24 1379194 PSPD-2008-0036 29394twf.doc/n 330與備用區306之間執行好的實體單元(g〇〇(j phySicai unit)交換,進而使取代區330中的實體區塊亦有機會被使 用0 圖5是根據本發明一範例實施例所繪示在備用區3〇6 與取代區330之間所執行的實體單元交換的流程圖。
請參照圖5,當快閃記憶體儲存系統1〇〇開機時,首 先在步驟S501中記憶體管理模組u〇b會設定取代區平均 磨損啟動值。取代區平均磨損啟動值是代表啟動取代區 330與備用區306之間的實體單元交換的頻率,其中取代 區平均磨損啟動值愈大’啟動實體單元交換的頻率愈低, 反之,取代區平均磨損啟動值愈小,啟動實體單元交換的 頻率愈高。使用者(例如,儲存系統的製造商)可根據所使 用^ 夬閃記憶體的品質以及欲達成平均磨損的效果來自行 "又疋取代區f·均磨損啟動值^在本範例實施例巾取代區平 均磨損啟動值是設定為1000。
在步驟SS03中,快閃記憶體控制器11〇會待命並」 =任-實體單元被抹除時,記憶體管理模組〗勘會計㈤ 令執行次數。例如,記憶體管理模組1⑽會將J 一抹除指令執行次數加1。 -姑步驟S505中記憶體管理模組1騰會判斷; -抹料钱行次蚊否大錄代 若在步驟S5G5中判斷第-枝師人#削貝啟動值1 平加m二日令執行次數大於取代1 •I 值^則在步驟S5〇7中會執行實體單元: /、體末礼,在步驟S507中記憶體管理模組議會; 25 1379194
PSPD-2008-0036 29394twf.doc/n 取代區330 t隨機地提取一實體單元(S507-1),並且從備 用區306中隨機地提取一實體單元0507-3),然後將從備 用區306中所提取的實體單元關聯為取代區330(S507-5) 且將從取代區330中所提取的實體單元關聯為備用區 306(S507-7)。也就是說’在執行步驟S5〇7_5與S507-7之 後,從取代區330中所提取的實體單元會邏輯地屬於備用 區306,而從備用區306中所提取的實體單元會邏輯地屬 於取代區330,由此完成取代區33〇與備用區3〇6之間的 實體單元交換。 例如,倘若執行實體區塊交換時,從取代區33〇中提 取實體單元310-(P+1),並且從備用區3〇6中提取實體單元 31^(Ρ)。接著’貫體單元31〇_(p+1)會關聯為備用區贏, 而貫體單元310-(P)會被關聯為取代區33〇。 值得-提的是,在本_實施财是 取㈣㈣鄕中選擇進行交換的實體單元“ 二例實施例中’記憶體管理模組"ο 抹除次數’並且選擇在取代运 33=抹^人數較低的實體單元和在備 技卜 數較尚的實料元來進行 υ6中抹除 的實體單元會區分為高抹除的實體單備用區306 4 元_其中高抹除的實體單元會:作為以2的 實體單元。 口疋仃只體早7L交換以 之後’在步驟S5〇9中合將篦-置歸零,然後返回步驟8曰.—*指令執行次數;| 屬503。在此,圖5所緣示的流程, 26 1379194 PSPD-2008-0036 29394twf.doc/n 在快閃記憶體儲存系統100關機時結束。 在本發明範例實施例t,記憶體管理模組灘 第二抹除指令次數來啟動備用區3〇6與取代區33〇之^的 實體單元交換’然而本發明不限於此。在本發明另— 實施例中’記憶體管理模組騰亦可記錄每一實體單 抹除次數,並且當資料區304與備用區3〇6實體單元的 均抹除次數與取代區330的實體單元的平均抹除次數的差 異超過-差異門摇值或當備用區綱實體單元的平均抹除 次數與取代區330的實體單元的平均抹除次數的差異超過 -差異Η捏值時,則記憶體管理模組祕會執行備用區 3〇6與取,區33〇之間的實體單元交換。類似地,使用者(例 如’儲存系統的製造商)可根據所使用之快閃記憶體的品質 以及欲達成平均磨損的效果來自行設定差異門檀值。.在本 範例實施例令,差異門檻值是設定為1〇〇。 此外,在本發明一範例實施例中,記憶體管理模组 1勘會建立與維護—取代實體單絲(未營示)來管理取代 _ d 330中的實體單元。也就是說’記憶體管理模組 110 b 會使用取代實體單元表来記錄屬於取代區33〇的實體單 元。 綜上所述,本發明在快閃記憶體晶片的資料區與備用 區之間執行實體單元交換,並且在快閃記憶體晶片的取代 區與傷用區之間執行實體單元交換,因此快閃記憶體晶片 的實體區塊的使用會更為平均,進而可大幅延長快閃記憶 體儲存系統的壽命。 27 1379194 PSPD-2008-0036 29394twf.doc/n 雖然本發明已以實施例揭.露如上,然其並非用以限定 本發明’任何所屬技術領域中具有通常知識者,在不脫離 本發明之精神和範圍内,當可作些許之更動與潤飾,故本 發明之保護範圍當視後附之申請專利範圍所界定者為準。 【圖式簡單說明】 圖1疋根據本發明一範例實施例所繪示的快閃記憶體 儲存系統的概要方塊圖。 圖2疋根據本發明一範例實施例所繪示的快閃記憶體 晶片的概要方塊圖。 圖3A〜3C是根據本發明一範例實施例所緣示的快閃 s己憶體晶片的實體單元的運作示意圖。 圖4疋根據本發明一範例實施例所繪示在資料區與備 用區之間所執行的實體單元交換的流程圖。 圖5是根據本發明一範例實施例所繪示在備用區與取 代區之間所執行的實體單妓換的流程圖。 【主要元件符號說明】 100 :快閃記憶體儲存系統 110 :控制器 110a :微處理器單元 U〇b :記憶體管理模組 U〇C:快閃記憶體介面模組 ll〇d :緩衝記憶體 28 1379194 PSPD-2008-0036 29394twf.doc/n 110e :主機介面模組 120 :連接器 130 ·’快閃記憶體晶片 200 :主機系統 300 :匯流排 210、220、230、240 :快閃記憶體模組 310-(0)、310-(1)、310-(P)、310-(P+1)、310-(P+2)、 310-(N):實體單元 320:儲存區 330 :替代區 302 :系統區 304 :資料區 306 :備用區 350-1〜350-M :邏輯單元 S401、S403、S405、S407、S407-卜 S407-3、S407-5、 S407-7、S407-9、S409 :在資料區與備用區之間執行實體 單元交換的區塊管理步驟 S501 ' S503 ^ S505 ' S507 > S507-1 > S507-3 > S507-5 > S507-7、S509 :在備用區與取代區之間執行實體單元交換 的區塊管理步驟 29
Claims (1)
1379194 、 im.Q-9〇 _ η年6i月w日!!頁⑻ 七、申請專利範圍: 1. 一種區塊管理方法,用於管理多個快閃記憶體實體 區塊,該區塊管理方法包括: 將該些快閃記憶體實體區塊分組為多個實體單元; 將該些實體單元邏輯地分組為一資料區、一備用區與 一取代區; 在該資料區與該備用區之間執行一第一實體單元交 換;以及 在該備用區與該取代區之間執行一第二實體單元交 換,其中該第二實體單元交換是交換在該備用區與該取代 區中好的該些實體單元, 其中執行該第一實體單元交換的步驟包括:從屬於該 資料區的實體單元之中選擇一第一實體單元;從屬於該備 用區的實體單元之中選擇一第二實體單元;將該第一實體 單元中所儲存的資料複製到該第二實體單元中;將該第一 實體單元關聯為屬於該備用區;以及將該第二實體單元關 聯為屬於該資料區, 其中執行該第二實體單元交換的步驟包括:從屬於該 備用區的實體單元之中選擇一第三實體單元;從屬於該取 代區的實體單元之中選擇一第四實體單元;將該第三實體 單元關聯為屬於該取代區;以及將該第四實體單元關聯為 屬於該備用區。 2. 如申請專利範圍第1項所述之區塊管理方法,其中 在該備用區與該取代區之間執行該第二實體單元交換包 30
括: 令執:單元執行-抹除指令時’計數-抹除指 值時當執^:欠數大於―取傾料磨損啟動 〜執仃該第二實體單元交換。 在專利範圍第1項所述之區塊管理方法,其中 =備用轉該取代區之間執行該第二實體單元交換包 -的j屬㈣胃料區的實料元與該制區的實體單 疋的一第—平均抹除次數; 記錄屬於該取代區的實體單元的—第二平均抹除次 数,以及 田"亥第-平均抹除次數與所述第二平均抹除次數的 -差異值大於-差異⑩值時,職㈣第二實體單元交 換。 4.如申請專利範圍第1項所述之區塊管理方法,豆中 在該備用11與該取代區之間執行該第二實體單元交&包 括: 記錄屬於該備用區的實體單元的一第三平均抹除次 數; §己錄屬於該取代區的貫體單元的一第四平均抹除次 數;以及 當該第三平均抹除次數與所述第四平均抹除次數的 一差異值大於一差異門檻值時,則執行該第二實體單元交 31 1379194 101-9-20 _ 日II胸 換。 5. 如申請專利範圍第1項所述之區塊管理方法,更包 括維護一取代實體單元表,其中該取代實體單元表中記錄 屬於該取代區的實體單元。 11。 6. 如申請專利範圍第1項所述之區塊管理方法,更包 括: I 記錄每一該些實體單元的一抹除次數;以及 根據該些抹除次數將屬於該備用區的實體區塊區分 為一高抹除區與一低抹除區, 其中從屬於該備用區的實體單元之中選擇該第三實 體單元的步驟包括從該高抹除區中選擇該第三實體單元。 7. —種快閃記憶體控制器,用於管理一快閃記憶體儲 存系統的多織閃記憶體實體區塊,該快閃記憶體控制器 包括: 。 一微處理器單元; -快閃記憶體介面H減至該微處理器單元; 一主機介面模組,耦接至該微處理器單元; 一緩衝记憶體,耦接至該微處理器單元;以及 '記憶體管理模級,減至該微處理ϋ單it,其中該 記憶體管理餘將鱗㈣記缝實體 多 體單元並且將該些實體軍元邏輯地分組為_=== 用區與一取代區, 寸 m 執行組在該資料區與該備用區之間 執灯第早70讀,以及在該備__取代區之 32 JQl-9-20 間執行-第二實體單元交換, 用以交換在該備用區愈該抑2第一實體早岐換是 其中該記憶體管理二代二好= 2述步驟:從屬於該資料區的實體單元1中=父ί包 ==屬於該備用區的實體單元之中選ί; i ‘元所:, 及將=二實體單於該備用區;以 括下理漁執行該第二實料元交換包 實體單元·㈣屬於韻用區的實體單元之中選擇一第三 體單元.將^於該取代區的實體單元之中選擇一第四實 該第四實於縣代區;以及將 器,i巾如^請專利範圍第7項所述之快閃記憶體控制 下述;^憶體管理模組執行該第二實體單元交換包括 令執執行一抹除指令時,計數一抹除指 值時二2除指令執行次數大於一取代區平均磨損啟動 寻則執行該第二實體單元交換。 器,:申/月專利範圍第7項所述之快閃記憶體控制 ^述Ϊ驟該記憶體管理模級執行該第二實體單元交換包括 記錄屬於該資料區的實體單元與該備用區的實體單 33 1379194 101-9-20 元的一第一平均抹除次數; ^--^— 記錄屬於該取代區的實體單元的一第二平均抹除次 數;以及 當該第-平均抹除次數與所述第二平均抹除次數的 差異值大於-差異fm值時’職行該第二實體單元交 〇 =如申請專職圍第7項所述之快閃記憶體控制 Ϊ述=該記憶體管理模組執行該第二實體單元交換包括 數;記錄狀㈣龍的實料細1三平均抹除次 數;=屬於該取代區的實體單元的—第四平均抹除次 當該第三平均抹除錄料 差異值大於—差異服值時,_行該第 換 換 =:.==第項所述之快閃記 憶體控制 器,其中該記憶體管理單元維護 該取代實體單元表中記錄屬於該,其中 12·如中請專利範圍第7气匕的:體早兀。 器,其中該記憶體管理單元記錄a 一"4之^閃記憶體控制 除次數’ ϋ且根據該些抹除次數單元的-抹 塊區分為一高抹除區與—低抹除區鸯於5亥備用區的實體區 其中該記憶體管理單元你 早7^^抹除區中選擇該第三 34 101-9-20 實體單元 種快閃記憶體儲存系統,包括: ,閃记憶體晶片’具有多個快閃記憶體實體區塊; 一連接器;以及 鱗體控制器’電性連接至該_記憶體晶片 「11 ’其中該_記憶體控制H將該些快閃記憶體 又塊分組為多個實體單元並且將該些實體單觸輯地 为組為-資料區、一備用區與一取代區, 二中該⑼閃€憶體控制n在該資料區與該備用區之 間執行H體單疋交換,以及在該備㈣與該取代區 ,間執彳!-第二實體單元交換,其中該第二實體單元交換 是用以交齡該備’與該取傾巾好的該些實體單元, 其中該快閃記憶體控制器執行該第一實體單元交換 包括下述步驟γ從屬於該資料區的實體單元之中選擇一第 一實體單元’從屬於該備用區的實體單元之中選擇一第二 實體單元:將該第-實體單元巾所儲存的資料複製到該第 二實體單將該第-實體單元關聯為屬於該備用區; 以及將該第一貫體單元關聯為屬於該資料區, 其中該㈣5己憶體控制器執行該第二實體單元交換 包括下述步驟:從屬於該備用區的實體單元之中選擇一第 三實體單元;從屬於該取代區的實體單元之中選擇一第四 實體單元,,第三實體單元義為屬於絲代區;以及 將該第四貫體單元關聯為屬於該備用區。 14.如U利feu第13項所述之快閃記憶體儲存 35 中該快閃記憶體控制帛二f體 r地步驟: 、 令執些ΙΓ元執行一抹除指令時,計數一抹除指 值時除指令執行次數大於一取代區平均磨損啟動 則執行該第二實體單元交換。 系統,甘如申清專利㈣第13項所述之快閃記憶體儲存 包括下快問記憶體控制器執行該第二實體單元交換 把錄>|㈣資樞的實體單元與該制區的實體 疋的一第一平均抹除次數; .記錄屬於該取代區的實體單元的—第二平均抹 致,以及 當該第-平轉除缝細^第二平均抹除次數的 差異值大於-差異門植值時,則執行該第二實體單元交 換。 / 16.如申請專利範圍第13項所述之快閃記憶體儲存 糸統,其中該快閃記憶體控制器執行該第二實體單元交換 包括下述步驟: 記錄屬於該備用區的實體單元的一第三平均抹除次 數; 5己錄屬於該取代區的貫體單元的一第四平均抹除次 數;以及 當該第二平均抹除次數與所述第四平均抹除次數的 36 1379194 =異值則娜值時,職行⑽ 17.如申請專利範圍第13項 系統’其中該快閃記憶體控制器维護-取代:m存 其㈣取代實館單元表t記錄屬於該取代 三實己憶體控制15從該高抹除區中選擇該第 a如申請專利範圍帛13項所述之快閃記憶體儲存 系統,其中屬於該取代區的實體區塊的數目大於2_。 20·如申請專利範圍第13項所述之快閃記憶體储存 系統’其中雜閃記憶體晶片包括至少4個快閃記憶體模 37
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098101398A TWI379194B (en) | 2009-01-15 | 2009-01-15 | Block management method for flash memory, and storage system and controller using the same |
US12/406,667 US8275931B2 (en) | 2009-01-15 | 2009-03-18 | Block management method for flash memory, and storage system and controller using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW098101398A TWI379194B (en) | 2009-01-15 | 2009-01-15 | Block management method for flash memory, and storage system and controller using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201027332A TW201027332A (en) | 2010-07-16 |
TWI379194B true TWI379194B (en) | 2012-12-11 |
Family
ID=42319829
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098101398A TWI379194B (en) | 2009-01-15 | 2009-01-15 | Block management method for flash memory, and storage system and controller using the same |
Country Status (2)
Country | Link |
---|---|
US (1) | US8275931B2 (zh) |
TW (1) | TWI379194B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI728395B (zh) * | 2019-05-10 | 2021-05-21 | 旺宏電子股份有限公司 | 記憶體系統、記憶體控制器以及記憶體控制方法 |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101086876B1 (ko) * | 2009-09-30 | 2011-11-25 | 주식회사 하이닉스반도체 | 예비 영역을 유동적으로 관리하는 반도체 스토리지 시스템 및 그 제어 방법 |
TWI451247B (zh) * | 2010-09-23 | 2014-09-01 | Phison Electronics Corp | 資料寫入方法、記憶體控制器與記憶體儲存裝置 |
TWI435216B (zh) | 2010-09-27 | 2014-04-21 | Silicon Motion Inc | 用來進行超區塊管理之方法以及記憶裝置及控制器 |
CN103955434B (zh) * | 2010-10-08 | 2017-04-19 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
CN102446137B (zh) * | 2010-10-08 | 2015-12-09 | 群联电子股份有限公司 | 数据写入方法、存储器控制器与存储器储存装置 |
TWI420308B (zh) * | 2010-10-13 | 2013-12-21 | Phison Electronics Corp | 區塊管理方法、記憶體控制器與記憶體儲存裝置 |
TWI479505B (zh) | 2010-12-16 | 2015-04-01 | Phison Electronics Corp | 資料管理方法、記憶體控制器與記憶體儲存裝置 |
CN102567221B (zh) * | 2010-12-29 | 2015-06-10 | 群联电子股份有限公司 | 数据管理方法、存储器控制器与存储器储存装置 |
IT1404161B1 (it) * | 2010-12-30 | 2013-11-15 | Incard Sa | Metodo e sistema per migliorare il controllo del limite dei cicli di scrittura di una carta a circuito integrato |
US8886904B2 (en) | 2011-04-14 | 2014-11-11 | Kaminario Technologies Ltd. | Managing a solid-state storage device |
JP5674634B2 (ja) | 2011-12-28 | 2015-02-25 | 株式会社東芝 | コントローラ、記憶装置およびプログラム |
US9442838B2 (en) * | 2012-10-22 | 2016-09-13 | Rambus Inc. | Remapping memory cells based on future endurance measurements |
US9092310B2 (en) | 2013-03-15 | 2015-07-28 | Seagate Technology Llc | Host command based read disturb methodology |
CN105278876B (zh) * | 2015-09-23 | 2018-12-14 | 华为技术有限公司 | 一种固态硬盘的数据擦除方法及装置 |
TWI607448B (zh) * | 2016-09-07 | 2017-12-01 | 群聯電子股份有限公司 | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 |
CN110287068B (zh) * | 2019-07-04 | 2023-02-28 | 四川长虹空调有限公司 | 一种NandFlash驱动方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6230233B1 (en) * | 1991-09-13 | 2001-05-08 | Sandisk Corporation | Wear leveling techniques for flash EEPROM systems |
US20050204187A1 (en) * | 2004-03-11 | 2005-09-15 | Lee Charles C. | System and method for managing blocks in flash memory |
US6985992B1 (en) * | 2002-10-28 | 2006-01-10 | Sandisk Corporation | Wear-leveling in non-volatile storage systems |
US8082386B2 (en) * | 2008-10-21 | 2011-12-20 | Skymedi Corporation | Method of performing wear leveling with variable threshold |
-
2009
- 2009-01-15 TW TW098101398A patent/TWI379194B/zh active
- 2009-03-18 US US12/406,667 patent/US8275931B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI728395B (zh) * | 2019-05-10 | 2021-05-21 | 旺宏電子股份有限公司 | 記憶體系統、記憶體控制器以及記憶體控制方法 |
Also Published As
Publication number | Publication date |
---|---|
US20100180069A1 (en) | 2010-07-15 |
TW201027332A (en) | 2010-07-16 |
US8275931B2 (en) | 2012-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI379194B (en) | Block management method for flash memory, and storage system and controller using the same | |
TWI385669B (zh) | 用於快閃記憶體的平均磨損方法、儲存系統與控制器 | |
TWI386802B (zh) | 用於快閃記憶體的資料寫入方法及其控制電路與儲存系統 | |
TWI678619B (zh) | 包含動態超區塊之記憶體裝置及相關方法與電子系統 | |
TWI398770B (zh) | 用於快閃記憶體的資料存取方法、儲存系統與控制器 | |
TWI354996B (en) | Wear leveling method and controller thereof | |
US8001317B2 (en) | Data writing method for non-volatile memory and controller using the same | |
TWI405209B (zh) | 資料管理方法及使用此方法的快閃儲存系統與控制器 | |
TWI381274B (zh) | 用於快閃記憶體的區塊管理方法、儲存系統與控制器 | |
US8046526B2 (en) | Wear leveling method and controller using the same | |
TWI385519B (zh) | 資料寫入方法及使用此方法的快閃儲存系統與其控制器 | |
TWI385667B (zh) | 用於快閃記憶體的資料管理方法、儲存系統與控制器 | |
TWI373769B (en) | Block management method for flash memory and storage system and controller using the same | |
TWI381393B (zh) | 區塊管理與更換方法、快閃記憶體儲存系統及其控制器 | |
TW200929224A (en) | Data writing method for flash memory and controller thereof | |
TW201122811A (en) | Flash memory storage system and controller and data writing method thereof | |
CN101625897B (zh) | 用于快闪存储器的数据写入方法、储存***与控制器 | |
TW200917261A (en) | Wear leveling method and controller using the same | |
TWI417884B (zh) | 用於快閃記憶體的資料存取方法、儲存系統與控制器 | |
TW201007451A (en) | Block management method for flash memory and storage system and controller using the same | |
CN101667157A (zh) | 闪存数据传输方法、闪存储存***及控制器 | |
TW201035978A (en) | Flash memory writing method and storage system and controller using the same | |
TWI305652B (zh) | ||
JP4254930B2 (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 | |
JP2006099594A (ja) | メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法 |