TWI492225B - 記憶體系統及其耗損平均方法 - Google Patents
記憶體系統及其耗損平均方法 Download PDFInfo
- Publication number
- TWI492225B TWI492225B TW098110889A TW98110889A TWI492225B TW I492225 B TWI492225 B TW I492225B TW 098110889 A TW098110889 A TW 098110889A TW 98110889 A TW98110889 A TW 98110889A TW I492225 B TWI492225 B TW I492225B
- Authority
- TW
- Taiwan
- Prior art keywords
- segment
- write count
- data
- conversion layer
- memory system
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T1/00—General purpose image data processing
- G06T1/60—Memory management
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0035—Evaluating degradation, retention or wearout, e.g. by counting writing cycles
-
- 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/7211—Wear leveling
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Semiconductor Memories (AREA)
Description
本申請案主張在35 U.S.C.§119(a)下,於2008年4月1號向韓國智慧財產局提出申請之韓國專利申請案第10-2008-0030423號的優先權,該專利申請案所揭露之內容係完整結合於本說明書中。
本發明是有關於一種記憶體系統,且特別是有關於一種記憶體系統及其耗損平均方法。
半導體記憶元件可被用以儲存資料資訊,且分為揮發性記憶體元件和非揮發性記憶體元件。非揮發性記憶體元件即使設備斷電也不會丟失儲存於其內的資料。由於非揮發性記憶體元件是以低功耗保存資料,因而成為可攜式系統之儲存媒介的焦點。非揮發性記憶體元件可包括一快閃記憶體(flash memory)、相變式隨機存取記憶體(Phase change random access memory,PRAM)、鐵電式隨機存取記憶體(ferroelectric RAM,FeRAM)以及磁式隨機存取記憶體(magnetic random access memory,MRAM)等。
快閃記憶體元件可包括多個區塊(或記憶區塊),每一個中具有多個分頁。快閃記憶元件可以執行一編程操作、讀取操作,以及抹除操作。編程操作和讀取操作是以一個分頁單元來實施,而抹除操作是以一個區塊單元來實施。
不同於磁片設備(disk apparatus),快閃記憶元件可能在編程操作前執行抹除操作。這是因為快閃記憶元件不支援的重寫(overwrite)功能。例如,快閃記憶元件的資料經由抹除操作以初始化成’1’,並經由編程操作而被改為’0’。換言之,將一分頁中部份的資料由’0’初始化至’1’是不可能的。對整個區塊必須先執行抹除操作以將資料由’0’初始化至’1’。
在快閃記憶元件中的每一個記憶區塊具有有限的抹除計數。但是,編程操作和抹除操作能夠根據用戶模式或資料模式集中在它的實體區塊中。在此領域眾所周知,編程操作和抹除操作可能會磨損快閃記憶元件。若耗損平均(wear leveling)增加,編程與抹除資料會花費很長一段時間,並且增加錯誤機率。此外,在耗損變嚴重的情況下,單位胞(unit cells)的資料儲存能力可能完全喪失。因此,需要平整(level)每一區塊的抹除計數。
用以管理快閃記憶元件的快閃軟體(flash software)可能會調整區塊的耗損程度,以便均勻地保留,即所謂的耗損平均(wear leveling)。為了延長快閃記憶元件的壽命,編程和抹除操作必須對整個快閃記憶元件均勻地執行。在編程和抹除操作被集中於快閃記憶元件的某一特定部分的情況下,其壽命可能被迅速縮短。另一方面,若對快閃記憶元件的整個區塊均勻地執行編程和抹除操作,其壽命可能被延長。
但是,可變電阻式記憶體,如PRAM,FeRAM,MRAM
在編程之前不需要抹除。也就是說,可變電阻式記憶體可支援重寫功能。當可變電阻式記憶體的此種情況下,儲存的資料可根據記憶胞的電阻而被辨別。重寫是指新的資料直接被存放於記憶胞先前的儲存資料中。藉由重寫的方式,’0’的資料轉變為’1’的資料,而’1’資料轉變為’0’資料。由於可變電阻式記憶體如PRAM是以一個字元單元執行寫入操作,其可能以一個字元單元被耗損。因此,需要一個耗損平均方法考慮其可能以一個字元單元被耗損的這樣的耗損特性。
下列說明涉及一種記憶體系統以及能延長壽命且不降低性能的耗損平均方法。
在一方面,提出一種記憶體系統,該記憶體系統包括一以第一單元來輸入與輸出資料的可變電阻式記憶體,以及一以不同於該第一單元之一第二單元來管理該可變電阻式記憶體之耗損程度的轉換層。
在另一方面,提出一種記憶體系統的耗損平均方法被,該記憶體系統包括一可變電阻式記憶體以及一轉換層,其中該可變電阻式記憶體具有多個區段且其中分別包括多個字元,並以一個字元單元來執行重寫操作,該轉換層用以測量區段的耗損程度。該耗損平均方法包括檢測每一區段的耗損資訊,以及依據檢測到的耗損資料交換該些區段中的資料。
本發明的其他方面將列舉如下說明,且部分將明顯地描述,或者可能是由實施而得到的發明。
前述之兩個一般說明和下列詳細說明可以理解為示範性與解釋性的,其目的是為了提供本發明所主張權利的進一步解釋。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
本發明參考以下附圖而更充分地被說明,其中附圖表示本發明之示範實施例。然而,本發明可能以多種不同的形式呈現,而不應被理解為僅限於此處所載之示範實施例。相反地,提供這些示範實施例是為了讓本發明徹底地被揭露,並且對本領域技術人員充分地表達本發明的範圍。為了清晰,在圖中的尺寸與膜層的相對尺寸以及區域可能被誇大。在圖中類似的參考數字代表類似元件。
本發明之較佳實施例將在下文參考附圖而更詳細介紹,表示快閃記憶元件的一個範例以說明本發明之結構和操作功能。然而,本發明可能以多種不同的形式呈現,而不應被理解為僅限於此處所載之示範實施例。相反地,提供這些示範實施例是為了讓本發明徹底地被揭露,並且對本領域技術人員充分地表達本發明的範圍。在整個附圖中,類似的參考數字代表類似元件。
以下,本發明將以使用相變式隨機存取記憶體(PRAM)元件為例來進行說明。但是,在此領域之技藝人員皆知本
發明不僅限於此揭露。舉例而言,本發明可用於可變電阻式記憶體,支援重寫功能,例如磁式隨機存取記憶體(MRAM),鐵電式隨機存取記憶體(FeRAM)等。
依據本發明之相變式隨機存取記憶體(PRAM)元件可包括多個區段(segments)。每一區段可包括多個字元(words)。本PRAM元件可以以一個區段單元(segment unit)執行耗損平均操作。因此,記憶系統的負擔(overhead)與以一字元單元的耗損平均系統相比可被降低。這是因為管理寫入資訊的數量減少了。此外,藉由在一個區段中轉移字元來管理字元之間的耗損程度是有可能的。
圖1表示依據本發明一實施例所代表之一種記憶系統的區塊圖。請參照圖1,儲存系統100可包括一中央處理器(CPU)110,一主記憶體120,以及一相變式隨機存取記憶體(PRAM)130。實線表示用以傳輸資料與命令的系統匯流排(system bus)。
PRAM元件130是一種非揮發性記憶體元件,並用來儲存資料。即使在電源關閉時,儲存在存儲器設備130的資料是不會丟失。儲存在PRAM元件130的資料被載入主記憶體120,然後所載入的資料被CPU110處理。被CPU 110處理的資料被存放於PRAM元件130中。
圖2表示一種繪示於圖2之記憶系統的一種軟體層(software layer)結構之區塊圖。請參照圖2,儲存系統可具有一個軟體層結構,其中該軟體層結構包括依序為應用程式210、檔案系統220,轉換層230,以及PRAM元件240。
PRAM元件240可包括多個區段240_1至240_n。如將於下文所述,每一區段可包括多個字元。PRAM元件240可以利用一個字元單元(word unit)執行輸入/輸出操作。為了在PRAM元件240中存取一個字元,需要將該字元指出是否包含在任何區段的資訊以及需要指出該區段是否被放在某個地方的資訊。前者資訊是所謂的區段數(segment number),而後者資訊被稱為補償數(offset number)。區段數表示一個區段,補償數表示一區段中的一字元。例如,假設區段數是3且補償數是5,則代表在第三區段的第5字元。
區段數及補償數可以分別從檔案系統220被轉移至轉換層230。此外,區段數及補償數可以同時從檔案系統220被轉移至轉換層230。例如,在區段數與補償數26從檔案系統220被轉移至轉換層23的情況下,轉移層230將數26除以在一區段中的字元數(例如,5)。在此,商數表示區段數,且餘數表示補償數。由於在26除以5的情況中,商數是5且餘數是1,因此是指一第五區段的第一字元。
應用程式210、檔案系統220以及轉換層230被裝載於主記憶體120中(參考圖1),然後由CPU 110(參考圖1)。應用程式210可因應用戶的輸入來處理資料。應用程式210處理資料並轉移用以儲存已處理資料的命令至檔案系統220。檔案系統220傳送一邏輯區段編號(Logical Logical Segment Number,LSN)和一補償數至轉換層230,以回應來自應用程式210的命令。轉換層230參考邏輯區
段編號LSN以及補償數而在PRAM元件240中選擇一字元,為了執行這樣的功能,轉換層230參照一對映表231。對映表231的格式將參考圖4而更加充分地說明。
圖3表示一種繪示於圖2之PRAM元件的一種區段結構圖。請參照圖3,一區段包括多個字元W1至Wm。PRAM元件240(參考圖2)可以用一字元單元執行輸入/輸出操作。因此,每一字元可能彼此不同地被耗損。在本發明的示範實施例中,假設一個字元的大小是2位元組(2-bytes)。但是,一字元大小可能視需求增加或減少。
在本實施例中可以以區段單元管理耗損的程度。如上所述,當以字元單元管理耗損程度時,由於管理每一字元的寫入計數,可能造成儲存系統嚴重的負擔。在本實施例的情形中,由於耗損程度是以一區段單元來管理,因此儲存系統的負擔減少了。但是,在這種情況下,在一區段的字元之間的磨損程度可能彼此會有所不同。因此,在一較佳實施例中,當區段被交換時,一區段中的字元會移位。這使得在一區段中字元間之耗損程度的失衡得以緩解。字元移位的操作將參照圖7而被更加充分地說明。
圖4表示一種繪示於圖2之對映表的一種結構圖。請參照圖4,一個對映表可能包括一邏輯區段編號LSN、一實體區段編號PSN、一移位計數、以及一寫入計數。每一邏輯區段編號LSN對應至實體區段編號(physical segment number,PSN)、實體區段編號PSN、移位計數、以及寫入計數。
移位計數為代表一實體區段中的字元是否被移位某一數值。寫入計數代表有關一實體區段被執行寫入操作的總數。此外,寫入計數可以是寫入請求字元的數目。例如,如果要求一寫入操作是有關一實體區段中的三字元,則寫入計數可以增加3。
請參照圖4,第一邏輯區段LSN1對應至第15實體區段PSN15,其中具有移位計數12。這表示,在第15實體區段PSN15的字元轉移12次。因此,第15實體區段PSN15的第一字元被放置在第十二個。第15實體區段PSN15具有一寫入計數36。這表示,有關第15實體區段PSN15被執行36次的寫入操作。
圖5表示一種用以描述本發明一實施例之耗損平均方法的流程圖。依據本實施例之耗損平均方法劃分為五個步驟。依據本實施例,耗損平均方法的一個執行時間點可以選擇性地被決定。例如,在本實施例中,耗損平均方法可以在對PRAM元件240(請參閱圖2)執行一寫入操作後再被實行。
在步驟S110中,轉換層230(請參閱圖2)參考一對映表231(請參閱圖2)來掃描每一實體區段的寫入計數。
在步驟S120中,轉換層230判斷最大寫入計數與最小寫入計數之間的差異是否大於一參考值。也就是說,轉換層230比較該參考值與一由最大寫入計數減去最小寫入計數所獲得的寫入計數差。若該寫入計數差低於該參考值,於後之耗損平均操作並不執行。換言之,耗損平均操
作結束。另一方面,若該寫入計數差超過該參考值,程序進入S130步驟。該參考值可視需求而具有任一數值。舉例來說,該參考值可以被設為一較低值,以減少寫入計數差異。
在步驟S130中,轉換層230交換一具有最大寫入計數之實體區段所儲存的資料與一具有最小寫入計數之實體區段所儲存的資料。判斷具有最大寫入計數的實體區段被耗損相對較多,判斷具有最小寫入計數的實體區段被耗損較少。此外,判斷儲存在具有最大寫入計數之實體區段的資料較頻繁地更新,而判斷儲存在具有最小寫入計數之實體區段的資料較少更新。
經由交換操作,經常更新的資料儲存在磨損最小的實體區段,且很少更新的資料儲存在磨損最大的實體區段。因此,實體區段之間的耗損程度可以保持一致。
在步驟S140中,轉換層230轉移互換實體區段中的字元。雖然實體區段間的耗損程度變得一致,但在一實體區段中的字元之間的耗損程度並不一致。基於上述原因,在本實施例的情形中,只要實體區段交換,在每一實體區段中的字元被移位以維持字元間的耗損程度的一致性。將參考圖7而更充分地說明。
在步驟S150,轉換層230更新對映表231。由於儲存在實體區段中的資料在步驟S130被交換,而需要在對映表231中更新邏輯區段編號與實體區段編號的對應關係。由於實體區段之間的字元在步驟S140中被轉移,因此移
位計數可能增加,且每一實體區段的寫入計數可能增加。
根據本實施例,記憶系統的耗損平均方法是以上文所述來執行。簡言之,依據本實施例之PRAM元件可能包括多個區段、其中每一區段是由多個字元所組成。依據本實施例之PRAM可能以一區段單元來執行耗損平均操作。因此,與以一字元單元來執行耗損平均方法相比,可以減少儲存系統的負擔。這是因為降低了管理寫入計數的數量。此外,利用在一實體區段中轉移字元來管理字元間的耗損程度是可能的。
圖6表示一種用以描述繪示於圖5之實體區段的交換步驟的區塊圖。請參照圖6,假設第二實體區段SEG2具有最大寫入計數且第四實體區段SEG4具有最小寫入計數。轉換層230儲存第二實體區段SEG2的資料至第四實體區段SEG4。在這種情況下,由於儲存於第四實體區段SEG4的資料是因重寫(overwrite)而抹除,因此其暫時存放在一個單獨的儲存區域(例如,緩衝)。轉換層230將一個緩衝區中(未繪示)的資料儲存至第二實體區段SEG2。實體區段之間的資料交換是經由上述程序的。
依據上文所述,儲存於第二實體區段SEG2的資料被存放於第四實體區段SEG4。但是,在此領域之技藝人員顯然可知資料的儲存順序是可以更改的。利用如上所述交換實體區段來管理實體區段之間的耗損程度是可能的。
圖7表示一種用以描述繪示於圖5中之字元移位步驟的區塊圖。圖7(a)表示在轉移之前的一包括字元的區段,
圖7(b)表示在轉移一次之後的一包括字元的區段。
請參照圖7(a),實體區段可能包括多個字元W1至Wm。由於字元沒有被轉移,移位計數是’0’。這意味著第一個字元W1被放置在實體區段的第一個位置。在這種情況下,從檔案系統220(請參照圖2)轉移的補償數可以代表字元位置。例如,如果補償數是’3’,並且移位計數是’0’,可能表示在對應的實體區段的第三個字元。
請參照圖7(b),由於因為字元被轉移一次,移位計數是’1’。這意味著第一個字元W1位於在實體區段的第二個位置。即,將一從檔案系統220的補償數加上’1’所獲得的數值代表一個字元位置。例如,當補償數是’3‘,且移位計數是’1’時,則表示在實體區段的第四個字元。
每當移位操作進行,移位計數會增加。若移位計數比實體區段的字元的數量更多,可執行除法(模數mod)運算。例如,假設實體區段包括十個字元,並且移位計數是25,由除法運算獲得5。這意味著第一個字元位於在實體區段的第五個位置。藉由上述的移位操作,可以均勻地維護實體區段之間字元的耗損程度。
圖8表示一種用以描述繪示於圖5之對映表的更新步驟的區塊圖。圖8(a)表示在更新之前的一對映表,且圖8(b)表示在更新以後的一對映表。在示範實施例中,假設第二實體區段PSN2具有最大寫入計數,並且第四實體區段PSN4具有最小寫入計數。進一步而言,假設參考值是40。因此,當最大寫入計數與最小寫入計數之間的一寫入計數
差超過40時,執行耗損平均操作。
請參照圖8(a),第二實體區段PSN2對應於第三邏輯區段編號LSN3。第二實體區段PSN2的移位計數是28,且其寫入計數是52。第四實體區段PSN4對應於第五邏輯區段編號LSN5。第四實體區段PSN4的移位計數是5,且因此寫入計數是12。第二實體區段PSN2和第四實體區段PSN4的寫入計數之間的一寫入計數差為40。即,寫入計數差與參考值是完全相同。因此,交換在第二實體區段PSN2的資料與在第四實體區段PSN4的資料。
圖8(b)為一種對映表,其更新是根據在實體區段中的儲存資料的交換操作。請參照圖8(b),第二實體區段PSN2對應於第五邏輯區段編號LSN5。第二實體區段PSN2的移位計數從28增加到29。這是因為在實體區段的字元在交換操作被轉移。第二實體區段PSN2的寫入計數從52增加到53。這是根據實體區段的交換操作而完成的。
第四實體區段PSN4對應於第三邏輯區段編號LSN3。第四實體區段PSN4的移位計數從5增加到6。這是因為實體區段中的字元在交換操作被轉移。第四實體區段PSN4的寫入計數從12增加到13。這是根據實體區段的交換操作而完成的。
綜上所述,藉由交換一具有最大寫入計數之實體區段的儲存資料與一具有最小寫入計數之實體區段的儲存資料,使得降低實體區段之間的耗損程度是可能的。在具有最大寫入計數之實體區段中所儲存的資料被判斷是經常更
新的資料。因此,藉由將經常更新的資料儲存在最少耗損的實體區段,而使降低實體區段之間的耗損程度是可能的。進一步來說,藉由轉移區段中的字元來使得字元間的耗損程度一致是可能的。
對那些在此領域的技藝人員而言,在不脫離本發明之精神和範圍內,可能依據本發明而作各種的些改與變化。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100‧‧‧儲存系統
110‧‧‧中央處理器
120‧‧‧主記憶體
130‧‧‧相變式隨機存取記憶體
210‧‧‧應用程式
220‧‧‧檔案系統
230‧‧‧轉換層
231‧‧‧對映表
240‧‧‧相變式隨機存取記憶體元件
S110‧‧‧啟動耗損平均
S120‧‧‧掃描寫入計數
S130‧‧‧寫入計數差>參考值
S140‧‧‧交換區段
S150‧‧‧移位被交換區段的字元
W1、W2、Wm‧‧‧字元
這些附圖,包括提供對發明的進一步理解和被合併和構成這個規格的部分,說明發明的模範具體化和與描述服務一起解釋發明的方面。
圖1表示依據本發明一實施例所代表之一種記憶系統的區塊圖。
圖2表示一種繪示於圖2之記憶系統的一種軟體層結構之區塊圖。
圖3表示一種繪示於圖2之PRAM元件的一種區段結構的示意圖。
圖4表示一種繪示於圖2之對映表之結構的示意圖。
圖5表示一種用以描述本發明一實施例之耗損平均方法的流程圖。
圖6表示一種用以描述繪示於圖5之實體區段的交換步驟的區塊圖。
圖7表示一種用以描述繪示於圖5中之字元移位步驟
的區塊圖。
圖7(a)表示在轉移之前的一包括字元的區段
圖7(b)表示在轉移一次之後的一包括字元的區段。
圖8表示一種用以描述繪示於圖5之對映表的更新步驟的區塊圖。
圖8(a)表示在更新之前的一對映表
圖8(b)表示在更新以後的一對映表
W1、W2、Wm‧‧‧字元
Claims (15)
- 一種記憶體系統,包括:一可變電阻式記憶體,以一第一單元來輸入與輸出資料;以及一轉換層,以不同於該第一單元之一第二單元來管理該可變電阻式記憶體的耗損程度,其中該轉換層包括一對映表、每一區段的一寫入計數以及每一區段的一移位計數,其中該對映表儲存該記憶體的多個區段的對映資訊。
- 如申請專利範圍第1項所述之記憶體系統,其中該第二單元多於該第一單元。
- 如申請專利範圍第1項所述之記憶體系統,其中該第一單元為一字元單元,該第二單元為一包括多個字元的區段單元。
- 如申請專利範圍第1項所述之記憶體系統,其中該轉換層參考每一區段的寫入計數來管理該可變電阻式記憶體的耗損程度。
- 如申請專利範圍第4項所述之記憶體系統,其中該轉換層交換一具有最大寫入計數之區段的資料與一具有最小寫入計數之區段的資料。
- 如申請專利範圍第5項所述之記憶體系統,當區段中的資料被交換時,該轉換層更新在該對映表中之多個區段的對映資訊。
- 如申請專利範圍第5項所述之記憶體系統,當該些區段中的資料被交換時,該轉換層將每一被交換區段中的 字元移位。
- 如申請專利範圍第7項所述之記憶體系統,當在每一被交換區段中的字元被移位時,該轉換層將在該對映表中更新每一被交換區段中的移位計數。
- 如申請專利範圍第1項所述之記憶體系統,其中該轉換層檢測每一區段的寫入計數,當最大寫入計數與最小寫入計數之間的一寫入計數差大於等於一參考數值時,該轉換層交換一具有最大寫入計數之區段的資料與一具有最小寫入計數之區段的資料。
- 如申請專利範圍第9項所述之記憶體系統,其中該參考數值為可變的。
- 一種記憶體系統的耗損平均方法,其中該記憶體系統包括一可變電阻式記憶體以及一轉換層,其中該可變電阻式記憶體具有多個區段,其中每一區段分別包括多個字元,且以一個字元單元來執行重寫操作,該轉換層用以測量區段的耗損程度,該耗損平均方法包括:檢測每一區段的耗損資訊;以及依據檢測到的耗損資訊交換區段中的資料。
- 如申請專利範圍第11項所述之耗損平均方法,更包括:移位每一被交換區段中的字元。
- 如申請專利範圍第11項所述之耗損平均方法,其中該轉換層參考每一區段的寫入計數來管理該可變電阻式記憶體的耗損程度。
- 如申請專利範圍第13項所述之耗損平均方法,其中該轉換層交換一具有最大寫入計數之區段的資料與一具有最小寫入計數之區段的資料。
- 如申請專利範圍第13項所述之耗損平均方法,其中該轉換層檢測每一區段的一寫入計數,當最大寫入計數與最小寫入計數之間的寫入計數差大於等於一參考數值時,該轉換層交換一具有最大寫入計數之區段的資料與一具有最小寫入計數之區段的資料。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020080030423A KR101437123B1 (ko) | 2008-04-01 | 2008-04-01 | 메모리 시스템 및 그것의 마모도 관리 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200943290A TW200943290A (en) | 2009-10-16 |
TWI492225B true TWI492225B (zh) | 2015-07-11 |
Family
ID=41118864
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW098110889A TWI492225B (zh) | 2008-04-01 | 2009-04-01 | 記憶體系統及其耗損平均方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US8108592B2 (zh) |
KR (1) | KR101437123B1 (zh) |
TW (1) | TWI492225B (zh) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7925822B2 (en) * | 2008-01-31 | 2011-04-12 | Sandisk Il Ltd | Erase count recovery |
KR20100091544A (ko) * | 2009-02-10 | 2010-08-19 | 삼성전자주식회사 | 메모리 시스템 및 그 마모도 관리 방법 |
KR20110066697A (ko) * | 2009-12-11 | 2011-06-17 | 삼성전자주식회사 | 어드레스 맵핑 테이블 관리 방법 및 그것을 사용하는 메모리 장치 |
KR20120126678A (ko) * | 2011-05-12 | 2012-11-21 | 삼성전자주식회사 | 내구성을 향상한 비휘발성 메모리 장치 및 그 동작방법 |
US9076528B2 (en) * | 2011-05-31 | 2015-07-07 | Micron Technology, Inc. | Apparatus including memory management control circuitry and related methods for allocation of a write block cluster |
KR20120136197A (ko) * | 2011-06-08 | 2012-12-18 | 삼성전자주식회사 | 비휘발성 메모리에 대한 웨어 레벨링 방법 |
US9111612B2 (en) | 2012-03-07 | 2015-08-18 | Rambus Inc. | Direct relative measurement of memory durability |
KR20130139084A (ko) * | 2012-06-12 | 2013-12-20 | 삼성전자주식회사 | 메모리 시스템 및 메모리 청크 단위로 메모리를 관리하는 메모리 관리 방법 |
KR102003930B1 (ko) | 2012-07-31 | 2019-07-25 | 삼성전자주식회사 | 불휘발성 메모리 장치의 데이터 라이팅 제어방법 및 웨어레벨링 제어 기능을 가지는 메모리 콘트롤러 |
US20140089560A1 (en) * | 2012-09-25 | 2014-03-27 | Adesto Technologies Corporation | Memory devices and methods having write data permutation for cell wear reduction |
US9442838B2 (en) | 2012-10-22 | 2016-09-13 | Rambus Inc. | Remapping memory cells based on future endurance measurements |
JP6018696B2 (ja) * | 2013-02-27 | 2016-11-02 | 株式会社日立製作所 | 半導体ストレージ |
WO2015051506A1 (en) * | 2013-10-09 | 2015-04-16 | Advanced Micro Devices, Inc. | Enhancing lifetime of non-volatile cache by reducing intra-block write variation |
KR20150095360A (ko) * | 2014-02-13 | 2015-08-21 | 에스케이하이닉스 주식회사 | 저항성 메모리 장치 및 동작 방법 |
KR102188062B1 (ko) * | 2014-02-28 | 2020-12-07 | 삼성전자 주식회사 | 데이터 저장 장치의 동작 방법과 상기 데이터 저장 장치를 포함하는 시스템의 동작 방법 |
US9053790B1 (en) * | 2014-07-01 | 2015-06-09 | Sandisk Technologies Inc. | Counter for write operations at a data storage device |
US9727258B1 (en) | 2014-10-03 | 2017-08-08 | Crossbar, Inc. | Two-terminal memory compatibility with NAND flash memory set features type mechanisms |
US9830087B2 (en) * | 2014-11-13 | 2017-11-28 | Micron Technology, Inc. | Memory wear leveling |
US20160316450A1 (en) * | 2015-04-22 | 2016-10-27 | Pebble Technology Corp. | Living notifications |
KR102513491B1 (ko) | 2015-07-15 | 2023-03-27 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR102424702B1 (ko) * | 2015-11-19 | 2022-07-25 | 삼성전자주식회사 | 불휘발성 메모리 모듈 및 이를 포함하는 전자 장치 |
US9842059B2 (en) * | 2016-04-14 | 2017-12-12 | Western Digital Technologies, Inc. | Wear leveling in storage devices |
KR102615806B1 (ko) * | 2016-05-25 | 2023-12-21 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
KR102664704B1 (ko) * | 2016-10-24 | 2024-05-14 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
KR20180065075A (ko) | 2016-12-06 | 2018-06-18 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 이를 이용한 웨어-레벨링 방법 |
US10248333B1 (en) * | 2017-02-07 | 2019-04-02 | Crossbar, Inc. | Write distribution techniques for two-terminal memory wear leveling |
US10409714B1 (en) | 2017-02-09 | 2019-09-10 | Crossbar, Inc. | Logical to physical translation for two-terminal memory |
US9837153B1 (en) * | 2017-03-24 | 2017-12-05 | Western Digital Technologies, Inc. | Selecting reversible resistance memory cells based on initial resistance switching |
US11269546B2 (en) | 2017-07-18 | 2022-03-08 | Sony Semiconductor Solutions Corporation | Memory controller, memory system, information processing system, and memory control method |
KR102507646B1 (ko) * | 2018-02-01 | 2023-03-09 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그의 동작방법 |
KR20200071916A (ko) | 2018-12-11 | 2020-06-22 | 삼성전자주식회사 | 메모리 시스템 및 메모리 시스템의 동작 방법 |
KR20210121696A (ko) * | 2020-03-31 | 2021-10-08 | 에스케이하이닉스 주식회사 | 컨트롤러 및 메모리 시스템 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040228197A1 (en) * | 2000-09-14 | 2004-11-18 | Nima Mokhlesi | Compressed event counting technique and application to a flash memory system |
US20050044454A1 (en) * | 2000-12-22 | 2005-02-24 | Simpletech, Inc. | System and method for early detection of failure of a solid-state data storage system |
TWI230942B (en) * | 2001-06-08 | 2005-04-11 | Nec Electronics Corp | Non-volatile storage device and rewrite control method thereof |
US20070180328A1 (en) * | 2006-01-27 | 2007-08-02 | Cornwell Michael J | Monitoring health of non-volatile memory |
TW200741739A (en) * | 2005-12-28 | 2007-11-01 | Sandisk Corp | Methods and systems for writing non-volatile memories for increased endurance |
US20070260811A1 (en) * | 2006-05-08 | 2007-11-08 | Merry David E Jr | Systems and methods for measuring the useful life of solid-state storage devices |
US20070266200A1 (en) * | 2006-05-15 | 2007-11-15 | Gorobets Sergey A | Methods of End of Life Calculation for Non-Volatile Memories |
Family Cites Families (7)
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 |
KR100484147B1 (ko) | 2002-07-26 | 2005-04-18 | 삼성전자주식회사 | 플래시 메모리 관리 방법 |
CN100483552C (zh) * | 2002-10-28 | 2009-04-29 | 桑迪士克股份有限公司 | 在非易失性存储系统中执行自动磨损平衡的方法 |
JP4335659B2 (ja) * | 2003-12-19 | 2009-09-30 | 株式会社ルネサステクノロジ | 不揮発性半導体記憶装置 |
US7853749B2 (en) | 2005-09-01 | 2010-12-14 | Cypress Semiconductor Corporation | Flash drive fast wear leveling |
US7245556B1 (en) * | 2005-12-28 | 2007-07-17 | Sandisk Corporation | Methods for writing non-volatile memories for increased endurance |
KR101454817B1 (ko) * | 2008-01-11 | 2014-10-30 | 삼성전자주식회사 | 반도체 메모리 장치 및 그것의 마모도 관리 방법 |
-
2008
- 2008-04-01 KR KR1020080030423A patent/KR101437123B1/ko active IP Right Grant
-
2009
- 2009-03-31 US US12/385,160 patent/US8108592B2/en active Active
- 2009-04-01 TW TW098110889A patent/TWI492225B/zh active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040228197A1 (en) * | 2000-09-14 | 2004-11-18 | Nima Mokhlesi | Compressed event counting technique and application to a flash memory system |
US20050044454A1 (en) * | 2000-12-22 | 2005-02-24 | Simpletech, Inc. | System and method for early detection of failure of a solid-state data storage system |
TWI230942B (en) * | 2001-06-08 | 2005-04-11 | Nec Electronics Corp | Non-volatile storage device and rewrite control method thereof |
TW200741739A (en) * | 2005-12-28 | 2007-11-01 | Sandisk Corp | Methods and systems for writing non-volatile memories for increased endurance |
US20070180328A1 (en) * | 2006-01-27 | 2007-08-02 | Cornwell Michael J | Monitoring health of non-volatile memory |
US20070260811A1 (en) * | 2006-05-08 | 2007-11-08 | Merry David E Jr | Systems and methods for measuring the useful life of solid-state storage devices |
US20070266200A1 (en) * | 2006-05-15 | 2007-11-15 | Gorobets Sergey A | Methods of End of Life Calculation for Non-Volatile Memories |
Also Published As
Publication number | Publication date |
---|---|
KR20090105143A (ko) | 2009-10-07 |
US20090248962A1 (en) | 2009-10-01 |
TW200943290A (en) | 2009-10-16 |
US8108592B2 (en) | 2012-01-31 |
KR101437123B1 (ko) | 2014-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI492225B (zh) | 記憶體系統及其耗損平均方法 | |
TWI590049B (zh) | 記憶體裝置與其操作方法 | |
US9520992B2 (en) | Logical-to-physical address translation for a removable data storage device | |
TWI494922B (zh) | 記憶卡系統中減少頁複製數的寫入與合併方法 | |
US8103820B2 (en) | Wear leveling method and controller using the same | |
TWI566097B (zh) | 邏輯區塊位址位元映射之使用 | |
US8037232B2 (en) | Data protection method for power failure and controller using the same | |
JP4790007B2 (ja) | 相対的な等級を用いて、フラッシュメモリ内の損耗平準化を達成するための方法 | |
US9235507B2 (en) | Memory management device and method | |
TWI402848B (zh) | 半導體記憶裝置 | |
KR101121698B1 (ko) | 반도체 기억 장치 및 기억 제어 방법 | |
TWI442399B (zh) | 存取一快閃記憶體之裝置及方法、及平均地使用該快閃記憶體之區塊之方法 | |
US8621139B2 (en) | Data writing method for writing data into block of multi-level cell NAND flash memory by skipping a portion of upper page addresses and storage system and controller using the same | |
TWI474324B (zh) | 平均讀寫記憶元件的方法及記憶體系統 | |
US8108589B2 (en) | Wear leveling method and controller using the same | |
US8386697B2 (en) | Memory managing method for non-volatile memory and controller using the same | |
US20110145485A1 (en) | Method for managing address mapping table and a memory device using the method | |
TW201232258A (en) | Memory system and operation method thereof | |
JP2007199905A (ja) | 半導体記憶装置の制御方法 | |
JP7095568B2 (ja) | メモリコントローラ及びこれを備えるフラッシュメモリシステム | |
WO2011118114A1 (ja) | 不揮発性記憶装置及びメモリコントローラ | |
CN104102459A (zh) | 一种闪存设备的数据处理方法及闪存设备 | |
JP2013068993A (ja) | メモリコントローラ | |
JP2007179479A (ja) | メモリコントローラおよびフラッシュメモリシステム | |
TWI470428B (zh) | 用於非揮發性記憶體的資料程式規劃系統、記憶體管理方法及其控制器 |