TWI682275B - 資料儲存裝置及其操作方法 - Google Patents

資料儲存裝置及其操作方法 Download PDF

Info

Publication number
TWI682275B
TWI682275B TW104113256A TW104113256A TWI682275B TW I682275 B TWI682275 B TW I682275B TW 104113256 A TW104113256 A TW 104113256A TW 104113256 A TW104113256 A TW 104113256A TW I682275 B TWI682275 B TW I682275B
Authority
TW
Taiwan
Prior art keywords
processor
access count
data
hash value
storage device
Prior art date
Application number
TW104113256A
Other languages
English (en)
Other versions
TW201614494A (en
Inventor
金世玹
楊中燮
金儀珍
李宗珉
Original Assignee
韓商愛思開海力士有限公司
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 韓商愛思開海力士有限公司 filed Critical 韓商愛思開海力士有限公司
Publication of TW201614494A publication Critical patent/TW201614494A/zh
Application granted granted Critical
Publication of TWI682275B publication Critical patent/TWI682275B/zh

Links

Images

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
    • 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/1016Performance improvement
    • 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/7204Capacity control, e.g. partitioning, end-of-life degradation
    • 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/34Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
    • G11C16/349Arrangements for evaluating degradation, retention or wearout, e.g. by counting erase cycles
    • G11C16/3495Circuits or methods to detect or delay wearout of nonvolatile EPROM or EEPROM memory devices, e.g. by counting numbers of erase or reprogram cycles, by using multiple memory areas serially or cyclically

Abstract

本發明提供一種資料儲存裝置,包括一非揮發性記憶體設備,其適用於存取對應於一存取命令的一目標區域,以及一處理器,其適用於基於一第一散列函數計算對應於該目標區域的一第一散列值,並更新由該第一散列值索引的一存取計數。

Description

資料儲存裝置及其操作方法
各種具體實施例係大致關於一種資料儲存裝置,尤其係關於一種於其中執行可靠度維護操作以防止由於非揮發性記憶體設備之特定區域過度存取而使儲存於鄰接於該非揮發性記憶體設備之該特定區域的相鄰區域中的資料毀壞或失去的資料儲存裝置及其操作方法。
本申請案主張在2014年10月07日於韓國智慧財產局申請,且韓國申請號為10-2014-0134982的韓國申請案為優先權基礎案,在此完整併入當作參考。
半導體設備(特別是半導體記憶體設備)可用於儲存資料。記憶體設備一般可分成非揮發性和揮發性記憶體設備。
非揮發性記憶體設備即使無電源下仍會留存所儲存資料。非揮發性記憶體設備包括快閃記憶體,如反及(NAND)和反或(NOR)快閃、鐵電隨機存取記憶體(Ferroelectric random access memory,FeRAM)、相變隨機存取記憶體(Phase change random access memory,PCRAM)、磁性隨機存取記憶體(Magnetic random access memory,MRAM)及電阻隨機存取記憶體(Resistive random access memory,ReRAM)。
揮發性記憶體設備無恆定電源下就無法留存儲存於其中的資料。 揮發性記憶體設備包括靜態隨機存取記憶體(Static random access memory,SRAM)和動態隨機存取記憶體(Dynamic random access memory,DRAM)。
揮發性記憶體設備在需要相對較高處理速度的資料處理系統中可用作緩衝記憶體、快取記憶體、工作記憶體或其類似物。
各種具體實施例係針對一種具有改良資料可靠度的資料儲存裝置。
在一具體實施例中,一種資料儲存裝置可包括:一非揮發性記憶體設備,其適用於存取對應於一存取命令的一目標區域;以及一處理器,其適用於基於第一散列函數計算對應於該目標區域的一第一散列值,並更新由該第一散列值索引的一存取計數。
在另一具體實施例中,一種資料儲存裝置可包括:一非揮發性記憶體設備,其包括對應於單一的一散列值的複數區域;以及一處理器,其適用於管理該等複數區域之共同的存取計數,其中該存取計數由該散列值索引。
在再一具體實施例中,一種用於操作一資料儲存裝置的方法可包括:為回應存取指令,在對應於單一的一散列值的複數區域之中存取一目標區域;以及增加由該散列值索引的存取計數。
10、20‧‧‧資料儲存裝置
100、300‧‧‧控制器
110、310‧‧‧處理器
115‧‧‧散列單元
120‧‧‧記憶體
125、325‧‧‧存取計數表
130‧‧‧錯誤校正碼單元
200‧‧‧非揮發性記憶體設備
210‧‧‧控制邏輯
220‧‧‧介面電路
230‧‧‧位址解碼器
240‧‧‧資料輸入/輸出電路
250‧‧‧記憶晶胞陣列
315‧‧‧第一散列單元
317‧‧‧第二散列單元
325_1、325_2‧‧‧存取計數子表
ADD_T、ADD、ADD_P1-ADD_P8‧‧‧位址
BL‧‧‧位元線
HV‧‧‧散列值
HV1‧‧‧第一共同散列值
HV2‧‧‧第二共同散列值
WL、WL1-WL8‧‧‧字元線
P1-P8‧‧‧頁面
〔圖1〕為例示根據一具體實施例之資料儲存裝置的示例性方塊圖。
〔圖2〕為例示圖1所示之非揮發性記憶體設備的示例性方塊圖。
〔圖3a〕為例示圖2所示之頁面與字元線之間關係的示意圖。
〔圖3b〕為例示圖2所示之頁面與字元線之間關係的另一示意圖。
〔圖4〕為例示圖1所示之散列單元之一操作方法的示意圖。
〔圖5〕為例示圖1所示之資料儲存裝置之一操作方法的流程圖。
〔圖6〕為例示圖1所示之處理器之一可靠度維護操作之一方法的流程圖。
〔圖7〕為例示圖1所示之處理器之一資料檢查操作之一方法的流程圖。
〔圖8和圖9〕為例示圖1所示之處理器之一可靠度維護操作之一方法的示意圖。
〔圖10〕為例示根據一具體實施例之資料儲存裝置的方塊圖。
〔圖11〕為例示圖10所示之第一散列單元和第二散列單元之操作方法的示意圖。
〔圖12〕為例示圖10所示之處理器之可靠度維護操作之方法的示意圖。
在下文中,資料儲存裝置及其操作方法以下將會透過具體實施例之各種範例參照所附圖式進行說明。
圖1為例示根據一具體實施例之資料儲存裝置10的示例性方塊圖。
資料儲存裝置10可儲存由外部裝置(未顯示)所提供的資料,以回應來自該外部裝置的一寫入請求。此外,資料儲存裝置10可將所儲存資料提供給該外部裝置,以回應來自該外部裝置的一讀取請求。資料儲存裝置10可配置藉由個人電腦記憶卡國際協會(Personal Computer Memory Card International Association,PCMCIA)卡、緊密快閃(Compact flash,CF)卡、智慧媒體卡、記憶棒、形式為MMC、eMMC、RS-MMC及MMC-micro的多媒體卡、形式為SD、mini- SD及micro-SD的保全數位卡、通用快閃儲存體(Universal flash storage,UFS)或固態硬碟。
資料儲存裝置10可包括一控制器100和一非揮發性記憶體設備200。
控制器100可包括一處理器110、一記憶體120及一錯誤校正碼(error correction code,ECC)單元130。
處理器110可控制資料儲存裝置10之一般操作。處理器110可產生用於存取非揮發性記憶體設備200之一目標區域的一存取命令,舉例來說,一寫入命令或一讀取命令,並可將該所產生的存取命令提供給非揮發性記憶體設備200。處理器110可驅動用於在記憶體120上控制資料儲存裝置10之操作的一軟體程式。
處理器110可執行一可靠度維護操作。該可靠度維護操作可執行以防止由於非揮發性記憶體設備200之特定區域過度存取而使儲存於鄰接於非揮發性記憶體設備200之該特定區域的一相鄰區域中的資料毀壞或失去。該可靠度維護操作可基於一存取計數表125而透過一資料檢查操作來執行。處理器110可執行該可靠度維護操作(舉例來說,每次透過一讀取命令存取非揮發性記憶體設備200時)。
處理器110可在記憶體120上管理存取計數表125。存取計數表125可包括存取計數之一個或多個值,各該存取計數皆表示非揮發性記憶體設備200之一對應區域被存取多少次。每次存取非揮發性記憶體設備200之目標區域時,處理器110皆可計算對應於非揮發性記憶體設備200之目標區域的一散列值HV,並可在存取計數表125中更新由該所計算散列值HV索引的存取計數。
處理器110可包括一散列單元115。散列單元115可基於該目標區域之一位址ADD_T計算對應於該目標區域的散列值HV。散列單元115可基於散列函數將該目標區域之該位址ADD_T散列到該散列值HV中。舉例來說,散列單元115可實現為硬體,如一數位電路、一類比電路或一數位和類比電路之組合。在其他範例中,散列單元115可實現為一軟體,如一韌體,或者散列單元115可實現為一硬體和軟體之組合。
為有效使用記憶體120之容量,處理器110可透過共同存取計數之一單一值以整合方式管理非揮發性記憶體設備200之複數區域之存取計數。處理器110可在存取該整合管理下的複數區域之任一者時,皆更新該共同存取計數之單一值。亦即,在該整合管理下的複數區域的共同存取計數可為該等複數區域之存取計數之總和。
處理器110可透過一共同散列值以整合方式管理該等複數區域。散列單元115可基於散列函數將在該整合管理下的該等複數區域之該等位址散列到共同散列值中。對該等複數區域的共同存取計數可由該共同散列值索引。總結來說,在存取該整合管理下的複數區域之任一者時,處理器110皆可基於該所存取區域之位址計算對應於該等複數區域的共同散列值,並可更新由該所計算共同散列值索引的共同存取計數。
在該整合管理下的複數區域可對應於不同字元線。在該整合管理下的複數區域可為複數頁面。
在基於存取計數表125判定非揮發性記憶體設備200之一特定區域過度存取的案例中,處理器110可在該特定區域之相鄰區域上執行該資料檢查操作。該資料檢查操作可藉由檢核儲存於該相鄰區域中的資料之毀壞程度 而執行,並根據該資料之該毀壞程度,藉由將儲存於該相鄰區域中的資料還原成該毀壞前之狀態之選擇性執行的回收操作而執行。
記憶體120可用作一工作記憶體、一緩衝記憶體或一快取記憶體。記憶體120可儲存一軟體程式或待由處理器110驅動的各種程式資料、待傳輸於該外部裝置與非揮發性記憶體設備200之間的緩衝資料,或暫時性儲存的快取資料。
記憶體120可儲存由處理器110管理的存取計數表125。如上述,在處理器110透過該共同存取計數以該整合方式管理非揮發性記憶體設備200之複數區域之複數存取計數的案例中,記憶體120可有效使用。若處理器110未以該整合方式管理複數區域之複數存取計數,並管理各該複數區域之複數存取計數,則複數區域之複數存取計數將會與區域數目成比例占用記憶體120。存取計數表125可在非揮發性記憶體設備200中備份。
ECC單元130可對待寫入非揮發性記憶體設備200的資料做ECC編碼(為了錯誤偵測),以及對讀取自非揮發性記憶體設備200的資料做錯誤校正。舉例來說,ECC單元130可為待寫入非揮發性記憶體設備200的資料產生同位資料,並可藉由將該所產生同位資料加入待寫入資料來編碼待寫入的該資料。
ECC單元130可ECC解碼自非揮發性記憶體設備200讀取的資料,亦即,可針對該所讀取的資料執行該錯誤檢查和該錯誤校正。舉例來說,ECC單元130可藉由檢查已發生於該所讀取資料中的錯誤,並透過包括於該所讀取資料中的同位資料而藉由校正該所檢查錯誤執行ECC解碼操作。
在該資料檢查操作為過度存取的該特定區域之該相鄰區域執行 時,ECC單元130可檢核讀取自該相鄰區域的資料之毀壞程度。舉例來說,ECC單元130可藉由偵測在讀取自該相鄰區域的資料中已發生的錯誤而檢核一錯誤發生率。ECC單元130可向處理器110回報自該相鄰區域讀取的資料之錯誤發生率,以使處理器110可判定是否有必要執行將儲存於該相鄰區域中的資料還原成毀壞前之狀態的回收操作。
非揮發性記憶體設備200可在控制器100之控制下儲存資料。非揮發性記憶體設備200可存取對應於一存取指令的一目標區域。
圖2為例示圖1所示之非揮發性記憶體設備200的示例性方塊圖。
非揮發性記憶體設備200可包括一控制邏輯210、一介面電路220、一位址解碼器230、一資料輸入/輸出電路240及一記憶胞陣列250。
控制邏輯210可控制非揮發性記憶體設備200之一般操作。控制邏輯210可控制對記憶胞陣列250的一寫入操作、一讀取操作或一抹除操作,以回應控制器100所提供的一存取命令,舉例來說,一寫入命令、一讀取命令或一抹除命令。
介面電路220可與控制器100交換各種控制信號,包括存取命令和資料。介面電路220可將所輸入的各種控制訊號和資料傳輸到非揮發性記憶體設備200之內部單元。
位址解碼器230可解碼包括於一存取命令中的列位址和行位址。位址解碼器230可控制字元線WL根據該列位址之解碼結果而選擇性驅動。位址解碼器230可控制資料輸入/輸出電路240根據該行位址之解碼結果選擇性驅動位元線BL。
資料輸入/輸出電路240可將自介面電路220傳輸的資料透過該等位元線BL傳輸到記憶胞陣列250。資料輸入/輸出電路240可將讀取自記憶晶胞陣列250的資料透過該等位元線BL傳輸到介面電路220。
記憶胞陣列250可包括複數記憶胞(圖未示),其分別設置於該等字元線WL與該等位元線BL彼此交叉的區域。該等記憶胞可根據儲存於每個胞中的位元數目進行分類。舉例來說,該等記憶胞可分類成每個皆儲存1位元的單階胞和每個皆儲存至少2位元的多階胞。
記憶胞陣列250可包括根據一操作單元劃分的複數儲存區域。舉例來說,記憶胞陣列250可包括第一至第八頁面P1至P8。雖然例示圖2之記憶晶胞陣列250包括8個頁面,但應注意者,包括於記憶晶胞陣列250中的該等頁面數目未具體限制。
頁面可為對記憶胞陣列250藉以執行一寫入操作或一讀取操作的單元。換言之,記憶胞陣列250可以頁面為單位執行存取。頁面可分配具有一對應位址,並可根據一位址執行存取。頁面可藉由驅動一對應字元線而存取。
圖3a為例示圖2所示之頁面P1至P8與該等字元線WL1至WL8之間對應關係的示意圖。
請參照圖3a,單一的一字元線可對應於單一的一頁面。包括於記憶胞陣列250中之各自的第一頁面至第八頁面P1至P8可分別對應於第一字元線至第八字元線WL1至WL8。在1條字元線對應於1個頁面時,電耦合於一字元線的記憶胞可為單階胞。
如上述,在該可靠度維護操作中,對應於該目標區域的該存取計數可更新,且該資料檢查操作可針對該相鄰區域執行。該目標區域和該相鄰區域 可對應於彼此鄰接的字元線。在1條字元線對應於1個頁面時,在該目標區域為,舉例來說,該第三頁面P3的案例中,該等相鄰區域可為該等第二頁面和第四頁面P2和P4。
圖3b為例示圖2所示之頁面P1至P8與字元線WL1至WL8之間其他對應關係的示意圖。
參照圖3b,單一的一字元線可對應於兩個頁面。包括於記憶晶胞陣列250中的該等第一頁面和第二頁面P1和P2可對應於第一字元線WL1,該等第三頁面和第四頁面P3和P4可對應於第二字元線WL2,該等第五頁面和第六頁面P5和P6可對應於第三字元線WL3,且該等第七頁面和第八頁面P7和P8可對應於第四字元線WL4。在1條字元線對應於2個頁面時,電耦合於字元線的該等記憶胞可為多階胞。
如上述,在該可靠度維護操作中,對應於該目標區域的該存取計數可更新,且該資料檢查操作可針對該相鄰區域執行。該目標區域和該相鄰區域可對應於鄰接字元線。在單一字元線對應於2個頁面時,在該目標區域為,舉例來說,該第三頁面P3的案例中,該等相鄰區域可為第一頁面、第二頁面、第五頁面及第六頁面P1、P2、P5及P6。
圖4為例示圖1所示之散列單元115之一操作方法以計算對應於由存取命令所存取之目標區域之散列值HV的示意圖。參照圖4,亦顯示出由該等散列值HV索引的存取計數表125。
散列單元115可計算對應於圖2之第一頁面至第八頁面P1至P8的散列值HV。散列單元115可基於一散列函數將各自的第一頁面至第八頁面P1至P8之位址ADD散列到對應的該等散列值HV中之其一者。舉例來說,在由 該存取指令存取的目標區域為該第一頁面P1的案例中,散列單元115可將該第一頁面P1之位址ADD_P1散列到該共同散列值「2」中。
如上述,處理器110可以該整合方式管理複數頁面之存取計數,且為此目的,散列單元115可將該等複數頁面之位址散列到該共同散列值中。待散列到該共同散列值的複數頁面可由一散列函數判定。
在存取複數頁面之任一者的案例中,其之存取計數以該整合方式管理,散列單元115可計算對應的該等共同散列值之一。該所計算共同散列值可為對該等複數頁面以該整合方式管理的該共同存取計數之該索引值。
參照圖4,散列單元115可將,舉例來說,該等第三頁面和第八頁面P3和P8之位址ADD_P3和ADD_P8散列到該共同散列值「1」中。在該等第三頁面和第八頁面P3和P8中之任一者被存取的案例中,散列單元115可計算該共同散列值「1」。此種散列將會導致處理器110以該整合方式管理該等第三頁面和第八頁面P3和P8之存取計數(藉由將其索引到該共同散列值「1」)。
雖然圖4例示散列單元115將2個頁面之位址散列到共同散列值中,但應注意待散列到共同散列值中的頁面數目未具體限制。在該等具體實施例中,其以該整合方式管理的存取計數之頁面數目未具體限制。
圖5為例示圖1所示之資料儲存裝置10之一操作方法的流程圖。
在步驟S110中,處理器110可產生用於存取該目標區域的存取命令。舉例來說,處理器110可產生用於從該目標區域讀取資料的一讀取命令。非揮發性記憶體設備200將會存取該目標區域,以回應處理器110所提供的存取命令。
在步驟S120中,處理器110可執行可靠度維護操作。該可靠度維護操作可基於存取計數表125由該資料檢查操作執行。
處理器110可在每次非揮發性記憶體設備200存取時執行該可靠度維護操作。處理器110可例如在每次透過該讀取命令存取非揮發性記憶體設備200時,執行該可靠度維護操作。
圖6為例示圖1所示之處理器110之一可靠度維護操作之一方法的流程圖。用於圖6所示之處理器110之一可靠度維護操作的一方法可對應於圖5之步驟S120。假設處理器110已產生用於存取該目標區域的存取命令。
在步驟S210中,散列單元115可計算對應於該目標區域的共同散列值。散列單元115可基於一散列函數將該目標區域之位址散列到對應的散列值之一。
在步驟S220中,處理器110可增加由該所計算共同散列值索引的共同存取計數。
在步驟S230中,處理器110可判定該所更新的共同存取計數是否達到一臨界值。在判定該所更新的共同存取計數達到該臨界值(是)的案例中,該程序可進行到步驟S240。在判定該所更新的共同存取計數未達到該臨界值(否)的案例中,該程序可結束。亦即,在該所更新的共同存取計數未達到該臨界值的案例中,由於暗示該目標區域尚未過度存取,因此處理器110可結束該可靠度維護操作。
在步驟S240中,處理器110可針對鄰接於該目標區域的相鄰區域執行該資料檢查操作。該資料檢查操作可藉由檢核儲存於該相鄰區域中的資料之毀壞程度而執行,並根據該資料之毀壞程度,藉由將儲存於該相鄰區域中的 資料還原成毀壞前之狀態之選擇性執行的回收操作而執行。
在步驟S250中,處理器110可減少由步驟S210中所計算出該共同散列值索引的共同存取計數。由於儲存於該相鄰區域中的該資料透過步驟S240中的該資料檢查操作執行檢查,因此處理器110可減少對應於該目標區域的該共同存取計數,以延遲對該相鄰區域的後續資料檢查操作。
如上述,處理器110可管理在包括該目標區域之整合管理下的複數區域之共同存取計數。在此案例中,在步驟S220中所增加的共同存取計數亦可藉由在該整合管理下在該等複數區域之中存取該目標區域以外之區域而增加。即使該共同存取計數藉由對該目標區域的存取而達到該臨界值,但此種結果甚至可在該整合管理下藉由對該目標區域以外之的其他區域之過度存取而導致。因此,由於處理器110未完全重置對應於該目標區域的共同存取計數,而是將該共同存取計數減少到一預定值,因此在該整合管理下在該等複數區域之中對該目標區域以外之該等區域的過度存取之機率可維護達一定程度。
圖7為例示圖1所示處理器110之一資料檢查操作之一方法的流程圖。圖7所示處理器110之資料檢查操作之方法可對應於圖6之步驟S240。
在步驟S310中,處理器110可讀取儲存於鄰接於該目標區域的相鄰區域中的資料。
在步驟S320中,ECC單元130可檢核讀取自該相鄰區域的資料之錯誤發生率。ECC單元130可向處理器110回報該錯誤發生率,以使處理器110可判定是否有必要為該相鄰區域執行該回收操作。
在步驟S330中,處理器110可基於讀取自該相鄰區域的錯誤發生率判定是否有必要為該相鄰區域執行該回收操作。舉例來說,處理器110可將 該錯誤發生率與一臨界值比較,並判定在該錯誤發生率超出該臨界值時有必要執行該回收操作。在判定有必要執行該回收操作(是)的案例中,該程序可進行到步驟S340。在判定不必執行該回收操作(否)的案例中,該程序可結束。
在步驟S340中,處理器110可針對該相鄰區域執行該回收操作,以將儲存於該相鄰區域中的資料還原成毀壞前之狀態。舉例來說,處理器110可透過一無用資料收集操作執行該回收操作。處理器110可藉由將儲存於該相鄰區域中的資料恢復到另一區域中,將儲存於該相鄰區域中的資料還原成毀壞前之狀態。
圖8和圖9為例示圖1所示處理器110之一可靠度維護操作之一方法的示意圖。圖8顯示在處理器110在圖6所示之步驟230中判定該所更新的共同存取計數未達到該臨界值(否)時,處理器110之一可靠度維護操作的方法。圖9顯示在處理器110在圖6所示之步驟230中判定該所更新的共同存取計數達到該臨界值(是)時,處理器110之一可靠度維護操作的方法。假設處理器110執行該可靠度維護操作以在每次透過一讀取命令存取非揮發性記憶體設備200時,防止因該目標區域施加於該相鄰區域上之一讀取干擾效應所造成的資料毀壞或資料失去。
在下文中,處理器110執行該可靠度維護操作的方法將會參照圖4、圖6及圖8詳細進行說明。假設處理器110已為該目標區域(例如該第二頁面P2)產生一讀取命令,並已讀取該第二頁面P2。
散列單元115可計算對應於該第二頁面P2(
Figure 104113256-A0305-02-0015-16
)的共同散列值HV。散列單元115可根據圖4所示之計算方法,而基於該散列函數將該第二頁面P2之位址ADD_P2散列到該共同散列值「3」中。
處理器110可增加藉由在記憶體120(
Figure 104113256-A0305-02-0016-17
)上之存取計數表125中的共同散列值「3」而索引的共同存取計數。
處理器110可判定該所更新的共同存取計數是否達到該臨界值。在該臨界值設定為100的案例中,由於該所更新的共同存取計數仍為76,因此處理器110可判定其未達到該臨界值。處理器110可結束該可靠度維護操作。
接著,處理器110執行該可靠度維護操作的另一方法將會參照圖4、圖6及圖9詳細進行說明。假設處理器110已為該目標區域(例如該第三頁面P3)產生讀取命令,並已讀取該第三頁面P3。
散列單元115可計算對應於該第三頁面P3(
Figure 104113256-A0305-02-0016-18
)的共同散列值HV。散列單元115可根據圖4所示之計算方法,而基於該散列函數將該第三頁面P3之位址ADD_P3散列到該共同散列值「1」中。
處理器110可增加藉由在記憶體120(
Figure 104113256-A0305-02-0016-19
)上之存取計數表125中的共同散列值「1」而索引的共同存取計數。
處理器110可判定該所更新的共同存取計數是否達到該臨界值。在該臨界值設定為100的案例中,由於該所更新的共同存取計數為100,因此處理器110可判定其已達到該臨界值。
處理器110可針對該等相鄰區域(
Figure 104113256-A0305-02-0016-21
)執行該資料檢查操作。在單一的一字元線對應於單一的一頁面時,如圖3A所示,處理器110可針對該等第二頁面和第四頁面P2和P4執行該資料檢查操作。雖然未例示出,在單一的一字元線對應於2個頁面時,處理器110可針對為該目標區域或該第三頁面P3之相鄰區域的第一頁面、第二頁面、第五頁面及第六頁面P1、P2、P5及P6執行該資料檢查操作。
針對該等相鄰區域執行該資料檢查操作後,處理器110可減少藉由在存取計數表125(
Figure 104113256-A0305-02-0017-22
)中的共同散列值「1」而索引的共同存取計數。由於儲存於該等第二頁面和第四頁面P2和P4中的資料透過該資料檢查操作執行檢查,因此處理器110可減少該共同存取計數以延遲針對該等第二頁面和第四頁面P2和P4的一後續資料檢查操作。然而,由於藉由該共同散列值「1」而索引的共同存取計數對應於在該整合管理下的該等第三頁面和第八頁面P3和P8兩者,如圖4所示,因此處理器110可將藉由該共同散列值「1」而索引的共同存取計數減少為一預定值(例如70)。亦即,處理器110可不完全重置藉由該共同散列值「1」而索引的共同存取計數,以對在該整合管理下的第八頁面P8而非第三頁面P3維護過度存取之一些機率。
圖10為例示根據一具體實施例之一資料儲存裝置20的方塊圖。在圖10中,與圖1相同的元件符號大致上將會用於與上述參照圖1之資料儲存裝置10相同的元件,並會省略對該等對應元件的詳細說明。
資料儲存裝置20可與參照圖1所述之一資料儲存裝置10相同,而不同之處在於控制器300包括一第一散列單元315和一第二散列單元317。
處理器310可管理存取計數表325。處理器310可在每次透過存取命令存取非揮發性記憶體設備200時,計算對應於非揮發性記憶體設備200之目標區域的複數共同散列值(例如第一共同散列值HV1和第二共同散列值HV2),並可同時更新分別藉由該等第一共同散列值和第二共同散列值HV1和HV2而索引之在存取計數表325中的共同存取計數。
處理器310可包括第一散列單元315和第二散列單元317。各該第一散列單元315和第二散列單元317皆可與參照圖1至圖9所述的散列單元 115相同。第一散列單元315和第二散列單元317可分別計算對應於該目標區域的不同之共同散列值。第一散列單元315可基於一第一散列函數將該目標區域之位址ADD_T散列到該第一共同散列值HV1中。第二散列單元317可基於一第二散列函數將該目標區域之位址ADD_T散列到該第二共同散列值HV2中。
雖然圖10顯示處理器310包括兩個散列單元,但應注意者,包括於處理器310中的散列單元數目未具體限制。根據一具體實施例,對應於目標區域的不同之散列值可藉由包括於處理器310中的散列單元數目進行計算,且處理器310可更新藉由該等所計算之散列值而索引的所有存取計數。
圖11為例示圖10所示之第一散列單元315和第二散列單元317之一操作方法,以計算對應於由該存取命令所存取之單一的一目標區域之不同之散列值HV(即該第一共同散列值HV1和該第二共同散列值HV2)的示意圖。參照圖11,亦顯示出藉由該等散列值HV而索引的存取計數表325。
第一散列單元315和第二散列單元317可計算對應於各自之第一頁面第八頁面P1至P8的第一共同散列值HV1和第二共同散列值HV2。第一散列單元315可基於該第一散列函數將各自之第一頁面至第八頁面P1至P8之位址ADD散列到該第一共同散列值HV1之對應之其一者。第二散列單元317可基於該第二散列函數將各自之第一頁面至第八頁面P1至P8之位址ADD散列到該第二共同散列值HV2之對應之其一者。舉例來說,在由該存取命令存取的目標區域為該第三頁面P3的案例中,第一散列單元315可將該第三頁面P3之位址ADD_P3散列到該第一共同散列值「1」中,且第二散列單元317可將該第三頁面P3之位址ADD_P3散列到該第二共同散列值「3」中。
假設處理器310藉由第一散列單元315僅計算該等第一共同散 列值HV1,則處理器310將會管理藉由該等第一共同散列值HV1而索引的第一存取計數子表325_1。同樣地,假設處理器310藉由第二散列單元317僅計算該等第二共同散列值HV2,則處理器310將會管理藉由該等第二共同散列值HV2而索引的第二存取計數子表325_2。由於處理器310藉由第一散列單元315和第二散列單元317計算該等第一共同散列值HV1和該等第二共同散列值HV2,因此處理器310可管理整合於該第一存取計數子表325_1和該第二存取計數子表325_2之中的存取計數表325。舉例來說,在該第一存取計數子表325_1中的第一共同散列值「1」可為該等第三頁面和第八頁面P3和P8兩者索引該共同存取計數,並且在該第二存取計數子表325_2中的該第二共同散列值「1」可為該等第一頁面和第五頁面P1和P5兩者索引該共同存取計數。因此,在存取計數表325中的該共同散列值「1」可索引該等第一頁面、第三頁面、第五頁面及第八頁面P1、P3、P5及P8之四者。
圖12為例示圖10所示之處理器310之一可靠度維護操作之一方法的示意圖。假設處理器310執行該可靠度維護操作以在每次透過一讀取命令存取非揮發性記憶體設備200時,防止因該目標區域施加於該相鄰區域上之讀取干擾效應所造成的資料毀壞或資料失去。
在下文中,處理器310執行該可靠度維護操作的方法將會參照圖10至圖12詳細進行說明。假設處理器310為該目標區域(例如第三頁面P3)產生一讀取命令,並讀取該第三頁面P3。
第一散列單元315和第二散列單元317可分別計算對應於該第三頁面P3(
Figure 104113256-A0305-02-0019-23
)的第一共同散列值HV1和第二共同散列值HV2。第一散列單元315可根據圖11所示之計算方法,而基於該第一散列函數將該第三頁面P3之位 址ADD_P3散列到該第一共同散列值「1」中。第二散列單元317可根據圖11所示之計算方法,而基於該第二散列函數將該第三頁面P3之位址ADD_P3散列到該第二共同散列值「3」中。
處理器310可增加藉由在記憶體120上之存取計數表325中的所計算第一共同散列值「1」從49至50而索引的共同存取計數,並增加藉由該所計算第二共同散列值「3」從30至31(
Figure 104113256-A0305-02-0020-24
)而索引的共同存取計數。
處理器310可判定該等所更新的共同存取計數之一個或多個是否達到該臨界值。在該臨界值設定為50的案例中,處理器310可判定藉由該第一共同散列值「1」而索引的共同存取計數已達到該臨界值。
處理器310可針對該等相鄰區域(
Figure 104113256-A0305-02-0020-25
)執行該資料檢查操作。在單一的一頁面對應於單一的一字元線時,處理器310可針對該等第二頁面和第四頁面P2和P4執行該資料檢查操作。雖然未例示出,在單一的一字元線對應於2個頁面時,處理器310可針對該目標區域或該第三頁面P3之相鄰區域的第一頁面、第二頁面、第五頁面及第六頁面P1、P2、P5及P6執行該資料檢查操作。
針對該等相鄰區域執行該資料檢查操作後,處理器310可減少藉由在存取計數表325(
Figure 104113256-A0305-02-0020-26
)中的第一共同散列值「1」而索引的共同存取計數。由於儲存於該等第二頁面和第四頁面P2和P4中的資料透過該資料檢查操作執行檢查,因此處理器310可減少該共同存取計數以延遲針對該等第二和第四頁面P2和P4的一後續資料檢查操作。然而,由於藉由該第一共同散列值「1」而索引的共同存取計數對應於在該整合管理下的所有該等第一頁面、第三頁面、第五頁面及第八頁面P1、P3、P5及P8,如圖11所示,因此處理器310可將藉由該第一共同散列值「1」而索引的共同存取計數減少為一預設值(例如25)。換言之, 處理器310可不完全重置藉由該第一共同散列值「1」而索引的共同存取計數,以對在該整合管理下的該等第一頁面、第五頁面及第八頁面P1、P5及P8而非該第三頁面P3維護過度存取之一些機率。
上述參照圖10至圖12的資料儲存裝置20在下列情況下可為有效。舉例來說,在圖12中假設該第八頁面P8在該第三頁面P3被存取前已過度存取。該第八頁面P8可藉由第一散列單元315對應於該第一共同散列值「1」,並藉由第二散列單元317對應於該第二共同散列值「4」。據此,在藉由該第一共同散列值「1」和該第二共同散列值「4」而索引的存取計數表325中的共同存取計數可加速接近該臨界值(例如分別為49和48)。在這種狀態下,由於對該第三頁面P3的存取所造成之結果,在藉由該第一共同散列值「1」而索引的存取計數表325中的共同存取計數可達到該臨界值50,然後可減少為25。然而,由於在藉由該第二共同散列值「4」而索引的存取計數表325中的共同存取計數維持原樣,因此針對該第八頁面P8之相鄰區域執行該資料檢查操作的機會可在稍早時間點提供,因此,資料可靠度得以改良。
如上所述,明顯地,根據該等具體實施例的資料儲存裝置可提供改良的資料可靠度。
雖然上述已說明各種具體實施例,但熟習此項技術者應可理解所述之具體實施例僅為範例。據此,於文中所述之資料儲存裝置及其操作方法不應基於該等所述之具體實施例而加以限制。
10‧‧‧資料儲存裝置
100‧‧‧控制器
110‧‧‧處理器
115‧‧‧散列單元
120‧‧‧記憶體
125‧‧‧存取計數表
130‧‧‧錯誤校正碼(ECC)單元
200‧‧‧非揮發性記憶體設備

Claims (20)

  1. 一種資料儲存裝置,包含:一非揮發性記憶體設備,其適用於存取對應於一存取命令的一目標區域;以及一處理器,其適用於基於一第一散列函數計算對應於該目標區域的一第一散列值,更新藉由該第一散列值而索引的一存取計數,並基於該經過更新的存取計數來為鄰接於該目標區域的一個或多個相鄰區域執行一資料檢查操作。
  2. 如申請專利範圍第1項所述之資料儲存裝置,其中該處理器基於該目標區域之一位址計算該第一散列值。
  3. 如申請專利範圍第1項所述之資料儲存裝置,其中該第一散列值共同對應於該非揮發性記憶體設備之複數區域,且其中該處理器在存取該等複數區域之任一者時,更新藉由該第一散列值而索引的存取計數。
  4. 如申請專利範圍第3項所述之資料儲存裝置,其中該等區域對應於不同的字元線。
  5. 如申請專利範圍第1項所述之資料儲存裝置,其中該處理器藉由增加該存取計數而更新該存取計數。
  6. 如申請專利範圍第5項所述之資料儲存裝置,其中該處理器將該所更新存取計數與一臨界值比較,並根據該比較執行該資料檢查操作。
  7. 如申請專利範圍第6項所述之資料儲存裝置,其中該處理器在為該等相鄰區域執行該資料檢查操作後,減少該所增加的存取計數。
  8. 如申請專利範圍第1項所述之資料儲存裝置,其中該處理器基於一第二散列函數計算對應於該目標區域的一第二散列值,並更新藉由該第二散列值而索引的一存取計數。
  9. 一種資料儲存裝置,包含:一非揮發性記憶體設備,其包括對應於單一的一散列值的複數區域;以及一處理器,其適用於管理該等區域之一共同存取計數,並基於該存取計數來為鄰接於該目標區域的一個或多個相鄰區域執行一資料檢查操作,其中該共同存取計數藉由該散列值而索引。
  10. 如申請專利範圍第9項所述之資料儲存裝置,其中該等區域對應於不同的字元線。
  11. 如申請專利範圍第9項所述之資料儲存裝置,其中該處理器包含一散列單元,其適用於基於該等複數區域之其一者的一位址計算該散列值。
  12. 如申請專利範圍第9項所述之資料儲存裝置,其中該處理器在存取該等複數區域之其一者的一目標區域時,增加該共同存取計數。
  13. 如申請專利範圍第12項所述之資料儲存裝置,其中該處理器將該所增加共同存取計數與一臨界值比較,並根據該比較執行該資料檢查操作。
  14. 如申請專利範圍第13項所述之資料儲存裝置,其中該處理器在為該等相鄰區域執行該資料檢查操作後,減少該所增加共同存取計數。
  15. 一種用於操作一資料儲存裝置的方法,包含:為回應一存取命令,在對應於單一的一散列值的複數區域之中存取一目標區域; 增加藉由該散列值而索引的一存取計數;以及基於該經過增加的存取計數來為鄰接於該目標區域的一個或多個相鄰區域執行一資料檢查操作。
  16. 如申請專利範圍第15項所述之方法,其中該等區域對應於不同的字元線。
  17. 如申請專利範圍第15項所述之方法,更包含:基於該目標區域之一位址計算該散列值。
  18. 如申請專利範圍第15項所述之方法,更包含:將該所增加存取計數與一臨界值比較;以及根據該比較執行該資料檢查操作。
  19. 如申請專利範圍第18項所述之方法,其中為該相鄰區域的資料檢查操作之執行包含:讀取儲存於該等相鄰區域中的資料;檢核自該等相鄰區域讀取的資料之一錯誤發生率;以及根據該錯誤發生率,選擇性執行一回收操作以還原儲存於該等相鄰區域中的資料。
  20. 如申請專利範圍第18項所述之方法,更包含在執行該資料檢查操作後,減少該所增加的存取計數。
TW104113256A 2014-10-07 2015-04-24 資料儲存裝置及其操作方法 TWI682275B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020140134982A KR20160042224A (ko) 2014-10-07 2014-10-07 데이터 저장 장치 및 그것의 동작 방법
KR10-2014-0134982 2014-10-07

Publications (2)

Publication Number Publication Date
TW201614494A TW201614494A (en) 2016-04-16
TWI682275B true TWI682275B (zh) 2020-01-11

Family

ID=55632849

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104113256A TWI682275B (zh) 2014-10-07 2015-04-24 資料儲存裝置及其操作方法

Country Status (4)

Country Link
US (2) US20160098214A1 (zh)
KR (1) KR20160042224A (zh)
CN (1) CN105489242B (zh)
TW (1) TWI682275B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10275541B2 (en) * 2016-08-05 2019-04-30 Micron Technology, Inc. Proactive corrective actions in memory based on a probabilistic data structure
KR20180076765A (ko) * 2016-12-28 2018-07-06 에스케이하이닉스 주식회사 메모리 시스템 및 메모리 시스템의 동작 방법
CN106875977A (zh) * 2017-02-27 2017-06-20 郑州云海信息技术有限公司 一种固态硬盘调试方法及装置
US10379757B2 (en) * 2017-04-07 2019-08-13 Micron Technology, Inc. Methods of sketch-based memory management and memory devices utilizing the same
US10324634B2 (en) * 2017-04-07 2019-06-18 Micron Technology, Inc. Methods of bit-flagged sketch-based memory management and memory devices utilizing the same

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6446223B1 (en) * 1998-09-09 2002-09-03 Hitachi, Ltd. Storage system and method for controlling the same
TW201106363A (en) * 2009-08-06 2011-02-16 Novatek Microelectronics Corp Flash memory and access method thereof
TW201207859A (en) * 2010-08-13 2012-02-16 Mstar Semiconductor Inc Method and associated controller for flash memory
US20130339659A1 (en) * 2012-06-14 2013-12-19 International Business Machines Corporation Managing accessing page table entries
US20140006848A1 (en) * 2012-06-29 2014-01-02 Raj K. Ramanujan Bad block management mechanism
TW201417100A (zh) * 2012-10-22 2014-05-01 Hewlett Packard Development Co 回應於存在可能擾動以更新一群記憶體胞元之技術
TW201430848A (zh) * 2013-01-31 2014-08-01 Hewlett Packard Development Co 隨機存取記憶體再新率技術

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6347362B1 (en) * 1998-12-29 2002-02-12 Intel Corporation Flexible event monitoring counters in multi-node processor systems and process of operating the same
US6104638A (en) * 1999-02-26 2000-08-15 Hewlett-Packard Company Use of erasable non-volatile memory for storage of changing information
US6799241B2 (en) * 2002-01-03 2004-09-28 Intel Corporation Method for dynamically adjusting a memory page closing policy
US20070208904A1 (en) 2006-03-03 2007-09-06 Wu-Han Hsieh Wear leveling method and apparatus for nonvolatile memory
CN101290635A (zh) * 2008-06-24 2008-10-22 中兴通讯股份有限公司 一种基于特征字的内存管理方法及其装置
US7818525B1 (en) * 2009-08-12 2010-10-19 Texas Memory Systems, Inc. Efficient reduction of read disturb errors in NAND FLASH memory
US8935487B2 (en) 2010-05-05 2015-01-13 Microsoft Corporation Fast and low-RAM-footprint indexing for data deduplication
WO2011107046A2 (zh) * 2011-04-19 2011-09-09 华为技术有限公司 内存访问监测方法和装置
US9176800B2 (en) 2011-08-31 2015-11-03 Micron Technology, Inc. Memory refresh methods and apparatuses
US20130097403A1 (en) 2011-10-18 2013-04-18 Rambus Inc. Address Mapping in Memory Systems
US8910000B2 (en) * 2012-05-17 2014-12-09 Micron Technology, Inc. Program-disturb management for phase change memory
CN103176752A (zh) 2012-07-02 2013-06-26 晶天电子(深圳)有限公司 带有耐用转换层及临时文件转移功能从而实现闪速存储器磨损降低的超耐用固态驱动器
US8804418B1 (en) * 2012-08-31 2014-08-12 Cadence Design Systems, Inc. Low overhead read disturbance protection method for NAND flash device
US9213852B2 (en) * 2012-12-12 2015-12-15 Vmware, Inc. Limiting access to a digital item
US9087554B1 (en) * 2012-12-21 2015-07-21 Samsung Electronics Co., Ltd. Memory device, method for performing refresh operation of the memory device, and system including the same
US9058870B2 (en) * 2013-02-08 2015-06-16 Seagate Technology Llc Hash functions used to track variance parameters of resistance-based memory elements
US9189409B2 (en) * 2013-02-19 2015-11-17 Avago Technologies General Ip (Singapore) Pte. Ltd. Reducing writes to solid state drive cache memories of storage controllers
US9092336B2 (en) * 2013-03-15 2015-07-28 Intelligent Intellectual Property Holdings 2 Llc Write admittance policy for a memory cache
CN103150136B (zh) 2013-03-25 2014-07-23 中国人民解放军国防科学技术大学 基于ssd的大容量缓存中的lru策略实现方法
US9298620B2 (en) * 2013-11-25 2016-03-29 Apple Inc. Selective victimization in a multi-level cache hierarchy
US9240235B2 (en) * 2013-12-19 2016-01-19 Sandisk Technologies Inc. Mitigating disturb effects for non-volatile memory
US9230689B2 (en) * 2014-03-17 2016-01-05 Sandisk Technologies Inc. Finding read disturbs on non-volatile memories
US9405703B2 (en) * 2014-06-04 2016-08-02 Advanced Micro Devices, Inc. Translation lookaside buffer

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6446223B1 (en) * 1998-09-09 2002-09-03 Hitachi, Ltd. Storage system and method for controlling the same
TW201106363A (en) * 2009-08-06 2011-02-16 Novatek Microelectronics Corp Flash memory and access method thereof
TW201207859A (en) * 2010-08-13 2012-02-16 Mstar Semiconductor Inc Method and associated controller for flash memory
US20130339659A1 (en) * 2012-06-14 2013-12-19 International Business Machines Corporation Managing accessing page table entries
US20140006848A1 (en) * 2012-06-29 2014-01-02 Raj K. Ramanujan Bad block management mechanism
TW201417100A (zh) * 2012-10-22 2014-05-01 Hewlett Packard Development Co 回應於存在可能擾動以更新一群記憶體胞元之技術
TW201430848A (zh) * 2013-01-31 2014-08-01 Hewlett Packard Development Co 隨機存取記憶體再新率技術

Also Published As

Publication number Publication date
US11010289B2 (en) 2021-05-18
KR20160042224A (ko) 2016-04-19
US20160098214A1 (en) 2016-04-07
CN105489242B (zh) 2021-02-05
TW201614494A (en) 2016-04-16
CN105489242A (zh) 2016-04-13
US20190196954A1 (en) 2019-06-27

Similar Documents

Publication Publication Date Title
US9678827B2 (en) Access counts for performing data inspection operations in data storage device
US20210026732A1 (en) Memory systems for performing failover
US11010289B2 (en) Data storage device and operating method thereof
US20170177259A1 (en) Techniques to Use Open Bit Line Information for a Memory System
US9564239B2 (en) Memory controller and operating method thereof
US9361182B2 (en) Method for read disturbance management in non-volatile memory devices
US10818371B2 (en) Data storage devices and data processing methods
KR101655306B1 (ko) 메모리 시스템 및 그것의 액세스 방법
US9875035B2 (en) Memory system having a read and copy-back operation and method for the same
US9563249B2 (en) Data storage device and power-interruption detection method
TWI566252B (zh) 非揮發性記憶體裝置進行耗損管理之方法
US10020822B2 (en) Error tolerant memory system
US20060277359A1 (en) Blank memory location detection mechanism
US20190065308A1 (en) Data storage method for detecting data storage device and its data storage device
US8924774B2 (en) Semiconductor memory device and method for operating the same
US9619323B2 (en) Data storage device and operating method thereof
US10199107B2 (en) Data storage device and data refresh method thereof
US11087846B1 (en) Memory system with single decoder, multiple memory sets and method for decoding multiple codewords from memory sets using the single decoder
KR20190068197A (ko) 메모리 시스템 및 메모리 시스템의 동작방법
US20150309864A1 (en) Data storage device and method for operating the same
US10073685B2 (en) Methods of system optimization by over-sampling read
KR102527288B1 (ko) 데이터 저장 장치 및 그것의 동작 방법
US11119853B2 (en) Predicted error correction apparatus, operation method thereof and memory system using the same
TWI691967B (zh) 解碼方法及相關的快閃記憶體控制器與電子裝置
TW201717024A (zh) 資料儲存裝置及其資料維護方法