[go: up one dir, main page]

TW200915072A - Managing housekeeping operations in flash memory - Google Patents

Managing housekeeping operations in flash memory Download PDF

Info

Publication number
TW200915072A
TW200915072A TW97119213A TW97119213A TW200915072A TW 200915072 A TW200915072 A TW 200915072A TW 97119213 A TW97119213 A TW 97119213A TW 97119213 A TW97119213 A TW 97119213A TW 200915072 A TW200915072 A TW 200915072A
Authority
TW
Taiwan
Prior art keywords
host
data
memory
command
memory system
Prior art date
Application number
TW97119213A
Other languages
English (en)
Inventor
Sergey Anatolievich Gorobets
Original Assignee
Sandisk 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
Priority claimed from US11/753,491 external-priority patent/US20080294814A1/en
Priority claimed from US11/753,463 external-priority patent/US20080294813A1/en
Application filed by Sandisk Corp filed Critical Sandisk Corp
Publication of TW200915072A publication Critical patent/TW200915072A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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 OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/7211Wear leveling

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)
  • Read Only Memory (AREA)

Description

200915072 九、發明說明: 【發明所屬之技術領域】 本發明大體而言係關於非揮發性快閃記憶系統之操作, 且更具體言之係關於在此等記憶系統中進行例行操作(諸 如磨損調平及資料清除)之技術。 【先前技術】 存在當今正使用的許多商業上成功之非揮發性記憶體產 品(尤其係呈較小形狀因數之可移除式卡或嵌入式模組的 形式),其使用形成於一或多個積體電路晶片上之快閃電 可抹可程式化唯讀記憶體(EEPR0M)單元之陣列。一記憶 體控制器(通常(但不必)位於一獨立之積體電路晶片上)被 包括於該記憶系統中以與該系統所連接至之一主機介接且 控制該卡内之記憶體陣列的操作。此控制器通常包括—微 處理器、某一非揮發性唯讀記憶體(ROM)、一揮發性隨機 存取s己憶體(RAM)及一或多個專用電路(諸如當資料在資料 之程式化及讀取期間通過控制器時自資料計算一錯誤校正 碼(ECC)的專用電路)。其他記憶卡及嵌入式模組並不包括 此控制器,而是其所連接至之主機包括提供控制器功能之 軟體。呈卡之形式的記憶系統包括一與一位於主機外部之 插孔配合的連接器。另—方面,並不意欲移除嵌入於主機 内之記憶系統。 包括控制器之一些市售記憶卡以以下商標來出售: CompactFlash(CF) > MultiMedia(MMC) ' Secure Digital(SD) ^ MmiSD、Mlcr〇SD及TransFlash。不包括控制器之記憶系 131567.doc 200915072 統之一實例係SmartMedia卡。所有此等卡皆可自SanDisk Corporation(其受讓者)獲得。此等卡令之每一者與其可移 除地連接至之主機設備具有一機械及電介面。另一類小 型、手持式快閃記憶設備包括經由標準通用串列匯流排 (USB)連接器而與主機介接的快閃驅動器。 Corporation在其Cruzer商標下提供此等設備。用於記憶卡 之主機包括個人電腦、筆記型電腦、個人數位助理 《 (PE>A)、各種資料通信設備、數位相機、蜂巢式電話、攜 帶型音訊播放器、汽車音響系統及類似類型之裝備。快閃 驅動器與具有USB插孔之任何主機(諸如個人電腦及筆記型 電腦)一起工作。 兩種通用記憶體單元陣列架構(反或(N〇R)及反及 (NAND))具有商業應用。在一典型N〇R陣列中,記憶體單 元連接於在行方向上延伸之鄰近位元線源極擴散區與汲極 擴散區之間,其中控制閘極連接至沿單元之列延伸之字 〇 線。一記憶體單元包括至少一儲存元件,其定位於處於源 極與汲極之間的單元通道區域之至少一部分上。該等儲存 兀件上之電荷的程式化位準因此控制該等單元之操作特 . 性,可接著藉由將適當電壓施加至定址之記憶體單元來讀 • 取該操作特性。在美國專利第5,070,032號、第5,095,344 號、第 5,313,421號、第 5,315,541號、第 5,343,〇63號、第 5,661,053號及第6,222,762號中給出了此等單元之實例、其 在記憶系統中之使用及其製造方法。 NAND陣列利用具有兩個以上記憶體單元(諸如,16個或 131567.doc 200915072 32個)的串聯串,言玄等記憶體單元與一或多個選擇電晶體 起連接於個別位元線與一參考電位之間以形成單元之 行子、線延伸跨越大量此等行内之單元。在程式化期間, 订内之個別單%藉由使該串巾之剩餘單元穩定接通以使 得流經—串之電流視儲存妓址之單S中之電荷的位準而 被讀取並驗證。可在美國專利第5,57〇,315號、第5,774,397 號第 6,046,935 號、第 6,373,746號、第 6,456,528號、第
6’522,580唬、第 6,771,536號及第 6,781,877號中找到 架構陣列之實例及其作為記憶系統之部分的操作。 如在先4參考之專利中所論述,冑前快閃EEpR〇M陣列 之電荷儲存元件係最常用之導電性浮動閘極,其通常由導 電掺雜之夕晶石夕材料形成。可用於快閃eepr〇m系統中之 #代類型的6己憶體單元利用一非導電性介電材料來代替 導電性浮動閘極以便以非揮發之方式來儲存電荷…由氧 化石夕、氮切及氧切(咖)形成之三層式介電質夹於一 導電性控制閘極與位於記憶體單元通道上方的半導電性基 板之表面之間。該單元藉由將電子自單元通道注入氮㈣ (電子被截獲於該氮化物中並儲存於—有限區域中)中而被 程式化並藉由將熱電洞注入氮化物中而被抹除。在美國專 利第6’925’0G7號中描述了使用介電儲存元件之若干特定 元結構及陣列。 如在歲乎所有積體電路應用中,快間EEPROM記憶體單 凡陣列亦存在縮小實施某—積體f路功能所需切基板面 積的壓力。持續需要增加可儲存於⑯基板之給定區域中之 131567.doc 200915072
數位資料的量,以便增加給定大小之記憶卡及其他類型之 封裝的儲存容量或增加容量及降低大小。一種用以增加資 料之儲存密度的方式係每記憶體單元及/或每儲存單元或 元件儲存一個以上貧料位元。此係藉由將儲存元件電荷位 準電壓範圍窗劃分為兩個以上之狀態來實現。使用四個此 等狀態允許每―單元儲存兩個資料位元,a個狀態允許每 儲存元件儲存三個資料位元,等等。在美國專利第 5,〇43,9峨及第5,172,338號巾描述了使料動閘極之多狀 態快閃EEPR〇M結構及其操作,且在上文所提及之美國專 利第M25,G()7號中描述了使用介電浮動間極之結構。亦可 出於各種原因而以美國專利第5,93〇,167號及第M56,528號 :所描述之方式以兩個狀態(二元)來操作一多狀態記憶: 單元陣列之所選部分。 將一典型快閃EEPR0M陣列之記憶料元畫彳分為一同抹 除之單元的離散區塊。亦即,該區塊係抹除單位、可同時 抹除之最小數目之單元。每—區塊通常儲存—或多個資料 頁’頁係程式化及讀取之最小單位,但可在+同子陣列或 平面中並行程式化或讀取一個以上之頁。每一頁 -或多個資料區段,其中區段之大小由主機系統來界定。 -實例區段包括512個使用者資料位元組(遵循由磁碟機建 立之標準)加上某-數目之關於使用者f料及/或健存其之 區塊的附加資訊位元組。此等記憶體通常在每一區塊内缸 態有16個、32個或更多頁,且每―頁儲存一個或僅一些主 機資料區段。 131567.doc 200915072 為增加在將使用者資料程式化至記憶體陣列中及自其讀 取使用者資料期間的並行性程度,通常將該陣列劃分為若 干子陣列(通常稱作平面),該等子陣列含有其自身之資料 暫存器及其他電路以允許並行操作,使得可將若干資料區 段同時程式化至若干或所有平面中之每一者或自若干或所 有平面中t每一者同時讀取若干資料區1。可冑單個積體 電路上之一陣列實體劃分為若干平面,或每一平面可由獨 立之一或多個積體電路晶片形成。在美國專利第5,798,968 號及第5,890,192號中描述了此記憶體實施之實例。 為進一步有效地管理記憶體,可將區塊鏈接在一起以形 成虛擬區塊或元區塊(metablock)。亦即,界定每一元區塊 以包括來自每一平面之一個區塊。在美國專利第6 763,424 號中描述了元區塊之使用。藉由自一邏輯區塊位址之轉譯 而將一元區塊之實體位址確定為一用於程式化及讀取資料 之目的地。類似地,可一同抹除一元區塊之所有區塊。藉 由此等大的區塊及/或元區塊來操作之記憶系統中的控制 器執行許多功能,包括在自主機接收之邏輯區塊位址 (LBA)與記憶體單元陣列内之實體區塊號碼(PBn)之間轉 譯。通常藉由區塊位址内之偏移來識別區塊内之個別頁。 位址轉譯通常涉及使用邏輯區塊號碼(LBN)及邏輯頁之中 間術語。 操作大區塊或元區塊系統而使一些額外區塊維持於—已 抹除區塊集區中係普遍的。當更新小於一區塊之容量的― 或多個資料頁時,典型做法係將該等經更新之頁寫人至__ 131567.doc 200915072 來自集區之已抹除區塊,且接著自原始區塊複製未改變頁 的資料以抹除集區區塊。在上文所提及之美國專利第 6,763,424號中描述了此技術之變化。隨著時間推移,由於 主機資料檔案被重寫並更新,所以許多區塊可最終具有其 相對較小數目之含有有效資料之頁及含有不再為當前資料 之資料的剩餘頁。為能夠有效地使用陣列之資料儲存容 量,有效資料之邏輯相關頁自多個區塊中之片段而不時地
聚集在一起’並被一同合併至更少數目之區塊中。通常將 此過程稱為"廢料收集"。 當一單個區塊或元區塊中之顯著量的資料變得過時時, 亦可壓縮該區塊内之資料。此涉及將區塊之剩餘有效資料 複製至一空白已抹除區塊中且接著抹除原始區塊。複製區 塊既而含有來自原始區塊之有效資料加上先前由過時資料 所佔據之已抹除儲存容量。亦通常以邏輯次序將有效資料 配置於該複製區塊内,藉此使資料之讀取更容易。 通常將用於記憶系統之操作的控制資料儲存於一或多個 保留區塊或元區塊t。此等控制資料包括操作 程式化及抹除電壓、檔案目錄資訊及區塊配置資訊)。與 在給定時間使控制器操作記憶系統所需之資訊一樣多的資 訊亦儲存於RAM中,且接著在更新時被寫回至㈣記憶
體。控制資料之頻繁更新導致伴留F 人啊等蚁保留&塊之頻繁壓縮及/或 廢料收集。若存在多個保留區塊,則 瓜⑴』Μ時觸發兩個或兩 個以上保留區塊之廢料收隼。Α _ 又杲马避免此耗時操作,在必要 之4及在保留區塊可由主機容納時時 娜今硐岈常地起始該等保留區 131567.doc -10· 200915072 塊之自主廢料收集。在美國專利申請公開案第 2005/0144365 A1號中描述了此等先占式資料再定位技 術。亦可在使用者資料更新區塊變得幾乎滿載時對其執行 廢料收# #等待直至其變冑完全滿載並藉此觸發—必 須在可將由主機提供之資料寫入至記憶體中之前立即實扩 之廢料收集操作。 & 在一些記憶系統中’實體記憶體單元亦被分組為兩個或 兩個以上之區。一區可為邏輯區塊位址之規定範圍所映射 至之實體記憶體或記憶系統的任何分割子集。舉例而言, 可將-能夠儲存64兆位元組之資料之記憶系統分割為二個 區,每個區儲存㈣位元組的資料。接著亦將邏輯區塊位 址之範圍劃分為四個群組,一個群組被指派給四個區中之 每-者的實體區塊。在一典型實施中,限制邏輯區塊位
址,使得每一者之資料不會被寫入至該等邏輯區塊位址所 映射至之一單個實體區的外部。在一劃分為若干平面(子 陣列)(其中每一者具有其自身之定址、程式化及讀取電路) 之記憶體單元陣列中,每-區較佳包括來自多個平面之區 塊《常包括來自平面中之每一者的相同數目的區塊)。區 主要用於簡化位址管理(諸如邏輯至實體轉譯),從而產生 更小之轉譯表、保存此等表所需之更少ram記憶體及用以 定址記憶體之當前活動區域的更快存取時間,<旦由於其限 制性性質’所以其可導致不及最佳之磨損調平。 個別快間EEPROM單元將表示一或多個資料位元之一定 量的電荷儲存於-電荷儲存㈣或單元中。儲存元件之電 13I567.doc 200915072 荷位準控制其愔 „ _ 己隐體早兀之臨限電壓 ㈣*被用作讀取該單一狀態的基:為:;^ 臨限電壓窗劃分為耸夕加_ 逋常將一 之兩一個範圍用於記憶體單元 護帶來二離固=之儲存狀態中的每一者。此等範圍由保 態的《感測ΓΓ呆護帶包括允許判定個別翠元之儲存狀 直 …’立>。此等儲存位準由於電荷干擾在鄰近或 2目δ己憶體單元、頁或區塊中執行之程式化 抹除操作而移位。因卜 取次 rEcr、* 因此通f由控制器來計算錯誤校正碼 冑其與主機資料一起儲存’該主機資料經程式 1在讀取_心魏㈣純行某難度 i (若有必要)。 Ο 快閃記憶體單元之回應性通常根據單元被抹除及重新程 式化的次數而隨著時間推移而改變。此被認為係在每一抹 :及/或重新程式化操作期間少量電荷被截獲於一儲存元 層中的結果’該電荷隨時間推移而累積。此通常導 Γ己憶體單元變得較不可靠,且隨著記憶體單元老化而可 2要更高電壓用於抹除及程式化。可程式化記憶體狀態 有效臨限電壓窗亦可由於電荷保留而減小。例如 國專利第5,26M7G號中描述了此情形。結果係記憶體單元 :有限之有效使用壽命;亦即’記憶體單元區塊在被映射 —系統之前僅經受-預設數目之抹除及重新程式化循環。 一,閃記憶體區塊需要經受之循環的數目視記憶體單元之 =結構、用於儲存狀態之臨限窗的量、通常隨著增加每 早兀之儲存狀態的數目而增加之臨限窗的範圍而定。視 131567.doc -12- 200915072 此等及其他因素而定,使用壽命循環之數目可低達l〇,〇〇〇 及高達100,000或甚至幾十萬。 f
L 若認為需要追蹤由個別區塊之記憶體單元所經歷之循環 的數目,則可針對每一區塊或針對一區塊群組中之每一者 而保持在每次抹除區塊時遞增之計數,如在上文所提及之 美國專利第5,268,87G號巾所描述。可將料㈣存於每一 區塊中(如彼處所描述),或將此計數連同其他附加資訊而 儲存於-獨立區塊中,如美國專利第6,426,893號中所描 述。除其用於在-區塊達到一最大使用壽命循環計數時將 其映射出系統的用途之外,可更早地將該計數用於隨記憶 體單兀區塊老化而控制抹除及程式化參數。且美國專利第 6,345,0(^號描述了—種在發生—隨機或偽隨機事件時更新 循環數目之-壓縮計數的技術’而非保持循環數目之確切 先前:術描述了若干種選擇待將資料讀出之區塊及 待先占地複製資料之區塊以使得可調平區塊之磨 (I如區由塊之㈣可基於抹除料數或可僅隨機或判定性地 二…循:…)來挑選。另一週期性例行操作係讀 取h除知描,其由掃描在正常主機命令 之眘料細占B . 執订期間未被讀取 之資科組成,且存在可能之資料退化的風 達到不可能藉由ECC演算法方法來校正 險在/、 讀取的程度之前原本不能被偵測到。/不㈣限進行 【發明内容】 通常需要根據某一時間表來番益 必要之-或多個例行操作表::::1行特定命令所不 维持—快閃記憶系統之有 131567.doc 200915072 效操作從而在-較長壽命中準確儲存及掏取資料。此等例 行操作之實例包括磨損調平、資料再新(清除)、廢料收集 及育料合併。較佳在背景中進行此等操作(亦即,當預測 2或已知主機將處於間置歷時足夠時間時)。當主機發送 二置命令時可獲知此情形,且當主機已處於不活動歷時 時間(諸如一毫秒)時可預見此情形。在背景中執行例 Γ 險係將僅部分地完成該例行操作,或在記憶系 ,為於完成背景操作之前自主機接收到—命令之情況下需要 2全中止該例行操作。終止進行中之例行操作會花費一此 時間’且因此延遲新的主機命令之執行。 若^背景中不能足夠頻繁地執行足夠數目之例行操作以 m 系統維持恰當操作,則接著在前台中進行該等例行 機立传繁即虽主機可預備發送一命令但記憶系統告訴主 機其係繁忙的直至6 > , 且主几成所執仃之例行操作時)。當一 命令之接收及/或執杆 飞執仃以此方式而被延遲時,記憶系統之 效月匕因此受到不利影聲。, 憶系統中或將資料自 減慢將資料轉移至記 貝枓自S己憶系統中轉移出來的速率。 在許多命令告& - Θ,實例主機命令包括將資料寫入至記憶 體Τ、自έ己憶<§§读 背5中勃— 卜-\冑料及抹除記憶體單元之區塊。在於 厅、订》订操作期間,記憶系統對此命令之接收將 斷彼操作,1中—& 卩7 I接收將打 作。在前台中心少量延遲用以終止或推遲該操 仃例行操作可避免主機發送此命令直至& 成該操作或至少逵钊甘 < C ρ 7置至几 -完成階段。4完成將被推遲而不必重新開始之某 131567.doc -14- 200915072 為最小化此等不利影響,記憶系統較佳藉由監視主機之 呆作模式來決定是在背景中還是在前台中賤能例行操作之 執行。若主機處於藉由記憶體來快速轉移大量連續資料 (堵如發纽音訊或視訊資料之串流資料寫人或讀取幻的 過程中,則去能或推遲一確定之例行操作。類似地,若主 f #作之間具有非常短的時間延遲間隙的情況下來 發送命令或資料,則此展示主機正以_快速模 因此指示需要推邏或去能任何確定之例行操作。若:; 遲’則將在猶後當資料係非連續或以更少之量轉移時或當 主機延遲間隙增加時賦能該例行操作。 乂此方式,允許s己憶系統以一高速率轉移資料或另外以 :快速模式操作(當使用者料其如此做時)。在 =避免由-例行操作引起之中斷。由於小的 :料轉移操作對執行-些例行操作之需求更高,所以在! 二:二資料轉移期間不允許進行該等例行操作存在报小 的相失(penalty)。 當主機模式允許時,首先賦能在f景中執行例行摔作 ί不允^)’因為此通常對系統效能具有最小不利影響。、作 有上文所論述之限制的背景中足夠快速地完成 摔:讀作,則在處於類似限制下的前台 =乍。此接著提供競爭性利益(亦即執行例行操作之』 間的=操系統以寫入及讀取-些資料的需要)之 -門題之慮因素係可用功率之量。在節省功率係 問通之系統或應用中,出於此原因,可顯著限制或甚至 I31567.doc 200915072 不允許執行例行操作。 以下描述:額外怨樣、優勢及特徵包括於其例示性實例之 田’L ,該描述應結合隨附圖式來理解。 規範、1斤參考之所有專利、專利巾請案、論文、書籍、 ”他公開案、文獻等出於所有目的而以全文引用之 方式併入本文中。就術語之定義或使用在所併入之公開 案、文獻等中之任—者與本文獻之文字之間的任何不一致 f. %
!·生或衝犬的程度而言’該術語在本文獻中之定義或使用應 佔優勢。 【實施方式】 記憶體架構及其操作 起初參看圖1A,一快閃記憶體包括一記憶體單元陣列及 一控制器。在所示之實例中,兩個積體電路設備(晶片 及13包括一記憶體單元陣列15及各種邏輯電路17。邏輯電 路17經由資料、命令及狀態電路而與一獨立晶片上之控制 器1 9介接,且亦將定址、資料轉移及感測以及其他支援提 供至陣列13。記憶體陣列晶片之數目視所提供之儲存容量 而可為自一個晶片至許多晶片。可替代地將控制器及部分 或整個陣列組合至單個積體電路晶片上,但此在當前並非 為經濟之替代方式。一依賴於主機來提供控制器功能的快 閃記憶設備僅僅含有記憶體積體電路設備11及13。 一典型控制器19包括一微處理器21、一主要用以儲存勒 體之唯讀記憶體(ROM)23及一主要用於臨時儲存寫入至記 憶體晶片11及13或自記憶體晶片11及13讀取之使用者資料 131567.doc -16 - 200915072 的緩衝記憶體(RAM)25。電路27與該(等)記憶體陣列晶片 介接,且電路29經由連接31而與—主機介接。在此實例 中,藉由使用專用於計算ECC之電路33來計算該碼而判定 2科之完整性。當將使用者資料自主機轉移至快閃記憶體 陣列以進行儲存時,該電路自資料計算Ecc且將該碼儲存 於錢體中。當稍後自記憶體讀取彼使用者資料時,再次 使其通過電路33 ’該電路33藉由相同演算法來計算咖, 並將彼碼與所計算且與該資料一起儲存之碼相比較。若立 相2,則證實資料之完整性。若其不同,則可視所利用之 特定ECC演算法而定來識別並校正彼等錯誤位元(可達由該 演算法支援之數目)。 圖1A之記憶體的連接31與—主機系統(圖ib中給出其一 實⑷之連接3Γ配合。圖1A之主機與記憶體之間的資料轉 移係經由介面電路35來進行的。一典型主機亦包括-微處 理器37、一用於儲存勒體碼之ROM 39ΜΑΜ 41。並他電 路及子系統43通常視特定主機系統而包括一高容量磁性資 料儲存磁碟驅動器、用於鍵盤之介面電路、一監視器及其 類似物。此等主機之-些實例包括桌上型電腦、膝上型電 腦、手持式電腦、掌上型電腦、個人數位助理(PDA)、 MP3及其他音訊播放器、數位相機、視訊相機、電子遊戲 機、無線及有線電話設備、答錄機、語音記錄器、網路路 由器及其他。 可將圖1A之記憶體實施盔3 & _ ' 貰施為呈可與圖1B之主機可移除地 連接之形式的含有控制器及所有其記憶體陣列電路設備的 131567.doc 200915072 广型封閉記憶卡或快閃驅動器。亦即,配合連接31及31,允 許該卡斷開連接並移至另—主機,或藉由將另—卡連接至 主機來代替。或者,可將記憶體陣列設備u及㈣閉於可 ” 3有控制器及連接31之另一卡電及機械連接之獨立卡 中。作為另一替代,可將圖以之記憶體嵌入於圖m之主 機内’其中永久地形成連接31及31,。在此狀況下,記憶體 通常連同其他組件而含於主機之外殼内。 可在具有各種特定組態之系統中實施本文中之發明性技 術,在圖2至圖6中給出其實例。圖2說明一記憶體陣列之 σΡ刀其中5己憶體單元被分組為若干區塊,每一區塊中 之單元可作為單個抹除操作之部分而通常同時一同抹除。 區塊係最小抹除單位。 圖2之個別記憶體單元區塊之大小可變化,但一種商業 實踐形式在個別區塊中包括單個資料區段。圖3中說明此 ^料Q #又之内谷。使用者資料5 1通常為5 12個位元組。除 使用者資料5 1之外的係附加資料,其包括自使用者資料計 真之ECC 53、與區段資料及/或於其中程式化該區段之區 塊相關的參數55及一自參數55計算之ECC 57以及可能包括 之任何其他附加資料。或者,可自所有使用者資料5丨及參 數55來計算一單個ECC。 參數55可包括一與由區塊經歷之程式化/抹除循環之數 目相關的量’此量在每一循環或某一數目之循環之後更 新。當在一磨損調平演算法中使用此經歷量時,邏輯區塊 位址被規則地重新映射至不同實體區瑰位址以便使所有區 131567.doc -18- 200915072 塊之使用(磨損)均衡。該經歷量之另一用途係根據由不同 區段經歷之循環之數目來改變程式化、讀取及/或抹除之 電壓及其他參數。 參數55亦可包括指派給記憶體單元之儲存狀態中之每一 者的位元值之一指示(通常稱作其,,旋轉,,)。此在磨損調平 中亦具有一有益效應。參數55中亦可包括—或多個指示狀 態之«。亦可將待用於程式化及/或抹除區塊之電壓位 準的指示儲存於參數55内,此等電壓在由區塊經歷之循環 之數目及其他因素改變時被更新。參數55之其他實例包括 區塊内之任何有缺陷單元之識別、映射至此實體區塊中之 區塊的邏輯位址及在主區塊有缺陷之狀況下任一替代性區 塊之位址。用於任-記憶系統中之參數55之特定組合將: 據設計而變化。又’可將一些或全部附加資料健存於專用 於此功能之區塊中,而非儲存於含有使用者資料或附加資 料與之相關之區塊中。 圖4之多區段區塊不同於圖2之單資料區段區塊。一實例 區塊59(仍為最小抹除單位)含有四個頁,該等頁㈡中 之每-者係最小程式化單位。一或多個主機資料區段通常 與至少包括自區段之資料計算之ECC的附加資料一起儲存 於每一頁中,且可呈圖3之資料區段的形式。 重寫整個區塊之資料通常涉及將新資料程式化至已抹除 區塊集區之已抹除區塊中’接著抹除原始區塊及將其置放 於抹除集區中。當更新—區塊之少於所有頁之資料時,通 常將經更新資料儲存於-來自已抹除區塊集區之已抹除區 I31567.doc 19 200915072
塊的頁中’且將剩餘未改變之頁中的資料自原始區塊複製 至新區塊中。接著抹除原始區塊。或者,可將新資料寫入 至與 > 料被更新之區塊相關聯的更新區塊,且使該更新 區塊儘可能長時間地保持開放以接收任何對該區塊之進一 步更新。當必須關閉該更新區塊時,在一廢料收集操作中 將位於該更新區塊及原始區塊中之有效資料複製至一單個 複本區塊中。此等大區塊管理技術通常涉及將經更新資料 寫入至另一區塊之頁中而不自原始區塊移動資料或抹除該 區塊。此導致多個資料頁具有相同邏輯位址。可藉由某種 方便技術(諸如記錄為區段中之欄位或頁附加資料的程式 化時間)來識別最近資料頁。 圑3甲說明另一多 〜. w絕m體單 元陣列實體劃分為兩個或兩個以上平面(其中說明四個平 面〇3)每一平面係記憶體單元之一子陣列,其具有其自 身之資料暫存器、感測放大器、定址解碼器及其類勿 便能夠復大程度上獨立於其他平面來操作。可將所有平面 k供於早個積體電路設備上或提供於多個設備上。圖5之 實例系統中之每一區塊含有16個頁p〇_pi5,每一頁具有— ::或兩個以上之主機資料區段及某附加資;;的: 里〇 、該等平面形成於-單個積體電路 ::晶片上。若形成於多個晶片上,則心SC 者形成於-個晶片上且將另外兩個平面形成於另 或者,一個晶片上之記憶體單元可 憶體平面中之—者…同使用四個此等日日日片。〜等記 131567.doc -20- 200915072 圖6中說明又一記憶體單元配置。每一平面含有大量單 元區塊°為了增加操作之並行性程度,邏輯鏈接不同平面 内之區塊以形成元區塊。圖6中將一個此元區塊說明為由 平面0之區塊3、平面1之區塊1、平面2之區塊1及平面3之 區塊2形成。每一元區塊係邏輯可定址的,且記憶體控制 1§指派並追蹤形成個別元區塊之區塊。主機系統較佳以與 個別元區塊之容量相等的資料單元來與記憶系統介接。圖 6之此邏輯資料區塊61 (例如)係由邏輯區塊位址a)來識 別,該等LBA由控制器映射至構成元區塊之區塊的實體區 塊就碼(PBN)中。該元區塊之所有區塊可一同抹除,且較 佳同時程式化及讀取來自每一區塊之頁。 存在s午多可用以實施上文關於圖2至圖6所描述之記憶體 的不同記憶體陣列架構、組態及特定單元結構。圖7中展 示NAND類型之記憶體陣列的一個區塊。具有串聯連接之 圯憶體單元的大量行定向串連接於電壓vss之共同源“與 =元線BL0-BLN中之一者之間,該等位元線bl〇_bln又與 含有位址解碼器、驅動器、讀取感測放大器及其類似物之 電路67連接。具體言之,一個此串含有串聯連接於位於該 等串之相對末端處之選擇電晶體77與79之間的電荷儲存電 晶體7〇、71·.·...72及74。在此實例中,每—串含有16_ 存電日日體’但其他數目係可能的。字線wlq_wli5延伸跨 越每一串之一個儲存電晶體且連接至含有位址解碼器及^ 線之電壓源驅動器之電路81。線83及84上之電壓一同控制 區塊中之所有串經由其選擇電晶體至電壓源6 5及/或 131567.doc 200915072 線blo-bln的連接。資料及位址來自記憶體控制器。 區塊之電荷儲存電晶體(記憶體單元)之每一列含有一或 夕個頁,每一頁之資料被一同程式化及讀取。將一適當4 ,施加至字線(WL)以用於沿彼字線來程式化或讀取記憶體 單元之資料。亦將恰當之電壓施加至與所關心單元連接之 其位元線(BL)。圖7之電路展示沿一列之所有單元被一同 程式化及讀取,但作為一單位沿一列來程式化及讀取每一 其他單元係普遍的。在此狀況下,使用兩組選擇電晶體 (未圖示)以同時與每一其他單元可操作地連接,每一其他 單元形成一個頁。選擇施加至剩餘字線之電壓以使其各別 儲存電晶體為導電性的。在程式化或讀取一列中之記憶體 單元的過程中,未選擇之列上之先前儲存的電荷位準可受 到干擾,因為施加至位元線之電壓可影響連接至其之串中 的所有單元。 上文所描述之記憶系統類型的一特定架構及其操作大體 說明於圖8令。一記憶體單元陣列213(為易於解釋而大大 簡化)視架構而含有區塊或元區塊(PBN)pi _Pm。將由記憶 系統自主機接收之資料的邏輯位址一同分組至具有個別邏 輯區塊位址(LBA)之邏輯群組或區塊Li-Ln中。亦即,記憶 系統之整個連續邏輯位址空間被劃分為若干位址群組。由 邏輯群組Ll-Ln中之每一者定址之資料的量與每一實體區 塊或元區塊之儲存容量相同。記憶系統控制器包括函數 215,該函數215將群組Li-Ln中之每一者之邏輯位址映射 至實體區塊P1 -Pm中之一不同者中。 131567.doc -22- 200915072 (
可包括比記憶系統位址㈣中所存在之邏輯群組多的士己 憶體之實體區塊。在圖8之實例巾,包括四個此等額外實 體區塊。出於經提供以說明本發明之應用的此簡化播述之 目的’在資料之“㈣將額外區塊中之兩者用作資料更 新區塊,且另外兩個額外區塊構成一抹除區塊集區。通常 可出於各種目的而包括其他額外區塊,在一區塊變得有缺 陷的狀況下’一個額外區塊作為一冗餘區塊。州吏用一 或多個其他區塊來健存由記憶系統控制器用以操作記憶體 之控制資料。通常無特定區塊被指定用於任何特定目的。 實情為,映射215在區塊P1_Pm中之任一者之間規則地改變 個別邏輯群組之資料所映射至之實體區塊。充當更新及抹 除集區區塊之彼等實體區塊亦在記憶系統之操作期間貫穿 實體區塊Pl-pm而遷移。當前指定為更新及抹除集區區塊 之彼等實體區塊的識別碼由控制器來保持。 現將描述由圖8表示之新資料至記憶系統中之寫入。假 定邏輯群組L4之資料映射至實體區塊p(m_2)中。亦假定將 區塊P2指定為更新區塊且被完全抹除並可自由使用。在此 狀況下,當主機命令將資料寫入至群組"内之邏輯位址或 多個連續邏輯位址時,將彼資料寫入至更新區塊p2。此後 使得儲存於區塊P(m_2)中之具有與新資料相同之邏輯位址 的貧料為過時,並由儲存於更新區塊L4中之新資料來代 替。 在一稍後之時間,可將此等資料自P(m_2)及?2區塊合併 (廢料收集)至一單個實體區塊中。此藉由將來自區塊p(m_ 131567.doc •23· 200915072 2)之剩餘有效資料及來自更新區塊p2之新資料寫入至已抹 除£塊集&中之另一區塊(諸如區塊P5)中來實現。接著抹 除區塊P(m-2)及P2以便此後使其充當更新或抹除集區區 塊。或者,可將原始區塊P(m_2)中之剩餘有效資料連同新 資料寫入至區塊P2中(若此係可能的),且接著抹除區塊 P(m-2)。 為最小化對於給定資料儲存容量而言所必要之記憶體陣 列的大小,將額外區塊之數目保持至一最小值。記憶系統 控制器通常允許同時存在一有限數目(在此實例中為兩個) 之更新區塊。此外,通常儘可能地推遲將來自一更新區塊 之資料與來自原始實體區塊之剩餘有效資料合併的廢料收 集,因為梢後可由主機將其他新資料寫入至更新區塊與之 關聯之實體區塊。同一更新區塊接著接收額外資料。由於 廢料收集花費時間且在另一操作因此而被延遲的情況下可 不利地影響記憶系統之效能,所以並非在每次可執行廢料 收集的時候執行廢料收集。將資料自兩個區塊複製至另一 區塊中可花費顯著量之時間,尤其當個別區塊之資料儲存 谷ΐ非常大時(此係趨勢)。因此,當主機命令寫入資料 時,通常發生不存在可用以接收其之自由或空白更新區 塊。接著對一現有更新區塊進行廢料收集(回應於寫入命 々且對於其執行而^係需要的),以便此後能夠自主機接 收新資料。在此狀況下已達到可將廢料收集延遲多久的極 限。 例行操作 131567.doc -24- 200915072 記憶系統之操作大部分係執行其自其所連接至之 統所接收之命令的直接結果。自一 、 ^ 目主機所接收之寫入命令 (例如)含有某些指令,包括伴隨 ^ 7心貝科將被寫入至 =輯位址⑽8之遍则m機所接收之讀取命令 =憶系統將讀取並發送至主機之資料的邏輯位址。另 外存在一典型主機發送至一並 a外^ 一 ,、生屺隐系統之許多其他命 ▽,该“令存在於—快閃記憶系統之操作中。 地1 旦為了能夠執行自主機接收之各種指令或為了能夠有效 广丁該等指令’記憶系統執行包括例行操作之其他功 二;例二喿作係直接回應於一特定主機命令而執行以 技二 令。一實例係回應於資料寫入命令而在- =集區中存在數目不足之用以儲存待回應於該命令而被 寫二之資料的抹除區塊時所起始的廢料收集操作。對於執 IL-命令而言不需要其他例行操作’但時常執行該等 效=、以便在無資料錯誤的情況下維持記憶系統之良好 '月b °此類型之例行操作的實例包括磨損調平、資料再斩 =先占式廢料收集與資料合併。當利用時= 常以規則之時間間隔、以隨機之時間間隔或以 時間間隔起始以調平記憶雜單元之區塊的使用 /凡以便避务_如士 η 1 個或一些區塊在大多數區塊達到壽命終止之 :到其壽命之終止。此延長具有其滿載資料儲存容量之 5己憶體之壽命。
?尤貝料清除操作而言,通常掃描記憶體(以某一確定 之排鞋一次播 甘 A 评掏某一數目之區塊)以讀取及檢查自彼等區 131567.doc -25- 200915072 塊讀取之資料的品質。若發 個£塊中之資料的品質不 t 則通常藉由將_個區塊之警祖舌仓 调L观之資料重寫至來自抹除集區之 另一區塊中來再新彼資料。亦 I 了在正常之主機命令的資料 邊取操作期間發現需要此資料 新’其辛注意到讀取資料 f之錯誤數目係高的。 在需要執行一主機寫入命令 ^ ^ M /v , 之月』先占地執行一廢料收集 成資枓合併操作。舉例而言, 的數目降低至苹一數目以下 _之已抹除區塊 或資料合併操=到需要廢料收集 操作以將-或多個已抹除區塊:=收集或資料合併 通常在背景與 而丄“ ,者中進行對於執行-特定主機命令 某-時間内處於閒置時,在背:::憶系峨為可能在 隨後自主機接收之命中發生此等例行操作’但 並改為執行該主機命令==作之執行接著被中止 背景中進行例行操作而使得;置命令’則可在 之付筏中斷之機會減小。 可藉由記憶系統向主機發 執行例行操作。主機藉而“台中 送任何其他命令來作出’e、'=g㈣被移除之前不發 可預備發送之寫人、讀,、、此則台操作因此由於使主機 憶系統之效能’:因此s及其他命令之執行延遲而影響記 景中執行例行操作,除=當主機未預備發送命令時在背 夠時間内變成閒置以進行此:^何時或是否主機將在足 行對於執行-自主機接收之此在前台中頻繁地執 之特疋命令而言並不需要之例行 131567.doc -26- 200915072 操作以便確保足夠頻繁地執行該等例行操作。有時,亦雨 要儘可能快地執行此例行操作,諸如當藉由對儲存於^ 體區塊中之資料進行常規清除讀取掃描或由於在執行主機 讀取命令時讀取不良品質之資料而發現存在不良品質之資 料時之狀況。因為不良品質之資料可由於繼續操作記情系 、统而進-步被降級’所以等待在背景中執行對該不良品質 之資料的再新較佳不為一所考慮之選項。 、 ,在纟©專利第6,230,233號、第6,985,992號、第 L 6,973,531 號、帛 7,〇35,967 號、帛 7,〇96,313 號及第 7,120’729號中描述了使用個別記憶體單元區塊循環計數的 若干不同磨損調平技術。磨損調平之主要優勢係防止在其 他區塊幾乎未被使用時一些區塊達到其最大循環計數且藉 此不得不被映射出系統。藉由將循環之數目合理均勻地擴 展遍及系統之所有區塊,可以良好效能特性在延長之週期 中維持記憶體之滿載容量。亦可在不維持記憶體區塊循環 , 汁數的情況下執行磨損調平,如美國專利申請公開案第 ^ 2006/〇1〇6972 A1 號中所描述。 在另一種用以磨損調平之方法中,藉由將邏輯至實體區 塊位址轉譯一次遞增一個或一些區塊而跨越記憶體單元陣 列來逐漸遷移區塊之實體區之間的邊界。此描述於美國專 利第7,120,729號中。 記憶體單元之一些區塊比記憶系統之其他區塊經受數目 大得多的抹除及重新程式化循環的主要原因係主機在相對 較少之邏輯區塊位址中連續重寫資料區段。可在記憶系統 I31567.doc -27- 200915072 之許多應用尹發生此情形,其中主機連續更新储存於記憶 體甲之例订資料&某些邏輯區段(諸如槽案配置表㈣丁)及 其類似物)°主機之特定使用亦可導致-些邏輯區塊被重 寫的頻率比具有使用者資料之其他邏輯區塊大得多。回應 於自主機接收—用以將資料寫人至-規定之邏輯區塊位址 的命令,將資料寫入至抹除區塊集區之一些區塊中之一 者。亦即,將邏輯區塊位址重新映射至抹除區塊集區之一 區塊中’而非將資料重寫至相同邏輯區塊位址之原始資料 常駐於其中之相同實體區塊中。含有原始且現在無效之資 料的區塊接著才皮立即#除或作為稍後廢料收集操作之部分 而被抹除,且接著被置放至抹除區塊集區中。當僅一些邏 輯區塊位址中之資料被更新的頻率比其他區塊大得多時, 結果係系統之相對較少之實體區塊以更高之速率循環。出 於上文所給出之原因,當然需要在記憶系統内提供用以在 遇到此非常不均勻之邏輯區塊存取時使實體區塊上之磨損 均衡的能力。 田自'己隐體讀取之資料單元含有一些錯誤時,通常可藉 由使用彼資料單元所攜帶之ECC來校正此等錯誤。但此所 展不的係儲存於該資料單元中之電荷的位準已移出其最初 被程式化至之所界定狀態。因此需要藉由將校正資料重寫 至記憶系統中之他處來清除或再新此等資料。因此可重寫 該等資料而使其電荷位準定位於針對其儲存狀態所界定之 離散電荷位準範圍的中間附近。 ‘在執行主機讀取命令的過程中讀取資料時,且通常由 131567.doc -28- 200915072 於同時*規掃描儲存於一些記憶體區塊中之資料(清除掃 描)(尤-係相對於其他資料而在長時間週期中未由主機讀 取^彼等資料),可谓測到此等不良品質之資料。亦可執 ”:于、掃%則貞測所儲存之電荷位準,該等電荷位準已自 ::⑼、、之中間移位但未足以導致自其錯誤地讀取資 1 —入等移位之電荷位準可在進—步之電荷干擾操作導致 ί 八 移出其所界定範圍且因此導致讀取錯誤資料之前不 時地恢復回至其狀態範圍之中心。 、 在2〇07年3月28日申請之美國專利第5,532,962號、第 1’1/69^49途及第Μ2,835號中以及在美國專利中請案第 ’ 40號及第11/692,829號中進—步描述了清除過程。 _ =以對記I系統之效能影響最小的方式來排程對於執 令而言不需要之前台例行操作。在美國專利 t;::7 006/0161724 A1^^^〇〇6/〇161728 Am 些=行主機命令期間排程此等將執行之操作的某 對賦能例行操作的控制 由於在背景或前台中執行例行操作可影響資料轉移之 統效能,所以此等執行在其對系統效能之 非常大的資:L 例而言,在將檔案之數s 并㊉大的貝枓單疋連續寫 檔案之數目非常大的或!記憶體連續讀取 作而產生之中斷可^早疋0、☆在别台中執行例行操 %資料〜 響效能(尤其當資料係視訊或音 ”tf要或期待高效能時)。不需要在記憶系 131567.doc •29· 200915072 統執行對於記憶體執行當前寫入或讀取命令而言並不需要 的例行操作時導致主機在此過程期間中斷轉移。在延遲過 ,之狀況下’資科緩衝器可能超限運轉且來自流之資料可 匕丢失τ月匕之延遲愈長,則需要配置以提供資料流之無 損耗轉移的資料緩衝器愈大(即使平均讀取或寫入速率足、 ,)。視訊或音訊資料串流在即時進行時尤其不應被中 此中斷可導致中斷人類使用者對該視訊或音訊内容 之欣賞。 《 奋 參看圖9,展示—種操作記憶系統以避免此等中斷 亦適當地執行此等例行操作的例示性方法。⑶處之將執 1 于;:例行操作之註釋開始該過程。此例行操作可為(例如) 磨知调平、資祠·清降、& & ) .,先占式貝料廢料收集或合併中之— 5此等操作中之—者以上, _ ^ ^ ^ 令而言並益必要。由^ 〃對於執仃任何特定主機命 以可注意到例行操作之確定。舉例而古被觸發,所 上次執行磨損調平以來 。17 4 ‘It系統自 發磨損調平操作。類似地,:==塊抹除之後觸 取掃描。接著回應於發始資料清除讀 水平以下的資料之清&至一可接受 me除讀取掃描或正常 始一資料再新操作。或者,當被觸發時,可二 =起 出所有此等例行操作, 1 了在^丁列中列
中之且古异古過程接者在221處進行佇列 中之具有取馬優先權的例行操…J 如何觸發或確定例行操作並不重、輕而言, 操作之特定演算法來判定的 ,係、由用於個別例行 131567.doc -30· 200915072 〜在223^4 ’判定此時是否正執行主機命令。圖9之過程判 =應在前台中(在執行主機命令期間)還是應在背景中(當記 =糸統未執行主機命令或根本無主機命令時)執行221處所 :別之例行操作。在被賦能之後是否或何時實際上執行例 订呆作將通常視用於該例行操作之演算法而定且 關於圖9所描述之賦能過程之部分。 ί
U =子在當前正執行之主機命令,則在225處判定是否存 =導致所確定之㈣操作被去能或推遲(根肋7)而非被 K根據235)的主機㈣之特定模式。通常,在前台中將 不賦能對於執行當前主機命令而 ⑥要之例行操作的執 (進订此將可能不利地影響該命令之執行,諸如導致 二良資料流至或自主機之轉移)。例行操作之前台 仃疋否將具有此效應視主機活動模式的特性而定。 2較佳實施例中,使用主機活動模式之三 二參數以在225處作出決定。第-標準為在執行該命令時 記憶體或自記憶體讀取之資料的長度。許多主機 h之仏頭包括含有藉由該命令而被轉移之資料之長 :::將此數目與一預設臨限值相比較。若高於臨限:: =:!料ΓΓ長的資料轉移,且可能為視訊及,或 二:科流。在此狀況下,不賦能例行操作。若該命令並 時:其:長ΪΓ料,則在接收資料區段或其他資料單元 夺對其進以數以查看總數是否超過㈣臨限值 在主機可藉由單個命令轉移的資料區段之—… 將預設臨限值設定為此數目或大於(例如)此=二 131567.doc 200915072 某數目。 =於在圖9之225處作出決定的第二標準係當前命令令所 A 初始LBA與先則命令(其通常為相同類型之緊接在 j面的命d貝料寫入、資料讀取等”中所規定之結尾LBA 的關係若此等兩個LBA之間不存在間隙,則此指示 該兩個命令正轉移單個長資料流或大檔案。在彼狀況下, 不賦月"*例仃操作之執行。即使當在此等兩個LBA之間存在 某·1間隙:時,此仍可指示存在正轉移之連續長資料流。 在225中,判定此等兩個LBA之間的間隙是否小於 預又數目之LB A。若小於,則去能或推遲例行操作。若並 不小於’則可賦能例行操作。 —通常藉由兩個或兩個以上之更新區塊來操作記憶系統, 資料自兩個或兩個以上之各別標案或資料流被寫入至該兩 個或兩個以上更新區塊中。資料至此等兩個或兩個以上更 :區:的寫入通常係交錯的。在此狀況下,在相同檔案或 ^料/’IL之寫入命令之間而非在用以將不同檔案之資料寫入 至不同更新區塊之命令之間比較Lba。 供在225處使用之第三標準涉及主機之操作速度。此可 以一或多種方式來㈣。與速度相關之一個參數係當記憶 系統否$其繁忙狀態信號時與當主機開始發送另一命令或 資料單元時之間的時間延遲。若該延遲長,則此指示主機 正執行某種減緩其操作之處理。可在此狀況下賦能一例行 操作’因為其執行將可能不減緩主機之操作,或至少將僅 最低程度地減緩主機之操作。但若此延遲短,則此指示主 131567.doc •32. 200915072 機&速如作,且應去能或推遲任何未決之例行操作。因 此可設定一時間臨限值。若實際時間延遲小於該臨限值, 則不賦能例行操作。 “另與速度相關之參數係主機選擇使用之資料轉移速 率。並非所有主機皆以不同資料轉移速率來操作。但對於 彼等以不同資料轉移速率來操作之主機而言,當資料轉移 速率高於-預設臨限值時,不賦能例行操作,因為此指示 主機正快速操作。可將主機時間延遲或資料轉移速度之任 何臨限值設定於伊被极 能夠操作)之間的某處。…又極&(主機在該等極端下 處決定可賦能例行操作,則接著在加處考慮是 子決之具有更高優先權的附加操作。舉例而古,可 能::執行允許執行當前命令所必要之某一附加操二諸 資料合併。在此狀況下,將去能或至少推遲 3亥例仃刼作,直至完成牯w 損調my 另一實例係已確定磨 " 仃、,但依據讀取清除掃描或其他資料讀取來 複製資料變得有必要之情況。當進行讀取清除資 (再新)時,將去能或推遲磨損調平操作。 若在233處判定衫在當前正執行之主機命令,則 :顧主機活動之特性’以判定是否可在背景中在 =主機命令之間執行所確定之例行操作二 ΓΓ可能不同,但其類似於上文所描…二 節,除了將該等標準應用於最近執行之命 广 存在當前正執行之主機命令 (因為不 )右最近命令(例如)指示正轉 131567.doc •33- 200915072 移連續資料流或主機正 在-處作出不應在彼時賦::::=模式操作,則 225處對前台操作之效應。另—標二=在其類似於 係單獨戋妹人, 千1再並不存在於223處) 于早獨次—其他主機模式標準 兔) =非活動之時間量以作出決定。舉例而 操作除非主機之前剛好以極端快速模式操作。
除了在237處去能或推遲前台中之例行操作之外 :地=所確定之操作以展開系統效能上之負擔。舉例而 二=行資料寫入命令期間,可在將每一叢集或其他資 早疋寫入至記憶系統中之後賦能全部或-部分操作。可 將此決定為225之過程的部分。舉例而言,可使用主機回 應於由記憶系統對其繁忙狀態信號之否定的時間延遲來決 定應同時賦能所確定之例行操作的量以供執行。此執行通 常涉及將多個資料頁自一個記憶體單元區塊轉移至另一記 憶體單元區塊或在兩個區塊之間交換頁,因此可以連續時 間來轉移該等頁之小於所有之頁,直至所有頁得以轉移。 隨著主機之延遲減小,經賦能以同時執行之部分例行操作 減少直至達到操作根本未被賦能之點。 用於在237處推遲或去能例行操作之確定的特定技術之 實例係主要關於上文所提及之美國專利申請公開案第 2006/0161724 A1號之圖14A、圖14B及圖14C以及上文所提 及之美國專利申請公開案第2006/016 1728 A1號之圖13A、 圖13B及圖13C來描述的。 131567.doc -34· 200915072 在圖9中所說明之 -定意謂該操作之執行 例仃刼作在235處之賦能不 過度影響記憶之後立㈣始。當可在不 之過程所進行之摔作❹執行—例行操作時,射 能例行操作之執行,"::間間隔。在此等週期期間賦 關於在例行操作之執==將執行哪-操作。此外, 何時將執行所識別之::::Γ何特定時間期間叫 決定。 !仃刼作由該所識別之例行操作自身 2 3 1:在上Λ所广述之標準中的任-者的基礎上作出2 2 5及 处之、疋(是否賦能例行操作)而不考慮其他標準。舉例 料导声I藉由僅分別查看當前命令或緊接之先前命令的資 广或僅查看一先前命令之其開始lba與最後ΜΑ之間 的間隙來作出衫。“,較佳利用上文所描述之標準中 之兩者或兩者以上來作出決定。在彼狀況下,若該兩個或 兩個^上標準中之任_者認可主機操作中之指示不應賦能 例仃#作的模式’則較佳使得該例行操作被去能或推遲。 圖10中給出使用多個標準用於作出225之決定之一實 例。在241處,以上文所描述之方式,將當前命令之第一 先前命令之最後LBA相比較。若此比較展示兩個命 7之貝料係連續的,則處理進行至圖9之237,其中去能或 推遲所確定之例行操作。 但右在24 1處並未判定該等資料係連續的,則量測回應 於虽毗主機命令而被轉移之資料的長度,並將其與一臨限 值N相比較。在圖1〇之243處,自主機命令讀取資料之長 131567.doc •35· 200915072 度,且在247處將此長度與臨限值N相比較。若長度超過 二,則此指示長或連續之資料轉移,因此去能或推遲例行 操作(圖9之237)。但若該命令並未識別到該長度之資料, 則在245處對所轉移之資料單元進行計數直至達到臨限資 料長度N,在此狀況下,去能或推遲例行操作。 /旦若資料之長度由243、245及247判定為N或更小’則執 行-第三測試’如圖1()之249處所指示。在249處檢查主機
之延遲或操作速度的-或多個態樣,並將其與-或多個各 別臨限值相比較,如上文所描述。若主機正以高速率來操 作,則該過程進行至237(圖9μχ去能或推朗確定之例行 刼作’但若主機正以低速率來操作,則該過程進行至出 以賦能該操作之執行。 儘官圖10中展示了二個、、目丨丨4 m 丁了 一個測5式之使用’但可消除該等測試 任—者且仍提供良好之系統管理。此外,可添加額外 =特定言之,在249處,可獨立檢查兩個或兩個以上 主機疋時參數以查看是否^ 疋否而要去“推遲例行操作。若該 寺疋時參數中之任一者指 p ^ #知主機朝一可能範圍之快速跬 則去能或推遲例行操作。"當在上文論述中提及 ;:命令之特性時之外,可進行-類似過程以在圖9之231 處作出改為使用腎拉力兑 之31 用緊接在則面之命令的特性的決定。 圖11及圖12中展示主機及記 a ^〇己隐系統執行主機資料窝入今 7之操作的實料序圖以 β ,.„ 入0抱述之一些内交〇固 11展示由記憶系統自主機接 圖 > 钱收之弟一命令259,技基* / 接收並被寫入至主機之緩接者為經 α Κ體中的兩個資料單元% 1 131567.doc -36 - 200915072 及263。在緊接在接收到該等資料單元中之每一者之後的 時間t4及t7確定一記憶體繁忙狀態信號265,且維持該信號 265直至分別在時間267及269期間將該等資料單元中之每 一者寫入至非揮發性記憶體中。當確定繁忙狀態信號時, 主機並不傳輸任何資料或命令。緊接在資料寫入267之 後’在時間t5否定繁忙狀態信號265以使得主機能夠將更 多資料或另一命令傳輸至記憶系統。賦能例行操作以用於 在時間271(在此說明性實例中,該時間271緊接在資料寫 入週期269之後)期間在前台中執行’因此在時間t9之前並 未否定記憶體繁忙狀態信號265。 圖Π之曲線2 7 3指示何時已判定去能或推遲(低曲線)一例 行操作之賦能(圖9之237)或賦能(高曲線)此操作(圖9之 235)。在此狀況下,當記憶系統自主機接收到命令時,將 例行操作展示為在時間1丨被賦能。若可應用對於此命令而 言較早之可應用以作出彼選擇的標準,則將為此狀況。若 該命令含有伴隨該命令之該長度的資料’且此實例之僅兩 個資料單元降低至設定臨限值以下,則彼測試(圖1〇之241) 導致不去能或推遲該操作。亦可在此較早階段將開始lba 與此時之前的先前資料寫入命令的最後LBa相比較,以便 應用彼標準(圖10之243、245及247)。但時間tl過早以致於 在執行命令259時不能量測主機之回應中的任何延遲(圖1〇 之249) ’因此在圖u之此實例中,不使用主機定時標準。 已自圖10之24!及243/245/247的標準作出圖"之時間"處 之可賦能一例行操作的決定。 131567.doc -37- 200915072 此當在圖10之243處自命令自身讀取資料長度時,對於一 些主機而言存在該命令可在轉移資料之彼長度之前被中止 的可此性。可藉由檢查在該命令之執行快結束時所轉移之 :資料的實際長度來考慮此可能性。若已由於特定命令之長 貧科長度而去能或推遲一例行操作,則此添加之檢查可在 偵測到該命令之較早終止的情況下使得撤銷該決定。在完 成該主機命令之執行之前,可接著改為賦能該例行操作。 县卜纟j狀況τ’主機發送—具有—可擴充或非常 時2 =度的命令,且接著在稍後當所有資料已被轉移 標準,因為其並不可=可不將資料長度用作- 的卜古 +了罪5戈者’可推遲是否賦能例行操作 ,、疋直至接收到停止命令,日^ ^ ^ ^ ^ ^ ^ 料的實際量係已知I若彼資料:藉由該命令所轉移之貧 右彼貝科罝小於設定臨限值,則可 賦此例行操作,使得可在主機 例行操作。 之執仃結束之如執行該 t二自:ΓΓΓ意到,儘管例行操作之執行係在時間 被H但直至時間财執行例行操作。此係 。令259所接收之最後:## 之後但在已接收到新命令275之/非揮發性記憶體中 操作一先將藉由當前Si命例行 冩入至非揮發性記憶體中 負付 之執行。但可替代地更早執能快地完成主機命令 寫入時間間隔267之後執行一第二^操作。又’可緊接在 效能要求准許該第二例行操作)。緊:操作(若記憶系統之 贫接在一記憶體寫入之 131567.doc •38· 200915072 y執行f列行操作通常最有效,但此亦非一 中所描述之操作技術所完成之主要事情传界:要求。本文 行操作之時 界疋可執行-例 〈吁間由’但管理此等界定窗内之 由:行操作自身或其他系統勃體來決定。$序的細節 當將主機定時用作標準(圖1G之249)中之—“ 量測日容或多者時, 推遲於圖11中)並將其用於決定是否去能或 ^該時=1 疋否賦能例行操作。—個此時間間隔係〜 否定之省n °糸主機在&己憶體繁忙狀態信號在時間t5被 之後開始發送資料單元263所花費的時間 間隔短(在某一設定臨限值以下),則 此㈣ 速率操作以將資料轉移至記:、機係以-高 間將不執行例行操作。伸料門 ^速度之轉移期 該打間間隔比臨限值長,則可 1 =並不操作得特別快,因此無需推遲或去能例行操作 以相方式使用之另—時間間隔係時間間隔队训。 〜、主:在繁忙狀態信號265於時間t9被否定之後、在執 ^先别命令之後發送另—命令所花費的時間。當在—可 :耗圍之短端(在一設定臨限值以下)時,此展示主機正以 快速模式操作’因此不執行例行操作。 I使用之另—定時參數係由主機選擇之資料轉移速率。 較南速率指示^應賦能例行操作,因為此將可能減慢資料 :移。可在圖10之處理249中單獨使用此等定時參數中之 者或可獨立地分析兩個或兩個以上定時參數。 圖12係展示―不同實例操作之時序圖。在此狀況下,貫 I31567.doc -39- 200915072 穿一第一主機命令277之執行而去能或推遲例行操作在前 台中之執行,因為主機模式滿足圖9之奶的不執行例行操 作的標準。但在時間t7(當完点勃a八 ’、 ^ (几成執仃命令277時)與時間t9(此
後之預设時間)之間的主播X 機不錢之過長延遲(諸如-毫秒) 係圖9中之231中的標準中之一 者,其可用以決定可賦能一 例行操作以在背”執行(即使用以執行命令277之主機活 動的特性可另外決定不應賦 ' 唧此具之執仃)。一例行賦能作 號接著在時間t9變得具有活動 ° I王五在已執仃例行掉作 283之後的111返回至非活知 m%統發送之繁忙 信號285在於時間t7完成執 ’、 ^ ^ , ^ f 7 277之後的某一時間内保 1 時間週期期間,記憶系統實際上選擇賦能 =中而非在前"執行例行操作。此意 订操作283期間自主機接收—命令,在此狀 不終止其執行,以使得可執行該主機命令。將不仔 結束語 儘管已描述了若+ 干特疋實施例及其可能變化,但將理 ,本發明享有在附加申$ 的權利。 甲-專利乾圍之完整料内受保護 【圖式簡單說明】 圓1A及圖1B分別係— 系統的方_ ; ⑽作之非揮發性記憶體及主機 =說明圖1A之記憶體陣列之第—實例組織; 記恃體I::實例主W料區段,其具有如儲存於圖1A之 隐體陣列中的附加資料; 131567.doc •40- 200915072 圖4說明圖i a之記憶體陣列 第—實例組織,· 圖5說明圓〗a之記憶體陣列 一 禾一貫例組織; 圖6展示圖1 a之記憶體陣列之笼= 弟二實例組織的擴展;
圖7係在一特定組態中圖1A 之陣列之一記憶體單元群 的電路圖; 圖8說明圖1A之記憶體陣列之—實例組織及使用,· 圖9係一操作流程圖,其說明先前所說明之記憶系統之 操作,該操作將賦能例行操作之執行; 圖10係一操作流程圖,其提供在圖9之步驟中之—者内 的處理之一實例; 圖11係先前所說明之記憶系統之第/實例操作的時序 圖,其說明圖9之過程;及 圖12係先前所說明之記憶系統之第二實例操作的時序 圖,其說明圖9之過程。 【主要元件符號說明】 1 記憶體晶片/記憶體積體電路設備/記憶 體陣列設備 3 記憶體晶片/記憶體積體電路設備/記憶 體陣列設備 5 記憶體單元陣列 7 邏輯電路 9 控制器 1 微處理器 3 唯讀記憶體(ROM) 131567.doc -41 - 200915072 25 緩衝記憶體(RAM) 27 電路 29 電路 31 連接 31' 連接 33 電路 35 介面電路 37 微處理器 39 ROM 41 RAM 43 其他電路及子系統 51 使用者資料 53 ECC 55 參數 57 ECC 59 區塊 61 邏輯資料區塊 65 共同源 67 電路 70 電荷儲存電晶體 71 電荷儲存電晶體 72 電荷儲存電晶體 74 電荷儲存電晶體 77 選擇電晶體 131567.doc -42- 200915072 79 選擇電晶體 81 電路 83 線 84 線 213 記憶體單元陣列 215 函數 259 第一命令 261 資料單元 263 資料單元 265 記憶體繁忙狀態信號 267 時間 269 時間 271 時間 273 曲線 275 命令 277 第一主機命令 283 例行操作 285 繁忙信號 BLO-BLN 位元線 Ll-Ln 邏輯群組 PO-Pm 實體區塊 P1-P15 頁 WL0-WL15 字線 131567.doc -43 -

Claims (1)

  1. 200915072 十、申請專利範圍·· 化之非揮發性記憶系統之方法, L 種操作—可重新程式 其包含: 自-主機接收命令並執行該等所接收之命令, 至少關於該等所接收之命令來監視該主機之活動模 工、及 -硪別一第一主機活動模式時,賦能執行一例行
    該例行操作係對於執行自該主機接收之該等命a 中之一者而言不需要的類型,或 7 不賦能該例行操作之執行 當識別-不同於該第-模式之第二主機活動模式時, 2. 如w求項丨之方法’其另外包含回應於該第—主機活動 核式被識別,執行該經賦能之例行操作之至少一部分。 3. 如請求項2之方法’其中執行該經賦能之例行操作包括 自該記憶系統之-位置讀取一資料區塊,且此後將該所 讀取之資料寫入至該記憶系統之另一位置中。 4’如請求項!之方法’其t自—主機接收命令並執行該等 所接收之命令包括接收並執行(1) 一寫入命令,以將藉由 該命令而自該主機接收之資料寫入至由該寫入命令所規 定之該記憶體之邏輯位址中;或(2)一讀取命令,以自由 該讀取命令所規定之該記憶體之邏輯位址讀取資料並將 該所讀取之資料發送至該主機。 5· ^請求項4之方法,其中該第二主機活動模式包括由該 等命令中之一者所規定之超過一預設數目之資料單元的 131567.doc 200915072 一定數目之資料單元,且其中該第一主機活動模式包括 數目小於該預設數目之此等資料單元。 6·如請求項4之方法’其中該第一主機活動模式包括在由 該等命令中之一當前命令所規定之資料之一開始邏輯位 址與由一先前命令所規定之資料之一結束邏輯位址之間 的一差異之一範圍’其超過邏輯位址之一預設數目,且 其中該第二主機活動模式包括小於該預設數目之該差 異。
    7. 如清求項1之方法’其中該第一主機活動模式包括在該 記憶系統向該主機指示該記憶系統不繁忙之後由該主機 作出回應所花費的一持續時間,其超過一預設持續時 間’且其中該第二主機活動模式包括小於該預設持續時 間之該持續時間。 8. 如请求項丨至7中任一項之方法,其中當一繁忙狀態訊息 由"玄。己憶系統發送至該主機時,識別該第一主機活動模 式或s亥第二主機活動模式。 9. 如π求項1至7中任一項之方法,其中當無繁忙狀態訊息 由4圯憶系統發送至該主機時,識別該第一主機活動模 式或該第二主機活動模式。 1 〇 .〆種操作一可會無叙斗. 室新程式化之非揮發性記憶系統之方法, 其包含: / “可時已確定對於執行一自一主機接收之命令 不需要的一例行操作; 判定該主機之活動的至少一參數;及 131567.doc 200915072 右違判定至少一參數滿足至少—預定條 該例行操作之執行,但 〃 丨不賦能 若該匈定至少_ i奴 /數滿足該預定條件,則賦能哕例 盯#作以供執行。 此孩例 11 ·如請求項〗0夕古 行時„ ,/、另外包含當賦能該例行操作之執 執行該例行操作,同時該記憶系統 才曰示發送至該主機,# ,、k狀態 △如請求項1G之方》^ 執行該例行操作。 、另外包含當賦㈣例行操作之執 執行該例行操作,同時該記憶“不將 ",如請求項!。之方At 中執行該例行操作。 員之方法,其中該例行操作包括將資料自該記 統中之-位置重寫至該記憶系統中之另一位置。 月长項13之方,i: ’其中該例行操作資料重寫係'作為— 磨損調平或清除例行操作之部分來執行的。 15·如請求項1()之方法,其中㈣該主機之活動之至少一參 數包括在由該記憶系統執行自該主機接收之該等命令中 之一者期間監視該至少一參數。 16.如請求们〇之方法,其中該至少—參數係由於執行一單 個主機命令而被轉移至該記憶體中或自該記憶體中轉移 出來的資料之邏輯單元之—數目的—計數,該至少一預 定條件包括資料單S之-臨限數目,其中當該計數小於 該臨限數目時,該-參數滿足該一條件,且當計數大於 該臨限數目時,該一參數不滿足該一條件。 17.如請求項10之方法,其中該至少一參數係回應於自該主 131567.doc 200915072 機接收之該命令而被轉移之資料之一開始與在執行一自 該主機接收之先前命令期間所轉移之資料之一結束之間 的一邏輯位址差異,該至少一預定條件包括一預定位址 差異,其中當該邏輯位址差異大於該預定位址差異時, 該一參數滿足該一條件,且當該邏輯位址差異大於該預 疋位址差異時,該一參數不滿足該一條件。 18· U項15之方法’其中該至少一參數包括在該記憶系 統向该主機指示該記憶系統不繁忙之後由該主機回應於 °玄δ己憶系統之-持續時間’該至少-預定條件包括一預 疋夺間祛量,其中當該持續時間小於該預定時間增量 夺該參數滿足5亥一預定條件,且當該持續時間大於 該預定時間增量時,該—參數不滿足該—預定條件。 19 · 士 Μ求項丨i之方法,其中該例行操作包括磨損調平。 20. 如凊求項丨丨之方法,其中該例行操作包括清除。 21. 士 μ求項丨2之方法,其中該例行操作包括磨損調平。 22. 如凊求項12之方法,其中該例行操作包括清除。 23_如明求項1〇之方法,其中該當前接收之命令係個別地包 括資料讀取及資料寫入之一命令群組中的一者。 24.如„月求項23之方法,其中該命令群組另外包括抹除該記 憶體之界定區塊。 種°己系統,其經調適以與—主機系統可移除地連 接’其包含: 可重新程式化之非揮發性記憶體單元之一陣列,該等 非揮發性記憶體單元被組織為記憶體單元區塊,其中該 131567.doc 200915072 等個別區塊之該等記憶體單元可同時抹除, -包括-微處理器之控制器,其操作以: 而5不需要的例行操作; 時已確定-對於執行-自-主機接收之命令 不需尊66么丨仁· 4a a . 判定該主機之活動的至少一參數;及 右㈣定至少—參數滿足至少—預定條件,則 月b 4例行操作之執行,但 賦 右邊判定至少一參數不滿足該預 例行操作以供執行。 該 記⑽統’其中當賦能該例行操作之執行 干發^制&另外操作以在該記憶系統將—繁忙狀態指 ==機時執行該例行操作之至少-部分,藉此 在引〇中執行該例行操作。 時,月記㈣統,其中當賦能該例行操作之執行 浐干發:制器另外%作以在該記憶系統不將-繁忙狀態 ==至該主機時執行該例行操作,藉此在背景中執 订4例仃操作。 28.:=項25之記憶系統,其中該例行操作包括將資料自 置。 重寫至該記憶系統中之另一位 2Τ:Γ7之記憶系統’其中該例行操作資料重寫係作 3〇士2 或清除例行操作之部分來執行的。 .=:25之記憶系統,其中判定該主機之活動之至少 包括在由該記憶系統執行自該主機接收之該等命 131567.doc 200915072 令:之—者期間監視該至少一參數。 3 1 ·如凊求項25之記怜系 丨心' 系統,其中該至少—夂赵後 -單個主機命令而祜⑭ 心纟數係由於執行 ^ 破轉移至該記憶體中或自該記恃體φ 轉移出來的資料之遇 隐體中 乙邏輯早兀之一數目的一計數, 一預定條件包括資料置—^ 故 μ至少 、、+早7〇之一 限數目,其中當 小於該臨限數目時 大於該臨限數目時,該一參數不滿足該一條件。數 32·如請求項25之記憶系統’其中該至少—參數係回應於自 該主機接收之該命令而被轉移之資料之—開始與在執行 一自該主機接收之先前命令期間所轉移之資料之一結束 之間的—邏輯位址差異,該至少-職條件包括-預定 位址差異’其中當該邏輯位址差異大於該敎位址差異 時,該一參數滿足該一條件,且當該邏輯位址差異大於 該預定位址差異時’該一參數不滿足該一條件。 33.如請求項30之記憶系統,其中該至少一參數包括在該記 憶系統向該主機指示該§己憶糸統不繁忙之後由該主機回 應於該記憶系統之一持續時間’該至少一預定條件包括 一預定時間增量,其中當該持續時間小於該預定時間增 量時,該一參數滿足該一預定條件,且當該持續時間大 於該預定時間增量時,該一參數不滿足該一預定條件。 34.如請求項26之記憶系統,其中該例行操作包括磨損調 平。 3 5 ·如請求項26之記憶系統’其中該例行操作包括清除。 3 6.如請求項27之記憶系統’其中該例行操作包括磨損調 131567.doc 200915072 平。 3 7.如請求項27之記憶系統,其中該例行操作包括清除。 38. 如請求項25之記憶系統,其中該當前接收之命令係個別 地包括資料讀取及資料寫入之一命令群組中的一者。 39. 如請求項38之記憶系統,其中該命令群組另外包括抹除 該記憶體之界定區塊。 f 131567.doc
TW97119213A 2007-05-24 2008-05-23 Managing housekeeping operations in flash memory TW200915072A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/753,491 US20080294814A1 (en) 2007-05-24 2007-05-24 Flash Memory System with Management of Housekeeping Operations
US11/753,463 US20080294813A1 (en) 2007-05-24 2007-05-24 Managing Housekeeping Operations in Flash Memory

Publications (1)

Publication Number Publication Date
TW200915072A true TW200915072A (en) 2009-04-01

Family

ID=39831949

Family Applications (1)

Application Number Title Priority Date Filing Date
TW97119213A TW200915072A (en) 2007-05-24 2008-05-23 Managing housekeeping operations in flash memory

Country Status (2)

Country Link
TW (1) TW200915072A (zh)
WO (1) WO2008147752A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI403897B (zh) * 2009-07-30 2013-08-01 Silicon Motion Inc 記憶裝置及其資料管理方法
TWI421764B (zh) * 2010-10-15 2014-01-01 Inventec Corp 在中斷管理模式下顯示畫面的方法
TWI459197B (zh) * 2011-04-21 2014-11-01 Phison Electronics Corp 資料寫入方法、記憶體控制器與記憶體儲存裝置
TWI561988B (en) * 2012-09-20 2016-12-11 Silicon Motion Inc Data storage device and flash memory control method

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100287217A1 (en) * 2009-04-08 2010-11-11 Google Inc. Host control of background garbage collection in a data storage device
US20100262773A1 (en) 2009-04-08 2010-10-14 Google Inc. Data striping in a flash memory data storage device
US8433845B2 (en) 2009-04-08 2013-04-30 Google Inc. Data storage device which serializes memory device ready/busy signals
WO2012106362A2 (en) 2011-01-31 2012-08-09 Fusion-Io, Inc. Apparatus, system, and method for managing eviction of data
US9767032B2 (en) 2012-01-12 2017-09-19 Sandisk Technologies Llc Systems and methods for cache endurance
KR20160024962A (ko) * 2013-06-25 2016-03-07 마이크론 테크놀로지, 인크. 온-디맨드 블록 관리
US10019352B2 (en) 2013-10-18 2018-07-10 Sandisk Technologies Llc Systems and methods for adaptive reserve storage
US11199995B2 (en) * 2019-11-19 2021-12-14 Micron Technology, Inc. Time to live for load commands

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005029311A1 (ja) * 2003-09-18 2005-03-31 Matsushita Electric Industrial Co., Ltd. 半導体メモリカード、半導体メモリ制御装置及び半導体メモリ制御方法
US7139864B2 (en) * 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
US7315917B2 (en) * 2005-01-20 2008-01-01 Sandisk Corporation Scheduling of housekeeping operations in flash memory systems
KR100706808B1 (ko) * 2006-02-03 2007-04-12 삼성전자주식회사 쓰기 버퍼로서 동작하는 불 휘발성 메모리를 구비한 데이터저장 장치 및 그것의 블록 회수 방법

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI403897B (zh) * 2009-07-30 2013-08-01 Silicon Motion Inc 記憶裝置及其資料管理方法
TWI421764B (zh) * 2010-10-15 2014-01-01 Inventec Corp 在中斷管理模式下顯示畫面的方法
TWI459197B (zh) * 2011-04-21 2014-11-01 Phison Electronics Corp 資料寫入方法、記憶體控制器與記憶體儲存裝置
TWI561988B (en) * 2012-09-20 2016-12-11 Silicon Motion Inc Data storage device and flash memory control method
US9690695B2 (en) 2012-09-20 2017-06-27 Silicon Motion, Inc. Data storage device and flash memory control method thereof

Also Published As

Publication number Publication date
WO2008147752A1 (en) 2008-12-04

Similar Documents

Publication Publication Date Title
TW200915072A (en) Managing housekeeping operations in flash memory
US20080294813A1 (en) Managing Housekeeping Operations in Flash Memory
US11243878B2 (en) Simultaneous garbage collection of multiple source blocks
US20080294814A1 (en) Flash Memory System with Management of Housekeeping Operations
KR101304254B1 (ko) 플래시 메모리 시스템들에서 하우스키핑 동작들의 스케쥴링
CN100547570C (zh) 一种操作可擦除且可再编程的非易失性存储器系统的方法
JP4643711B2 (ja) 状況依存メモリ性能
CN1902599B (zh) 将数据更新到非易失性存储器系统和操作该系统的方法
TWI393140B (zh) 在一非揮發性記憶體中儲存資料之方法
JP2008524747A (ja) オンチップ不揮発性メモリ書き込みキャッシュを使用するシステムおよび方法
CN107608908A (zh) 用于数据储存装置的磨损平均方法
TW201216059A (en) Pre-emptive garbage collection of memory blocks
US12333152B2 (en) Storage device
CN112130749B (zh) 数据储存装置以及非挥发式存储器控制方法
US20200097215A1 (en) Adaptive solid state device management based on data expiration time
JP2009503744A (ja) 予定再生操作を伴う不揮発性メモリ
US11036414B2 (en) Data storage device and control method for non-volatile memory with high-efficiency garbage collection
CN103425586B (zh) 储存单元管理方法、存储器控制器与存储器储存装置