TWI394170B - 連結表的回復方法 - Google Patents

連結表的回復方法 Download PDF

Info

Publication number
TWI394170B
TWI394170B TW097147080A TW97147080A TWI394170B TW I394170 B TWI394170 B TW I394170B TW 097147080 A TW097147080 A TW 097147080A TW 97147080 A TW97147080 A TW 97147080A TW I394170 B TWI394170 B TW I394170B
Authority
TW
Taiwan
Prior art keywords
memory
memory block
block
link table
last
Prior art date
Application number
TW097147080A
Other languages
English (en)
Other versions
TW201015564A (en
Inventor
Chia Hsin Chen
Original Assignee
Silicon Motion Inc
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 Silicon Motion Inc filed Critical Silicon Motion Inc
Publication of TW201015564A publication Critical patent/TW201015564A/zh
Application granted granted Critical
Publication of TWI394170B publication Critical patent/TWI394170B/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
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1068Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices in sector programmable memories, e.g. flash disk
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/70Masking faults in memories by using spares or by reconfiguring
    • G11C29/76Masking faults in memories by using spares or by reconfiguring using address translation or modifications
    • 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
    • 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

Description

連結表的回復方法
本發明為一種連結表的回復方法,特別是一種適用於快閃記憶體在突然的電力失效之後的連結表的回復方法。
快閃記憶體為一種非揮發性記憶體,可以被電性的抹除(erase)資料或是儲存資料。快閃記憶體主要被使用在記憶卡與USB快閃記憶碟,用以在電腦與其他數位裝置之間儲存並傳送資料。快閃記憶體的成本遠低於電氣可擦拭可程式化唯讀記憶體(Electrically-Erasable Programmable Read-Only Memory,EEPROM),因此成了記憶裝置的主流。快閃記憶體的應用泛及於個人數位助理(personal digital assistants,PDA)、筆記型電腦、數位音訊播放器、數位相機以及行動電話。
一般來說,快閃記憶體受控於一快閃記憶體控制器。但是,一旦快閃記憶體控制器再讀取快閃記憶體時發生電力失效或是斷電時,快閃記憶體中受到中斷的記憶區塊或記憶頁的內容,可能會在快閃記憶再次被供電後發生錯誤。這是因為快閃記憶體中被影響的部分位元是正常,但部分位元因為電力失效的原因而出現不正常的情形。因此,如何改善快閃記憶體的管理系統,可以處理快閃記憶體因為電力中斷產生的問題可以獲得解決是一極欲被達成的目標。
本發明的一實施例提供一種連結表的回復方法,適用於具有複數個記憶區塊的快閃記憶體,該方法包括自該等記憶區塊中選擇一第一記憶區塊;選擇該第一記憶區塊中包含資料的一最後記憶頁;檢查該最後記憶頁是否有錯誤發生;若該第一記憶區塊的該最後記憶頁有錯誤發生,移動該第一記憶區塊中正確的資料至複數個預備記憶區塊中的一個預備記憶區塊;更新該快閃記憶體的一連結表。
本發明的另一實施例提供一種連結表的回復方法,適用於具有複數個記憶區塊的快閃記憶體在突然的電力失效之後,該方法包括選擇一最後存取的記憶區塊;檢查該最後存取的記憶區塊中的複數個記憶頁,並判斷該最後存取的記憶區塊是否有錯誤;當偵測到該最後存取的記憶區塊的一第一記憶頁有出現錯誤時,將該最後存取的記憶區塊中正確的資料搬移到一預備記憶區塊中;更新該快閃記憶體的一連結表。
第1圖為一快閃記憶裝置的方塊示意圖。快閃記憶裝置10包括一記憶體控制器11以及一非揮發性快閃記憶體12。記憶體控制器11包括一介面邏輯13、一揮發性緩衝器14、一控制邏輯16以及微處理器15,其中介面邏輯13傳送資料至一主控裝置(圖上未繪出)或接收來自主控裝置的資料。揮發性緩衝器14用以暫存寫入非揮發性快閃記憶體12的資料或從非揮發性快閃記憶體12讀取的資料。 介面邏輯13、揮發性緩衝器14以及控制邏輯16皆受控於微處理器15。非揮發性快閃記憶體12包含了複數個記憶區塊(block),標示為FBLK 0、FBLK 1...FBLK(N-1),而且資料只能在記憶區塊被抹寫後才能被覆寫。換言之,資料只可以被寫入空的記憶區塊。
第2圖為根據本發明的一快閃記憶體的連結表回復方法的一實施例的流程圖。本方法著重快閃記憶體在被存取時發生電力中斷情形後的快閃記憶體的連結表回復方法。要注意的是,當快閃記憶體在被存取時發生電力中斷情形的話,因為快閃記憶體中同一時間內只會有一個記憶區塊被存取,因此可能會造成錯誤的部分只會出現在一個記憶區塊的某一個記憶頁(page)。但是也有可能在該記憶區塊中最後存取的記憶頁的相鄰的複數個記憶頁發生錯誤檢查及校正(Error Checking and Correcting,ECC)錯誤。快閃記憶體包含了複數個記憶區塊,且每一記憶區塊包含了複數個記憶頁。在步驟S201中,快閃記憶體控制器選擇該快閃記憶體的第一個記憶區塊。在步驟S202中,快閃記憶體控制器判斷被選擇的記憶區塊是否是最後一個記憶區塊,若是,則跳到步驟S210,若不是,則執行步驟S203。在步驟S203中,快閃記憶體控制器讀取被選擇的記憶區塊的預備區(spare region),用以判斷被選擇的記憶區塊的類型。快閃記憶體的每一記憶區塊包含了複數個記憶頁,且每一個記憶頁都包含了一預備區。預備區中儲存了ECC檢查位元(ECC parity)、韌體參數以及被選擇的記憶區塊 的識別碼(ID)。請參考第3圖,第3圖為根據本發明的一記憶區塊的實施例的結構示意圖。在本實施例中,一個記憶區塊包含了64個記憶頁,每一個記憶頁包括一資料區以及一預備區。預備區也被稱做是管理資料(overhead data),用以儲存記憶區塊相關的參數。第3圖所示的結構只是一實施例的說明,而記憶區塊的實際結構會依據快閃記憶體的標準或規格而有不同的變化。
在步驟S204中,快閃記憶體控制器根據預備區中的資料判斷被選擇的記憶區塊是否是第一型的記憶區塊。第一型的記憶區塊是用以儲存資料,如一檔案配置表(FAT)記憶區塊、一母記憶區塊(mother block)、一資料記憶區塊、一子記憶區塊(child block)、一抹除資訊記憶區塊、一連結記憶區塊或一暫存記憶區塊。如果被選擇的區塊是屬於第一型的記憶區塊,快閃記憶體控制器則執行步驟S205。如果被選擇的區塊不是屬於第一型的記憶區塊,快閃記憶體控制器執行步驟S206,快閃記憶體控制器會將被選擇的記憶區塊標示為預備區塊,並在步驟S206執行完後執行步驟S209。在步驟S205中,快閃記憶體控制器為了執行ECC偵錯,會尋找存有資料的最後一個記憶頁。這是因為當電力中斷時,快閃記憶體中只會有一個記憶頁被存取,因此一般來說也只有一個記憶頁會出現錯誤。但在另一實施例中,快閃記憶體控制器可以檢查存有資料的最後一個記憶頁的鄰近的複數個記憶頁,或是檢查被選擇的記憶區塊中的所有記憶頁。在步驟S207中,快閃記憶體控制 器對被選擇到的記憶頁執行ECC檢查。快閃記憶體控制器讀取儲存在資料區的使用者資料與儲存在預備區的ECC相關資料,並根據ECC相關資料驗證使用者資料。如果被選擇的記憶頁通過驗證,則跳到步驟S209。如果被選擇的記憶頁驗證失敗,快閃記憶體控制器執行步驟S208,用以儲存被選擇的記憶頁的錯誤類型資訊。錯誤類型資訊包括了被選擇的記憶區塊的實體位址以及被選擇的記憶頁的編號。
在儲存完被選擇的記憶頁的錯誤類型資訊之後,快閃記憶體控制器執行步驟S209。在本實施例中,快閃記憶體的所有記憶區塊都被依序選擇,但非將本發明限制於此。當被選擇的記憶區塊是快閃記憶體中的最後一個區塊時,執行步驟S210用以檢查最後一個記憶區塊中是否有錯誤。如果最後一個記憶區塊沒有錯誤,結束本實施例所述的快閃記憶體的連結表回復方法。若最後一個記憶區塊出現錯誤,快閃記憶體控制器會在步驟S211中將有錯誤的記憶區塊中正確的資料搬移到一個新的記憶區塊,如預備記憶區塊,其中正確的資料係指儲存在該發生錯誤的記憶區塊中發生錯誤的記憶頁之前的複數個記憶頁的資料。在步驟S211之後,快閃記憶體控制器在步驟S212中更新該快閃記憶體的一連結表。當讀取快閃記憶體中的一個管理單元(management unit,MU)時,對應的連結表是需要的,而且會被儲存在RAM中。快閃記憶體控制器存取並修正在RAM中的連結表,並且將修改後的連結表儲存在MU 中的RAM內。在步驟S212之後,快閃記憶體控制器再次重複本實施例的方法,並重建連結表。連結表請參考第4圖。
第4圖為根據本發明之連結表的一實施例的示意圖。連結表是用使用在邏輯位址,且快閃記憶體控制器藉由實體位置管理快閃記憶體。連結表的運作類似一查表,用以確定快閃記憶體可以正確的轉換實體位址與邏輯位址。換言之,連結表用以確保資料能正確的在快閃記憶體的實體位址與快閃記憶體控制器使用的邏輯位址之間交換。在第4圖中,RAM位址表示邏輯位址,而RAM位址中儲存的內容為記憶區塊中對應的實體位址。舉例來說,RAM位址0x00,也就是邏輯記憶區塊位址,表上所示L.B.Address 0x00,儲存了實體記憶區塊位址N。當快閃記憶體控制器存取邏輯記憶區塊位址為0x00的記憶區塊時,實際上快閃記憶體控制器存取的是了實體記憶區塊位址為N的記憶區塊。在第2圖的步驟S212中,快閃記憶體控制器改變的是RAM位址中儲存的內容,並利用這樣的方式來更新連結表。舉例來說,邏輯記憶區塊位址為0x0Z的記憶區塊為預備記憶區塊,而邏輯記憶區塊位址為0x02的記憶區塊為錯誤的記憶區塊,快閃記憶體控制器會將錯誤記憶區塊中的正確的資料搬移到預備記憶區塊,並且將邏輯記憶區塊位址為0x02的內容與邏輯記憶區塊位址為0x0Z的內容交換。接著,當快閃記憶體控制器存取邏輯記憶區塊位址0x02時,快閃記憶體控制器實際存取的是實體記憶區塊位 址為I的記憶區塊,而非實體記憶區塊位址為T的記憶區塊。
第5圖為為根據本發明的一快閃記憶體的連結表回復方法的另一實施例的流程圖。在步驟S51時,快閃記憶體控制器檢查最後一個存取的子記憶區塊的所有記憶頁,並判斷是否最後存取的子記憶區塊出現錯誤。第5圖所揭露的實施例中係以一子記憶區塊為例說明,但並非將本發明限制於此。第5圖所示的連結表回復方法亦可適用於暫存記憶區塊(temp block)、FAT記憶區塊,子轉FAT(child-to-FAT)記憶區塊或其他類型的記憶區塊。如果最後被存取的子記憶區塊並沒有發現錯誤,則連結表回復方法結束或是繼續檢查相鄰最後存取的子記憶區塊的一個或複數個記憶區塊。如果最後被存取的子記憶區塊發現錯誤,執行步驟S52。在步驟S52中,快閃記憶體控制器自複數個預備區塊中選則一新的區塊,並將最後被存取的子記憶區塊中正確的資料搬移到新的區塊。舉例來說,母記憶區塊與子記憶區塊都具有1024個記憶頁,而快閃記憶體控制器發現在子記憶區塊的第100個記憶頁出現錯誤,快閃記憶體控制器會先將該子記憶區塊中第1個到第99個記憶頁的資料搬移到新的記憶區塊中,接著複製並搬移母記憶區塊中第100個記憶頁到第1024個記憶頁的資料至該新的記憶區塊的對應的記憶頁中(步驟S53)。在步驟S54中,快閃記憶體控制器更新在連結表中該新的記憶區塊的實體位址。更新連結表的步驟類似於前一實施例中所述的 連結表更新方法。在步驟S55中,快閃記憶體控制器抹寫該子記憶區塊與該母記憶區塊的資料,並將該子記憶區塊與該母記憶區塊標示為預備記憶區塊。
第6圖為根據本發明之一快閃記憶體的系統的一實施例的方塊圖。快閃記憶體系統60包括RAM 62、快閃記憶體控制器61以及快閃記憶體63。快閃記憶體控制器61根據儲存在RAM 62中的連結表來接收並寫入資料至快閃記憶體63。當快閃記憶體控制器61存取快閃記憶體63中的管理單位(Management Unit,MU)時,如MU 0,快閃記憶體控制器61會將取得並儲存對應的連結表。當快閃記憶體控制器61存取快閃記憶體63時發生電力中斷的情形時,快閃記憶體控制器61執行如第2圖與第5圖所示的連結表回復方法,用以確保快閃記憶體63可以被正確的存取。
11‧‧‧記憶體控制器
12‧‧‧快閃記憶體
13‧‧‧介面邏輯
14‧‧‧緩衝器
15‧‧‧微處理器
16‧‧‧控制邏輯
62‧‧‧RAM
61‧‧‧快閃記憶體控制器
60‧‧‧快閃記憶體系統
63‧‧‧快閃記憶體
第1圖為一快閃記憶裝置的方塊示意圖。
第2圖為根據本發明的一快閃記憶體的連結表回復方法的一實施例的流程圖。
第3圖為根據本發明的一記憶區塊的實施例的結構示意圖。
第4圖為根據本發明之連結表的一實施例的示意圖。
第5圖為為根據本發明的一快閃記憶體的連結表回復方法的另一實施例的流程圖。
第6圖為根據本發明之一快閃記憶體的系統的一實施例的方塊圖。

Claims (15)

  1. 一種連結表的回復方法,適用於具有複數個記憶區塊的快閃記憶體,該方法包括:自該等記憶區塊中選擇一第一記憶區塊;選擇該第一記憶區塊中包含資料的一最後記憶頁;檢查該最後記憶頁是否有錯誤發生;若該第一記憶區塊的該最後記憶頁有錯誤發生,移動該第一記憶區塊中正確的資料至複數個預備記憶區塊中的一個預備記憶區塊;以及更新該快閃記憶體的一連結表。
  2. 如申請專利第1項所述的連結表的回復方法,其中更包括:當偵測到該第一記憶區塊的該最後記憶頁有錯誤發生時,記錄一錯誤類型資訊,其中該錯誤類型資訊包括該第一記憶區塊的位址以及該最後記憶頁的編號。
  3. 如申請專利第2項所述的連結表的回復方法,其中移動該第一記憶區塊中正確的資料至複數個預備記憶區塊中的該預備記憶區塊以及更新該快閃記憶體的該連結表的步驟是在檢查該快閃記憶體的全部記憶區塊是否有錯誤發生後才被執行。
  4. 如申請專利第1項所述的連結表的回復方法,更包括:判斷該第一記憶區塊的類型;以及如果該第一記憶區塊不是屬於一第一類型記憶區塊,則標記該第一記憶區塊為一預備記憶區塊。
  5. 如申請專利第4項所述的連結表的回復方法,其中該第一類型記憶區塊可能為一檔案配置表(FAT)記憶區塊、一母記憶區塊(mother block)、一資料記憶區塊、一子記憶區塊(child block)、一抹除資訊記憶區塊、一連結記憶區塊或一暫存記憶區塊。
  6. 如申請專利第4項所述的連結表的回復方法,其中判斷該第一記憶區塊的類型的步驟係藉由讀取該第一記憶區塊的一預備區(spare region)所完成。
  7. 如申請專利第1項所述的連結表的回復方法,其中檢查該最後記憶頁是否有錯誤發生的步驟包括:分別讀取儲存在該最後記憶頁的一資料區與一預備區的資料;根據儲存在該最後記憶頁的該預備區的資料來驗證儲存在該最後記憶頁的該資料區的資料;以及根據驗證結果判斷該最後記憶頁是否有錯誤發生。
  8. 如申請專利第1項所述的連結表的回復方法,其中更新該快閃記憶體的該連結表的步驟包括:讀取並修改預存在一揮發性記憶體的該連結表;以及載入修改後的該連結表至該快閃記憶體。
  9. 一種連結表的回復方法,適用於具有複數個記憶區塊的快閃記憶體在突然的電力失效之後,該方法包括:選擇一最後存取的記憶區塊;檢查該最後存取的記憶區塊中的複數個記憶頁,並判斷該最後存取的記憶區塊是否有錯誤; 當偵測到該最後存取的記憶區塊的一第一記憶頁有出現錯誤時,將該最後存取的記憶區塊中正確的資料搬移到一預備記憶區塊中;以及更新該快閃記憶體的一連結表。
  10. 如申請專利第9項所述的連結表的回復方法,其中該最後存取的記憶區塊中正確的資料係指儲存在該最後存取的記憶區塊中該第一記憶頁之前的複數個記憶頁的資料。
  11. 如申請專利第9項所述的連結表的回復方法,其中更包括:當偵測到該最後存取的記憶區塊的該第一記憶頁有錯誤發生時,記錄一錯誤類型資訊,其中該錯誤類型資訊包括該最後存取的記憶區塊的位址以及該第一記憶頁的編號。
  12. 如申請專利第9項所述的連結表的回復方法,更包括:當該最後存取的記憶區塊為一子記憶區塊時,自對應該子記憶區塊的一母記憶區塊中,搬移尚未傳送到該子記憶區塊的資料至該預備記憶區塊。
  13. 如申請專利第12項所述的連結表的回復方法,更包括:抹除該母記憶區塊與該最後存取的記憶區塊;以及標示該母記憶區塊與該最後存取的記憶區塊的類型為預備記憶區塊類型,其中更新該快閃記憶體的該連結表的步驟是在標示該母記憶區塊與該最後存取的記憶區塊的類 型為預備記憶區塊類型之後被執行。
  14. 如申請專利第9項所述的連結表的回復方法,其中檢查該第一記憶頁是否有錯誤發生的步驟包括:分別讀取儲存在該第一記憶頁的一資料區與一預備區的資料;根據儲存在該第一記憶頁的該預備區的資料來驗證儲存在該第一記憶頁的該資料區的資料;以及根據驗證結果判斷該第一記憶頁是否有錯誤發生。
  15. 如申請專利第9項所述的連結表的回復方法,其中更新該快閃記憶體的該連結表的步驟包括:讀取並修改預存在一揮發性記憶體的該連結表;以及載入修改後的該連結表至該快閃記憶體。
TW097147080A 2008-10-15 2008-12-04 連結表的回復方法 TWI394170B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/251,810 US7962801B2 (en) 2008-10-15 2008-10-15 Link table recovery method

Publications (2)

Publication Number Publication Date
TW201015564A TW201015564A (en) 2010-04-16
TWI394170B true TWI394170B (zh) 2013-04-21

Family

ID=42099978

Family Applications (1)

Application Number Title Priority Date Filing Date
TW097147080A TWI394170B (zh) 2008-10-15 2008-12-04 連結表的回復方法

Country Status (3)

Country Link
US (1) US7962801B2 (zh)
CN (1) CN101727401B (zh)
TW (1) TWI394170B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266481B2 (en) * 2009-07-29 2012-09-11 Stec, Inc. System and method of wear-leveling in flash storage
US8453021B2 (en) 2009-07-29 2013-05-28 Stec, Inc. Wear leveling in solid-state device
US9164887B2 (en) 2011-12-05 2015-10-20 Industrial Technology Research Institute Power-failure recovery device and method for flash memory
US9026893B1 (en) * 2012-12-13 2015-05-05 Western Digital Technologies, Inc. Dynamically assigning inactive pages not used in Reed-Solomon code in non-volatile solid-state storage array
US9286176B1 (en) 2013-11-08 2016-03-15 Western Digital Technologies, Inc. Selective skipping of blocks in an SSD
KR102272228B1 (ko) * 2014-05-13 2021-07-06 삼성전자주식회사 불휘발성 메모리 장치, 그것을 포함하는 저장 장치 및 그것의 동작 방법
US9983811B2 (en) * 2016-05-25 2018-05-29 Seagate Technology Llc Save critical data upon power loss
TWI591533B (zh) * 2016-11-25 2017-07-11 慧榮科技股份有限公司 可用於資料儲存裝置之資料儲存方法與資料回復程序、以及採用這些方法的資料儲存裝置
CN109445815B (zh) * 2018-10-15 2019-11-26 恒宝股份有限公司 一种智能卡及其应用升级方法

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
TW484064B (en) * 1999-07-12 2002-04-21 Feiya Technology Corp Flash memory management, data linking architecture and algorithm
US20030145141A1 (en) * 2002-01-31 2003-07-31 Chien-An Chen Universal serial bus flash memory integrated circuit device
US6977847B2 (en) * 2001-11-23 2005-12-20 M-Systems Flash Disk Pioneers Ltd. Detecting partially erased units in flash devices
TW200601030A (en) * 2003-12-30 2006-01-01 Sandisk Corp Non-volatile memory and method with phased program failure handling
CN101198939A (zh) * 2005-05-12 2008-06-11 晟碟以色列有限公司 抗掉电后数据损坏的闪存管理方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69334149T2 (de) * 1992-04-02 2008-02-14 Kabushiki Kaisha Toshiba, Kawasaki Speicherkarte
US6742078B1 (en) * 1999-10-05 2004-05-25 Feiya Technology Corp. Management, data link structure and calculating method for flash memory
CN1447243A (zh) * 2002-03-25 2003-10-08 太和科技股份有限公司 快闪存储器中快速且能防止不正常断电的演算法及其控制系统
JP4606009B2 (ja) * 2003-10-20 2011-01-05 三洋電機株式会社 プログラム処理装置
US20050144516A1 (en) * 2003-12-30 2005-06-30 Gonzalez Carlos J. Adaptive deterministic grouping of blocks into multi-block units
KR100704618B1 (ko) * 2004-01-19 2007-04-10 삼성전자주식회사 플래시 메모리의 데이터 복구 장치 및 방법
US20070083697A1 (en) * 2005-10-07 2007-04-12 Microsoft Corporation Flash memory management
US7761740B2 (en) * 2007-12-13 2010-07-20 Spansion Llc Power safe translation table operation in flash memory
US7941692B2 (en) * 2007-12-31 2011-05-10 Intel Corporation NAND power fail recovery
TWI375962B (en) * 2008-06-09 2012-11-01 Phison Electronics Corp Data writing method for flash memory and storage system and controller using the same

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5404485A (en) * 1993-03-08 1995-04-04 M-Systems Flash Disk Pioneers Ltd. Flash file system
TW484064B (en) * 1999-07-12 2002-04-21 Feiya Technology Corp Flash memory management, data linking architecture and algorithm
US6977847B2 (en) * 2001-11-23 2005-12-20 M-Systems Flash Disk Pioneers Ltd. Detecting partially erased units in flash devices
US20030145141A1 (en) * 2002-01-31 2003-07-31 Chien-An Chen Universal serial bus flash memory integrated circuit device
TW200601030A (en) * 2003-12-30 2006-01-01 Sandisk Corp Non-volatile memory and method with phased program failure handling
CN101198939A (zh) * 2005-05-12 2008-06-11 晟碟以色列有限公司 抗掉电后数据损坏的闪存管理方法

Also Published As

Publication number Publication date
US20100095148A1 (en) 2010-04-15
CN101727401A (zh) 2010-06-09
TW201015564A (en) 2010-04-16
US7962801B2 (en) 2011-06-14
CN101727401B (zh) 2013-02-27

Similar Documents

Publication Publication Date Title
TWI394170B (zh) 連結表的回復方法
EP2550745B1 (en) Non-regular parity distribution detection via metadata tag
US9996462B1 (en) Data storage device and data maintenance method thereof
TWI569273B (zh) 非揮發性記憶體裝置讀取干擾管理方法
KR101522744B1 (ko) 새로운 불량 블록 검출
JP4524309B2 (ja) フラッシュメモリ用のメモリコントローラ
US8694855B1 (en) Error correction code technique for improving read stress endurance
US8271515B2 (en) System and method for providing copyback data integrity in a non-volatile memory system
JP4901987B1 (ja) 記憶装置、電子機器及び誤りデータの訂正方法
TWI389122B (zh) 用來存取一快閃記憶體之方法以及相關之記憶裝置及其控制器
CN109582216B (zh) 数据储存装置与存储器装置的数据处理方法
US9141476B2 (en) Method of storing system data, and memory controller and memory storage apparatus using the same
US20120110243A1 (en) Data writing method, memory controller, and memory storage apparatus
US20120215962A1 (en) Partitioning pages of an electronic memory
TWI447579B (zh) 程式碼載入與存取方法、記憶體控制器與記憶體儲存裝置
TWI591482B (zh) 資料保護方法、記憶體控制電路單元及記憶體儲存裝置
KR20100028022A (ko) 제어된 스크럽 데이터 판독에 의해 트리거되는 플래시 메모리 리프레시 기술
TWI616807B (zh) 資料寫入方法以及儲存控制器
JP4513786B2 (ja) メモリコントローラ、メモリシステム及びメモリ制御方法
JP4332134B2 (ja) メモリコントローラ、フラッシュメモリシステム及びフラッシュメモリの制御方法