TWI394161B - 快閃記憶體裝置及其資料管理方法 - Google Patents
快閃記憶體裝置及其資料管理方法 Download PDFInfo
- Publication number
- TWI394161B TWI394161B TW097148724A TW97148724A TWI394161B TW I394161 B TWI394161 B TW I394161B TW 097148724 A TW097148724 A TW 097148724A TW 97148724 A TW97148724 A TW 97148724A TW I394161 B TWI394161 B TW I394161B
- Authority
- TW
- Taiwan
- Prior art keywords
- flash memory
- block
- memory chips
- data
- memory device
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/0223—User address space allocation, e.g. contiguous or non contiguous base addressing
- G06F12/023—Free address space management
- G06F12/0238—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory
- G06F12/0246—Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory in block erasable memory, e.g. flash memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/72—Details relating to flash memory management
- G06F2212/7208—Multiple device management, e.g. distributing data over multiple flash devices
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明係關於快閃記憶體裝置,更係關於快閃記憶體裝置之資料管理方法。
快閃記憶體是近年來發展迅速的記憶體,屬於非揮發性記憶體(斷電時資料仍能保存),它具有低功耗、體積小、可靠性高等優點,已成為一般電腦系統的輔助記憶體使用。第1圖為快閃記憶體裝置之架構示意圖。快閃記憶體裝置100包括一控制器102及一快閃記憶晶片104,用以與一主機110傳輸資料。其中,控制器102以一控制線106致能該快閃記憶晶片104,以使該快閃晶片104得以接收控制器102之存取。此外,熟悉本技藝人士可知,控制器102又存有一轉換表(Translation Table),具有將邏輯區塊位置(Logical Block Address)轉換成實體區塊位置(Physical Block Address)之功能。因此,主機110透過控制器102可將來自主機110且對應至邏輯區塊位置L00~L04(圖未示)之資料D0~D4分別儲存於快閃記憶晶片104之區塊A的複數個實體區塊位址A00~A04中。
補充說明,快閃記憶晶片104尚具有以下特點:(1)其以頁(page)為讀取或寫入操作之最小單位,1頁具有2K個位元組(2KB);(2)但由於快閃記憶體無法直接覆寫,因此必需以區塊(block)為單位進行刪除(erase)操作,若以1區
塊包含64頁為例,則1區塊單位約為128千位元組(128KB)。基於上述限制,使得快閃記憶體在使用時,所需考量之處甚多。因此,如何有效管理快閃記憶體就顯得特別重要。
第2圖為快閃記憶體進行更新操作之示意圖。請一併參照第1圖,當進行「更新」操作時,快閃記憶體裝置100接收自主機110傳輸而來且對應至邏輯位址L01之一更新資料D1’,並欲以該更新資料D1’取代原區塊A中同屬邏輯位址L01之資料D1。但由於原先儲存於區塊A實體頁面位址A01之資料D1無法被直接覆寫,亦無法直接被清除,其必須先做標記成「虛擬刪除(Pseudo Erased)」,待往後適當時機再加以刪除。此外,控制器102會在快閃記憶晶片104中另外建立一新區塊B而將更新資料D1’寫入其中(舉例而言,寫入實體頁面位址B01中),並修改轉換表中邏輯區塊位址與實體區塊位址的對應關係。
值得注意的是,完整的更新操作尚需包括將區塊A中未被更新之資料D0、D2~D4與區塊B中之更新資料D1’進行「整併」(merge)操作(方法繁多,容後再述),並於整併操作後將區塊A進行「實體刪除」(Real Erase)以釋出快閃記憶晶片104之空間。然而,進行實體刪除時,快閃記憶體裝置100無法同時進行寫入、讀取或其他動作,此將導致效能變差。因此,一種能改善更新操作效能之快閃記憶體管理方法亟為人們所需。
本發明揭露了一種快閃記憶體裝置之資料管理方法,包括提供複數個快閃記憶晶片、分別致能該等快閃記憶晶片、以及對該等快閃記憶晶片中之一第一快閃記憶晶片之一第一區塊之一第一資料進行更新操作,其中更新操作更包括將對應該第一資料之一第一更新資料寫入該等快閃記憶晶片中之一第二快閃記憶晶片之一第二區塊、以及對該第一區塊及該第二區塊資料進行整併操作,其中該第一更新資料與該第一資料對應至一第一邏輯區塊位址。
本發明也揭露了一種快閃記憶體裝置,包括複數個快閃記憶晶片以及一控制器,其中該控制器用以分別致能該等快閃記憶晶片、以及對該等快閃記憶晶片中之一第一快閃記憶晶片之一第一區塊之一第一資料進行更新操作,其中更新操作更包括將對應該第一資料之一第一更新資料寫入該等快閃記憶晶片中之一第二快閃記憶晶片之一第二區塊;以及對該第一區塊及該第二區塊進行整併操作,其中該第一區塊與該第二區塊對應至一第一邏輯區塊位址。。
為了讓本發明之上述和其他目的、特徵、和優點能更明顯易懂,下文特舉數較佳實施例,並配合所附圖示,作詳細說明如下。
前文已對本發明做各特徵的摘要,請參考本文及附圖,於此將做更詳細的描述。本發明配合附圖做詳細的描述,然而非用以限制本發明。相反的,在不脫離後附之申請專利範圍中所界定的範圍及精神,本發明當可做所有型
式的更動及潤飾。
第3圖為依據本發明之一快閃記憶體裝置架構圖。快閃記憶體裝置300包括一控制器302、第一快閃記憶晶片321、第二快閃記憶晶片322、第三快閃記憶晶片323、第四快閃記憶晶片324,本發明以四個快閃記憶晶片為例,但數量不限於此。其中該控制器302以複數個控制線331~334分別致能該等快閃記憶晶片321~324,以使該等快閃記憶晶片321~324得以接收控制器302之存取。重要的是,本發明之控制器302可依據本發明實施一特別之功能,請見下段。
第4圖為依據本發明之快閃記憶體裝置之資料管理方法流程圖。請一併參照第3圖。如前所述,本發明如步驟S402所示,提供複數個快閃記憶晶片321~324;並於步驟S404所示,分別對該等快閃記憶晶片321~324致能。在步驟S406中,控制器302更進行一更新操作,舉例而言,其更新之對象為第一快閃記憶晶片321之區塊E,而該區塊E又包含分別存於實體頁面位址E00~04之資料D0~D4,且資料D0~D4則分別對應至邏輯位址為L00~L04(圖未示)。在本發明中,完整的更新操作S406尚需包含寫入操作S408、整併操作S410及刪除操作S412。舉例而言,若快閃記憶體裝置300自主機310接收對應至邏輯位址L01之一更新資料D1’,目的在取代資料D1並進而更新第一快閃記憶晶片321之區塊E時,則本發明於步驟S408,除了如同先前技術中所示將該資料D1所在之實體頁面位址E01標記為虛擬刪除外,本發明之控制器302又會將更新資料D1’寫入第二快閃記憶晶片322的區塊F中。其後,於步驟
S410,控制器302將第一快閃記憶晶片321的區塊E及第二快閃記憶晶片322的區塊F進行整併操作。最後,於步驟S412中將不再使用之區塊進行實體刪除,詳如後述。
本發明對快閃記憶體進行更新操作的方法包含各種實施例,例如:母子區塊(Mother/Child)配對模式,以及檔案分配表(File Allocation Table,FAT)模式。第5圖為於更新操作S406時執行母子區塊配對模式示意圖。以母子區塊配對模式為例,若區塊E(標記為母區塊)在其實體頁面位址E00~E04上分別具有資料D0~D4,並接收對應至邏輯位址L01之一更新資料D1’時,則本發明進行寫入操作S408,控制器302分別將未被更新之資料D0及更新資料D1’寫入區塊F(子區塊)的實體頁面位址F00及F01中。在進行整併操作S410時,再將未被更新之資料D2~D4及剩餘頁面資料一起複製至實體頁面位址F02~F04及剩餘頁面中,接著區塊F之標記由子區塊修改為母區塊。在此情況下,在當進行刪除操作S412時,本發明可直接將第一快閃記憶晶片321的區塊E(母區塊)予以實體刪除。依照本發明,在刪除第一快閃記憶晶片321之區塊E的同時,其他快閃記憶晶片如第二快閃記憶晶片322、第三快閃記憶晶片323及第四快閃記憶晶片324等仍可被存取,不會因為快閃記憶體裝置300對特定快閃記憶晶片執行刪除操作而影響其他快閃記憶晶片的操作,進而達到提升快閃記憶體裝置整體效能之目的。另外,因為母區塊E與配對的子區塊F位於不同的記憶晶片,於整併操作時,讀取第一快閃記憶晶片321中母區塊內的舊資料並寫入至第二快閃記憶晶片322中的子區塊亦可以同時進行,藉此增加整併操作的效率。
然而,本發明在檔案分配表模式則與前述母子區塊配對模式稍有不同。第6圖為更新操作S410時執行檔案分配表模式示意圖。同樣地,若區塊E在其實體頁面位址E00~E04上分別具有資料D0~D4,並接收對應至邏輯位址L01之一更新資料D1’時,在檔案分配表模式下進行寫入操作S408,則控制器302僅會將被更新之資料D1’寫入區塊F的實體頁面位址F00,而其他未被更新之資料D0、D2~D4仍被保留於區塊E中,並在區塊F之實體頁面位址F01上建立一檔案分配表FAT0,分別記錄各邏輯頁面位址對應之實體頁面位址,如檔案分配表FAT0表示邏輯頁面位址L00將對應至實體頁面位址F00。而進行整併操作S410時,則控制器302將第一快閃記憶晶片321之區塊E中之未被更新的資料D0、D2~D4與第二快閃記憶晶片322之區塊F中的更新資料D1’分別寫入第三快閃記憶晶片323之區塊G的實體頁面位址G00、G02~G04及G01中。在此情況下,當進行刪除操作S412時,本發明可直接將第一快閃記憶晶片321的區塊E及第二快閃記憶晶片322之區塊F予以實體刪除。在刪除區塊E及區塊F之同時,其他快閃記憶晶片如第三快閃記憶晶片323及第四快閃記憶晶片324仍可被存取,相對先前技術而言,此模式下亦具有提升快閃記憶體裝置整體效能之功用。另外,因為母區塊E與配對的FAT區塊F以及用於整併之新區塊G皆位於不同的記憶晶片,於整併操作時,讀取第一快閃記憶晶片321中母區塊E內的舊資料以及第二快閃記憶晶片322中的FAT區塊並寫入至第三快閃記憶晶片323中的新區塊便可以同時間進行,藉此增加整併操作的效率。
值得注意的是,上述該等區塊E、F、G皆包含複數個頁,並以頁為最小之寫入單位。在本發明中,頁除了可供存取資料(如資料D0~D4)外,亦包括備用資訊,可用以記錄各種訊息。其中訊息除了如上述實體區塊位址、邏輯區塊位址及邏輯頁面位址外,亦可紀錄一序列號,其中該序列號可用以表示記錄該備用資訊之頁所屬區塊被建立之次序。就上述之母子區塊配對模式而言,當母區塊被賦予序列號0時,則較晚建立之子區塊被賦予序列號1。當該子區塊被進行更新操作而成為母區塊並保留序列號1時,則於其對應之新的子區塊產生後,將該新的子區塊之序列號定為2。藉由判斷序列號之大小,可輕易判斷在母子區塊配對模式下,何者為母區塊,而何者為相對應之子區塊。
在本發明的範圍內,將包含所有修飾及改變,將由下述的申請專利範圍所保護。
100‧‧‧快閃記憶體裝置
102‧‧‧控制器
104‧‧‧快閃記憶晶
片
110‧‧‧主機
300‧‧‧快閃記憶體裝置
302‧‧‧控制器
321‧‧‧
第一快閃記憶晶片
322‧‧‧第二快閃記憶晶片
323‧‧‧第三快
閃記憶晶片
3241‧‧‧第四快閃記憶晶片
310‧‧‧主機
A00~A04‧‧‧實體區塊位址
B00~B04‧‧‧實體區塊位址
D0~D4‧‧‧資料
E00~E04‧‧‧實體區塊位址
FA00~F04‧‧‧實體區
塊位址
G00~G04‧‧‧實體區塊位址
S402~S412‧‧‧步驟
第1圖為快閃記憶體裝置之架構示意圖;第2圖為快閃記憶體裝置進行更新操作之示意圖;第3圖為依據本發明之一快閃記憶體裝置架構圖;第4圖為依據本發明之快閃記憶體裝置之資料管理方法流程圖;第5圖為於更新操作S406時執行母子區塊配對模式示意圖;第6圖為更新操作S410時執行檔案分配表模式示意圖。
S402~S412‧‧‧步驟
Claims (12)
- 一種快閃記憶體裝置之資料管理方法,包括:提供複數個快閃記憶晶片;分別致能該等快閃記憶晶片;對該等快閃記憶晶片中之一第一快閃記憶晶片之一第一區塊之一第一資料進行更新操作,更包括:將對應該第一資料之一第一更新資料寫入該等快閃記憶晶片中之一第二快閃記憶晶片之一第二區塊;對該第一區塊及該第二區塊資料進行整併操作,其中,該第一區塊及該第二區塊係整併於該等快閃記憶晶片中之一第三快閃記憶晶片之一第三區塊;其中該第一更新資料與該第一資料對應至一第一邏輯區塊位址。
- 如申請專利範圍第1項所述之快閃記憶體裝置之資料管理方法,更包括在進行整併操作後刪除該第一、第二區塊,並於刪除該第一、第二區塊之同時存取該第一、第二快閃記憶晶片以外之其他快閃記憶晶片。
- 如申請專利範圍第1項所述之快閃記憶體資料管理方法,其中該第一、第二及第三區塊皆包括複數個頁,而該快閃記憶體以各頁為一最小讀寫單位,各頁又包括一備用資訊。
- 如申請專利範圍第3項所述之快閃記憶體裝置之資料管理方法,其中該備用資訊紀錄該區塊所對應之該第一邏輯區塊位址。
- 如申請專利範圍第3項所述之快閃記憶體裝置之資料管理方法,其中該備用資訊紀錄該頁之一邏輯頁面位 址。
- 如申請專利範圍第3項所述之快閃記憶體裝置之資料管理方法,其中該備用資訊紀錄一序列號,用以判斷記錄該備用資訊之頁所屬區塊被建立之次序。
- 一種快閃記憶體裝置,包括:複數個快閃記憶晶片;一控制器,用以分別致能該等快閃記憶晶片;以及對該等快閃記憶晶片中之一第一快閃記憶晶片之一第一區塊之一第一資料進行更新操作,其中更新操作更包括將對應該第一資料之一第一更新資料寫入該等快閃記憶晶片中之一第二快閃記憶晶片之一第二區塊;以及對該第一區塊及該第二區塊進行整併操作,其中,該第一區塊及該第二區塊係整併於該等快閃記憶晶片中之一第三快閃記憶晶片之一第三區塊;其中該第一區塊與該第二區塊對應至一第一邏輯區塊位址。
- 如申請專利範圍第7項所述之快閃記憶體裝置,其中該控制器更於進行整併操作後刪除該第一、第二區塊,並於刪除該第一、第二區塊之同時存取該第一、第二快閃記憶晶片以外之其他快閃記憶晶片。
- 如申請專利範圍第7項所述之快閃記憶體裝置,其中該第一、第二區塊皆包括複數個頁,而該快閃記憶體以各頁為一最小讀寫單位,各頁又包括一備用資訊。
- 如申請專利範圍第7項所述之快閃記憶體裝置,其中該備用資訊紀錄該區塊所對應之該第一邏輯區塊位址。
- 如申請專利範圍第7項所述之快閃記憶體裝置,其中該備用資訊紀錄該頁之一邏輯頁面位址。
- 如申請專利範圍第7項所述之快閃記憶體裝置,其中該備用資訊紀錄一序列號,用以判斷記錄該備用資訊之頁所屬區塊被建立之次序。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW097148724A TWI394161B (zh) | 2008-12-15 | 2008-12-15 | 快閃記憶體裝置及其資料管理方法 |
US12/371,903 US8122183B2 (en) | 2008-12-15 | 2009-02-16 | Data managing method for flash memory and flash memory device using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW097148724A TWI394161B (zh) | 2008-12-15 | 2008-12-15 | 快閃記憶體裝置及其資料管理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW201023192A TW201023192A (en) | 2010-06-16 |
TWI394161B true TWI394161B (zh) | 2013-04-21 |
Family
ID=42241933
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW097148724A TWI394161B (zh) | 2008-12-15 | 2008-12-15 | 快閃記憶體裝置及其資料管理方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8122183B2 (zh) |
TW (1) | TWI394161B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7254668B1 (en) * | 2002-10-28 | 2007-08-07 | Sandisk Corporation | Method and apparatus for grouping pages within a block |
US20070276988A1 (en) * | 2004-02-26 | 2007-11-29 | Super Talent Electronics, Inc. | Page and Block Management Algorithm for NAND Flash |
US20090070520A1 (en) * | 2007-09-06 | 2009-03-12 | Nagamasa Mizushima | Semiconductor storage device and method of controlling semiconductor storage device |
TW200919474A (en) * | 2007-10-19 | 2009-05-01 | Phison Electronics Corp | Writing method for non-volatile memory and controller using the same |
TW200926183A (en) * | 2007-12-07 | 2009-06-16 | Phison Electronics Corp | Flash memory data writing method and controller using the same |
TW200935422A (en) * | 2008-02-05 | 2009-08-16 | Phison Electronics Corp | Flash memory data writing method and controller thereof |
-
2008
- 2008-12-15 TW TW097148724A patent/TWI394161B/zh active
-
2009
- 2009-02-16 US US12/371,903 patent/US8122183B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7254668B1 (en) * | 2002-10-28 | 2007-08-07 | Sandisk Corporation | Method and apparatus for grouping pages within a block |
US20070276988A1 (en) * | 2004-02-26 | 2007-11-29 | Super Talent Electronics, Inc. | Page and Block Management Algorithm for NAND Flash |
US20090070520A1 (en) * | 2007-09-06 | 2009-03-12 | Nagamasa Mizushima | Semiconductor storage device and method of controlling semiconductor storage device |
TW200919474A (en) * | 2007-10-19 | 2009-05-01 | Phison Electronics Corp | Writing method for non-volatile memory and controller using the same |
TW200926183A (en) * | 2007-12-07 | 2009-06-16 | Phison Electronics Corp | Flash memory data writing method and controller using the same |
TW200935422A (en) * | 2008-02-05 | 2009-08-16 | Phison Electronics Corp | Flash memory data writing method and controller thereof |
Also Published As
Publication number | Publication date |
---|---|
TW201023192A (en) | 2010-06-16 |
US20100153623A1 (en) | 2010-06-17 |
US8122183B2 (en) | 2012-02-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230273876A1 (en) | Memory system, data storage device, user device and data management method thereof | |
TWI405082B (zh) | 記憶體系統及其映射方法 | |
JP4611024B2 (ja) | ブロック内のページをグループ化する方法及び装置 | |
US7840617B2 (en) | Host device and memory system | |
US8166258B2 (en) | Skip operations for solid state disks | |
US8055873B2 (en) | Data writing method for flash memory, and controller and system using the same | |
JP5612514B2 (ja) | 不揮発性メモリコントローラ及び不揮発性記憶装置 | |
US20060149902A1 (en) | Apparatus and method for storing data in nonvolatile cache memory considering update ratio | |
US10296250B2 (en) | Method and apparatus for improving performance of sequential logging in a storage device | |
TWI502594B (zh) | 用於快閃儲存裝置之半區塊管理 | |
JP2006216036A (ja) | フラッシュメモリを含んだデータ貯蔵装置及びそれのマージ方法 | |
JPWO2009096180A1 (ja) | メモリコントローラ、不揮発性記憶装置、及び、不揮発性記憶システム | |
TW201712549A (zh) | 緩衝記憶體管理方法、記憶體控制電路單元及記憶體儲存裝置 | |
TWI459198B (zh) | 記憶體儲存裝置、其記憶體控制器與有效資料識別方法 | |
US20100318726A1 (en) | Memory system and memory system managing method | |
TW201508748A (zh) | 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置 | |
US20100088540A1 (en) | Block management and replacement method, flash memory storage system and controller using the same | |
TW201917578A (zh) | 存取快閃記憶體模組的方法及相關的快閃記憶體控制器與電子裝置 | |
TW201222249A (en) | Storage device | |
WO2017000821A1 (zh) | 存储系统、存储管理装置、存储器、混合存储装置及存储管理方法 | |
TWI394161B (zh) | 快閃記憶體裝置及其資料管理方法 | |
JP2013206307A (ja) | メモリ制御装置、データ記憶装置及びメモリ制御方法 | |
TWI353518B (zh) | ||
KR100982440B1 (ko) | 단일 플래시 메모리의 데이터 관리시스템 | |
Xiao et al. | Per-file secure deletion for flash-based solid state drives |