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 PDF

Info

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
Application number
TW098101398A
Other languages
English (en)
Other versions
TW201027332A (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 TW098101398A priority Critical patent/TWI379194B/zh
Priority to US12/406,667 priority patent/US8275931B2/en
Publication of TW201027332A publication Critical patent/TW201027332A/zh
Application granted granted Critical
Publication of TWI379194B publication Critical patent/TWI379194B/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/1032Reliability improvement, data loss prevention, degraded operation etc
    • G06F2212/1036Life 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
TW098101398A 2009-01-15 2009-01-15 Block management method for flash memory, and storage system and controller using the same TWI379194B (en)

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)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI728395B (zh) * 2019-05-10 2021-05-21 旺宏電子股份有限公司 記憶體系統、記憶體控制器以及記憶體控制方法

Families Citing this family (16)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

Cited By (1)

* Cited by examiner, † Cited by third party
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) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法