TWI493339B - 資料儲存裝置及資料清除方法 - Google Patents

資料儲存裝置及資料清除方法 Download PDF

Info

Publication number
TWI493339B
TWI493339B TW101121064A TW101121064A TWI493339B TW I493339 B TWI493339 B TW I493339B TW 101121064 A TW101121064 A TW 101121064A TW 101121064 A TW101121064 A TW 101121064A TW I493339 B TWI493339 B TW I493339B
Authority
TW
Taiwan
Prior art keywords
data
page
address
flash memory
clearing
Prior art date
Application number
TW101121064A
Other languages
English (en)
Other versions
TW201351141A (zh
Inventor
Chang Kai Cheng
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
Priority to TW101121064A priority Critical patent/TWI493339B/zh
Priority to US13/588,598 priority patent/US9304686B2/en
Priority to CN201210296583.8A priority patent/CN103488572B/zh
Publication of TW201351141A publication Critical patent/TW201351141A/zh
Application granted granted Critical
Publication of TWI493339B publication Critical patent/TWI493339B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0608Saving storage space on storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/72Details relating to flash memory management
    • G06F2212/7205Cleaning, compaction, garbage collection, erase control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Read Only Memory (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Debugging And Monitoring (AREA)

Description

資料儲存裝置及資料清除方法
本發明係有關於快閃記憶體,特別是有關於快閃記憶體之資料清除方法。
快閃記憶體經常運用於一般的電子裝置以儲存資料。快閃記憶體包括可供儲存資料的多個區塊(block)。由於快閃記憶體可以在不供電的狀態中繼續保持其中所儲存的資料,而可攜式電子裝置僅具有有限的電源,因此快閃記憶體特別適用於可攜式電子裝置之資料儲存。
快閃記憶體的每一區塊包括多個頁(page),控制器係以頁為單位對快閃記憶體進行管理。快閃記憶體之每一頁又包括多個資料修改單元(data trimming unit),控制器係以資料修改單元為單位對快閃記憶體儲存之資料進行修改。第1圖為依據本發明之快閃記憶體之區塊100的示意圖。區塊100包括多個頁101~10X,每一頁包括多個資料修改單元。舉例來說,第3頁103包括資料修改單元LBAi ,LBAj ,LBAk ,...,LBAm 。於一實施例中,每一頁可儲存16KB的資料量,而每一資料修改單元可儲存512 Byte的資料,因此每一頁包含32個資料修改單元。
當控制器指示快閃記憶體清除一位址範圍的資料時,控制器會將該位址範圍皆寫入資料位元「0」。然而,控制器係以頁為單位管理快閃記憶體,當控制器清除位址範圍的資料後,必須將對應位址範圍的頁標示為資料清除之 頁,以利後續對資料之管理。因此,需要一種資料儲存裝置,可以妥善的由快閃記憶體中標記已進行過資料清除之頁。
有鑑於此,本發明之目的在於提供一種資料儲存裝置,以解決習知技術存在之問題。於一實施例中,該資料儲存裝置包括一快閃記憶體以及一控制器。該快閃記憶體包括多個區塊,每一該等區塊包括多個頁,每一該等頁包括多個資料修改單元,其中該等資料修改單元為資料修改的最小單元。當對該快閃記憶體之一位址範圍清除資料後,該控制器決定該位址範圍的一結束位址所對應的一最終頁,決定是否該最終頁中儲存於該結束位址後之資料值符合一特定資料樣式(specific data pattern),當該最終頁中儲存於該結束位址後之資料值為該特定資料樣式時將該最終頁對應之刪除旗標值設為1。
本發明更提供一種資料清除方法。於一實施例中,一資料儲存裝置包括一快閃記憶體,該快閃記憶體包括多個區塊,每一該等區塊包括多個頁,每一該等頁包括多個資料修改單元,且該等資料修改單元為資料修改的最小單元。首先,當對該快閃記憶體之一位址範圍清除資料後,決定該位址範圍的一結束位址所對應的一最終頁。接著,決定是否該最終頁中儲存於該結束位址後之資料值符合一特定資料樣式(specific data pattern)。接著,當該最終頁中儲存於該結束位址後之資料值為該特定資料樣式時,將該 最終頁對應之刪除旗標值設為1。
為了讓本發明之上述和其他目的、特徵、和優點能更明顯易懂,下文特舉數較佳實施例,並配合所附圖示,作詳細說明如下:
第2圖為依據本發明之資料儲存裝置200之區塊圖。於一實施例中,資料儲存裝置200包括控制器202、快閃記憶體204、以及隨機存取記憶體206。快閃記憶體204包括多個區塊(block)211~21m以供資料儲存。每一區塊211~21m更包括多個頁(page),而每一頁包括多個資料修改單元。資料修改單元為控制器202對快閃記憶體204進行資料修改的最小單元。於一實施例中,每一頁可儲存16KB的資料量,而每一資料修改單元可儲存512 Byte的資料,因此每一頁包含32個資料修改單元。
於一實施例中,控制器202耦接至一主機,依據主機發送之命令對快閃記憶體204進行資料寫入或資料讀取。當控制器202對快閃記憶體204之一位址範圍進行資料清除(data trimming)時,控制器202會將一特定資料樣式反覆寫入快閃記憶體204之該位址範圍。於一實施例中,該特定資料樣式為0x00。於另一實施例中,該特定資料樣式為0xFF。當快閃記憶體204之位址範圍寫滿該特定資料樣式時,資料清除便進行完畢。然而,控制器202仍需紀錄經過資料清除之頁,以對快閃記憶體204包含之各頁進行管理。
於一實施例中,資料儲存裝置200之隨機存取記憶體206儲存一刪除旗標表208。該刪除旗標表208紀錄快閃記憶體204的各區塊211~21m之各頁之資料是否均被清除。 於一實施例中,當一特定頁的所有資料均被改寫為位元0,則控制器202將刪除旗標表208中紀錄的對應於該特定頁的刪除旗標(erase flag)設為1。當一特定頁的所有資料並未均被改寫為位元0,則控制器202將刪除旗標表208中紀錄的對應於該特定頁的刪除旗標設為0。如此,控制器202便可適當地紀錄快閃記憶體204之各頁的資料儲存狀況,以便作為運用快閃記憶體204儲存資料之參考。
當控制器202對快閃記憶體204之一位址範圍進行資料清除後,控制器202必須分別設定該位址範圍所對應的各資料清除頁之刪除旗標值。第4圖為依據本發明之進行資料清除之區塊400之一位址範圍所對應的多個頁411,412,413,414,415的示意圖。各頁411~415均包括多個資料修改單元。假設進行資料清除之位址範圍始自一起始位址而迄於一結束位址,該起始位址對應於資料修改單元401,而該結束位址對應於資料修改單元402。因此,進行資料清除之位址範圍所涵蓋的所有資料修改單元之資料值均被改寫為0,如第4圖所示。
此時,由於進行資料清除之位址範圍對應於頁411,412,413,414,415,其中頁412、413、414之資料均被改寫為0,因此控制器202需將刪除旗標表208中頁412、413、414對應的刪除旗標值設為1。位址範圍之起始位址所對應的起始頁411中僅有位於資料修改單元401之後的資料值均 為1。因此,控制器402讀取起始頁411中位於資料修改單元401之前的資料值(由資料修改單元421至資料修改單元422的陰影部位)。若起始頁411中位於資料修改單元401之前的資料值均為0,則控制器202可將刪除旗標表208中起始頁411所對應的刪除旗標值設為1。同理,位址範圍之結束位址所對應的最終頁415中僅有位於資料修改單元402之前的資料值均為1。因此,控制器402讀取最終頁415中位於資料修改單元402之後的資料值(由資料修改單元431至資料修改單元432的陰影部位)。若最終頁415中位於資料修改單元402之後的資料值均為0,則控制器202可將刪除旗標表208中最終頁415所對應的刪除旗標值設為1。
第3圖為依據本發明之資料清除方法300的流程圖。首先,控制器202清除一快閃記憶體204之一位址範圍所儲存的資料,其中該位址範圍由一起始位址延伸至一結束位址(步驟302)。接著,控制器202決定該位址範圍所對應的多個資料清除頁(步驟304)。其中該位址範圍之起始位址位於該資料清除等頁之一起始頁,且該位址範圍之結束位址位於該等資料清除頁之一最終頁。例如,第4圖中之頁411為包含對應於起始位址之資料修改單元401的起始頁,而第4圖中之頁415為包含對應於結束位址之資料修改單元402的最終頁。
接著,控制器202決定是否該起始頁中於該起始位址前之資料值均為0(步驟306)。若該起始頁中於該起始位址前之資料值均為0,則控制器202將該起始頁對應之刪除 旗標值設為1(步驟308)。例如,若控制器202確認起始頁411之陰影區域421~422所儲存之資料值均為0,則控制器202將起始頁411之刪除旗標值設為1。接著,控制器202決定是否該最終頁中於該結束位址後之資料值均為0(步驟310)。若該最終頁中於該結束位址後之資料值均為0,則控制器202將該最終頁對應之刪除旗標值設為1(步驟312)。例如,若控制器202確認最終頁415之陰影區域431~432所儲存之資料值均為0,則控制器202將最終頁415之刪除旗標值設為1。最後,控制器202將該等資料清除頁之第二頁至倒數第二頁對應之刪除旗標值均設為1(步驟314)。例如,控制器202將頁412、413、414之刪除旗標值均設為1。如此,控制器202便可適當地紀錄快閃記憶體204之各頁的資料儲存狀況,以便作為運用快閃記憶體204儲存資料之參考。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟習此項技術者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
(第2圖)
202‧‧‧控制器
204‧‧‧快閃記憶體
211,212,213,...,21m‧‧‧區塊
206‧‧‧隨機存取記憶體
208‧‧‧刪除旗標表
第1圖為依據本發明之快閃記憶體之區塊的示意圖;第2圖為依據本發明之資料儲存裝置之區塊圖;第3圖為依據本發明之資料清除方法的流程圖;第4圖為依據本發明之進行資料清除之區塊之一位址範圍所對應的多個頁的示意圖。

Claims (18)

  1. 一種資料儲存裝置,包括:一快閃記憶體,包括多個區塊,每一該等區塊包括多個頁,每一該等頁包括多個資料修改單元,其中該等資料修改單元為資料修改的最小單元;以及一控制器,當對該快閃記憶體之一位址範圍清除資料後,決定該位址範圍的一結束位址所對應的一最終頁,決定是否該最終頁中儲存於該結束位址後之資料值符合一特定資料樣式(specific data pattern),當該最終頁中儲存於該結束位址後之資料值為該特定資料樣式時將該最終頁對應之刪除旗標值設為1。
  2. 如申請專利範圍第1項所述之資料儲存裝置,其中當對該快閃記憶體之該位址範圍清除資料後,該控制器更決定該位址範圍的一起始位址所對應的一起始頁,決定是否該起始頁中儲存於該起始位址前之資料值符合該特定資料樣式,當該起始頁中儲存於該起始位址前之資料值為該特定資料樣式時將該起始頁對應之刪除旗標值設為1。
  3. 如申請專利範圍第1項所述之資料儲存裝置,其中該控制器反覆將該特定資料樣式寫入該快閃記憶體之該位址範圍,以對該位址範圍清除資料。
  4. 如申請專利範圍第1項所述之資料儲存裝置,其中該資料儲存裝置更包括一隨機存取記憶體,用以儲存一刪除旗標表,其中該刪除旗標表儲存該快閃記憶體之每一頁所分別對應之刪除旗標值。
  5. 如申請專利範圍第2項所述之資料儲存裝置,其中 當對該快閃記憶體之該位址範圍清除資料後,該控制器更自該快閃記憶體決定該位址範圍所對應的多個資料清除頁,並將除了該起始頁與該最終頁之外的該等資料清除頁所對應之刪除旗標值設為1。
  6. 如申請專利範圍第1項所述之資料儲存裝置,其中該控制器由該最終頁中決定位於該結束位址後之多個第一資料修改單元,並比對該等第一資料修改單元所儲存之資料是否均符合該特定資料樣式,以決定是否該最終頁中儲存於該結束位址後之資料值符合該特定資料樣式。
  7. 如申請專利範圍第2項所述之資料儲存裝置,其中該控制器由該起始頁中決定位於該起始位址前之多個第二資料修改單元,並比對該等第二資料修改單元所儲存之資料是否均符合該特定資料樣式,以決定是否該起始頁中儲存於該起始位址前之資料值為該特定資料樣式。
  8. 如申請專利範圍第1項所述之資料儲存裝置,其中該特定資料樣式為0x00。
  9. 如申請專利範圍第1項所述之資料儲存裝置,其中該特定資料樣式為0xFF。
  10. 一種資料清除方法,其中一資料儲存裝置包括一快閃記憶體,該快閃記憶體包括多個區塊,每一該等區塊包括多個頁,每一該等頁包括多個資料修改單元,且該等資料修改單元為資料修改的最小單元,該方法包括:當對該快閃記憶體之一位址範圍清除資料後,決定該位址範圍的一結束位址所對應的一最終頁;決定是否該最終頁中儲存於該結束位址後之資料值符 合一特定資料樣式(specific data pattern);以及當該最終頁中儲存於該結束位址後之資料值為該特定資料樣式時,將該最終頁對應之刪除旗標值設為1。
  11. 如申請專利範圍第10項所述之資料清除方法,其中該方法更包括:當對該快閃記憶體之該位址範圍清除資料後,決定該位址範圍的一起始位址所對應的一起始頁;決定是否該起始頁中儲存於該起始位址前之資料值符合該特定資料樣式;以及當該起始頁中儲存於該起始位址前之資料值為該特定資料樣式時,將該起始頁對應之刪除旗標值設為1。
  12. 如申請專利範圍第10項所述之資料清除方法,其中對該快閃記憶體之該位址範圍清除資料之步驟包括反覆將該特定資料樣式寫入該快閃記憶體之該位址範圍。
  13. 如申請專利範圍第10項所述之資料清除方法,其中該資料儲存裝置更包括一隨機存取記憶體,用以儲存一刪除旗標表,其中該刪除旗標表儲存該快閃記憶體之每一頁所分別對應之刪除旗標值。
  14. 如申請專利範圍第11項所述之資料清除方法,其中該方法更包括:當對該快閃記憶體之該位址範圍清除資料後,自該快閃記憶體決定該位址範圍所對應的多個資料清除頁;以及將除了該起始頁與該最終頁之外的該等資料清除頁所對應之刪除旗標值設為1。
  15. 如申請專利範圍第10項所述之資料清除方法,其 中是否該最終頁中儲存於該結束位址後之資料值符合該特定資料樣式之決定步驟包括:由該最終頁中決定位於該結束位址後之多個第一資料修改單元;以及比對該等第一資料修改單元所儲存之資料是否均符合該特定資料樣式。
  16. 如申請專利範圍第11項所述之資料清除方法,其中是否該起始頁中儲存於該起始位址前之資料值為該特定資料樣式之決定步驟包括:由該起始頁中決定位於該起始位址前之多個第二資料修改單元;以及比對該等第二資料修改單元所儲存之資料是否均符合該特定資料樣式。
  17. 如申請專利範圍第10項所述之資料清除方法,其中該特定資料樣式為0x00。
  18. 如申請專利範圍第10項所述之資料清除方法,其中該特定資料樣式為0xFF。
TW101121064A 2012-06-13 2012-06-13 資料儲存裝置及資料清除方法 TWI493339B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
TW101121064A TWI493339B (zh) 2012-06-13 2012-06-13 資料儲存裝置及資料清除方法
US13/588,598 US9304686B2 (en) 2012-06-13 2012-08-17 Data storage device and data trimming method
CN201210296583.8A CN103488572B (zh) 2012-06-13 2012-08-20 数据储存装置及数据清除方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW101121064A TWI493339B (zh) 2012-06-13 2012-06-13 資料儲存裝置及資料清除方法

Publications (2)

Publication Number Publication Date
TW201351141A TW201351141A (zh) 2013-12-16
TWI493339B true TWI493339B (zh) 2015-07-21

Family

ID=49757000

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101121064A TWI493339B (zh) 2012-06-13 2012-06-13 資料儲存裝置及資料清除方法

Country Status (3)

Country Link
US (1) US9304686B2 (zh)
CN (1) CN103488572B (zh)
TW (1) TWI493339B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107436729B (zh) * 2016-05-27 2020-04-14 合肥沛睿微电子股份有限公司 储存系统的控制装置及其储存空间回收方法
CN107797938B (zh) * 2016-09-05 2022-07-22 北京忆恒创源科技股份有限公司 加快去分配命令处理的方法与存储设备
CN107797934B (zh) * 2016-09-05 2022-07-22 北京忆恒创源科技股份有限公司 处理去分配命令的方法与存储设备
CN110852045B (zh) * 2018-08-01 2024-06-18 珠海金山办公软件有限公司 一种删除文档内容的方法、装置、电子设备及存储介质
CN112882649B (zh) * 2019-11-29 2024-04-02 慧荣科技股份有限公司 数据储存装置以及非挥发式存储器控制方法
TWI768737B (zh) * 2021-03-02 2022-06-21 宏碁股份有限公司 跳躍式資料清除方法與資料儲存系統

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI230942B (en) * 2001-06-08 2005-04-11 Nec Electronics Corp Non-volatile storage device and rewrite control method thereof
US20080276050A1 (en) * 2007-05-02 2008-11-06 Yu-Cheng Hsieh Erase handling method for non-volatile memory and electronic apparatus thereof
TW201137884A (en) * 2009-11-06 2011-11-01 Toshiba Kk Memory system

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011128998A (ja) * 2009-12-18 2011-06-30 Toshiba Corp 半導体記憶装置
JP2012008651A (ja) * 2010-06-22 2012-01-12 Toshiba Corp 半導体記憶装置、その制御方法および情報処理装置
US11232022B2 (en) * 2010-10-29 2022-01-25 Samsung Electronics Co., Ltd. Memory system, data storage device, user device and data management method thereof having a data management information matching determination
TWI423026B (zh) * 2010-10-29 2014-01-11 Phison Electronics Corp 資料寫入方法、記憶體控制器與記憶體儲存裝置
US8892811B2 (en) * 2012-03-01 2014-11-18 Avago Technologies General Ip (Singapore) Pte. Ltd. Reducing write amplification in a flash memory
TWI475385B (zh) * 2012-03-14 2015-03-01 Phison Electronics Corp 程式化記憶胞與資料讀取方法、記憶體控制器與儲存裝置
US9323667B2 (en) * 2012-04-12 2016-04-26 Violin Memory Inc. System and method for managing trim operations in a flash memory system using mapping tables and block status tables

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI230942B (en) * 2001-06-08 2005-04-11 Nec Electronics Corp Non-volatile storage device and rewrite control method thereof
US20080276050A1 (en) * 2007-05-02 2008-11-06 Yu-Cheng Hsieh Erase handling method for non-volatile memory and electronic apparatus thereof
TW201137884A (en) * 2009-11-06 2011-11-01 Toshiba Kk Memory system

Also Published As

Publication number Publication date
US20130339575A1 (en) 2013-12-19
US9304686B2 (en) 2016-04-05
CN103488572B (zh) 2017-06-20
CN103488572A (zh) 2014-01-01
TW201351141A (zh) 2013-12-16

Similar Documents

Publication Publication Date Title
TWI493339B (zh) 資料儲存裝置及資料清除方法
TWI611293B (zh) 資料儲存裝置以及快閃記憶體控制方法
US10255192B2 (en) Data storage device and data maintenance method thereof
TWI515737B (zh) 資料儲存裝置以及其資料抹除方法
TWI603194B (zh) 資料儲存裝置以及其資料存取方法
JP5990430B2 (ja) Ssd(ソリッドステートドライブ)装置
TW201416858A (zh) 記憶體裝置及主機裝置
TWI608350B (zh) 儲存裝置及其控制單元、可用於儲存裝置的資料搬移方 法
JP2017027244A5 (zh)
TWI664568B (zh) 資料儲存裝置之操作方法
JP5874525B2 (ja) 制御装置、記憶装置、記憶制御方法
JP2015191336A5 (zh)
JP2013235531A5 (zh)
TWI355668B (zh)
TWI519951B (zh) 資料儲存裝置以及快閃記憶體控制方法
CN105139870B (zh) 一种光盘的实时刻录方法及装置
JP2008146514A5 (zh)
TW201621668A (zh) 資料儲存裝置及其資料寫入方法
JP2008306392A5 (zh)
JP2013235530A5 (zh)
JP2009276883A (ja) 半導体補助記憶装置
JP2014115927A (ja) プログラム更新装置、方法、プログラム、及び記憶媒体
TWI639113B (zh) 儲存裝置及其控制單元、可用於儲存裝置的資料儲存方法
TWI587211B (zh) 資料儲存裝置的映像檔製作方法
TWI424438B (zh) 非揮發性記憶體控制裝置及其多階重新排序方法