TWI762033B - 記憶體裝置以及用於操作記憶體裝置的方法 - Google Patents
記憶體裝置以及用於操作記憶體裝置的方法 Download PDFInfo
- Publication number
- TWI762033B TWI762033B TW109139892A TW109139892A TWI762033B TW I762033 B TWI762033 B TW I762033B TW 109139892 A TW109139892 A TW 109139892A TW 109139892 A TW109139892 A TW 109139892A TW I762033 B TWI762033 B TW I762033B
- Authority
- TW
- Taiwan
- Prior art keywords
- refresh
- block
- memory
- backup
- map
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding 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/1068—Adding 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0629—Configuration or reconfiguration of storage systems
- G06F3/0631—Configuration or reconfiguration of storage systems by allocating resources to storage systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/0644—Management of space entities, e.g. partitions, extents, pools
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
- G06F3/065—Replication mechanisms
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
- G11C29/42—Response verification devices using error correcting codes [ECC] or parity check
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/70—Masking faults in memories by using spares or by reconfiguring
- G11C29/78—Masking faults in memories by using spares or by reconfiguring using programmable devices
- G11C29/783—Masking faults in memories by using spares or by reconfiguring using programmable devices with refresh of replacement cells, e.g. in DRAMs
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/10—Programming or data input circuits
- G11C16/14—Circuits for erasing electrically, e.g. erase voltage switching circuits
- G11C16/16—Circuits for erasing electrically, e.g. erase voltage switching circuits for erasing blocks, e.g. arrays, words, groups
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/18—Address generation devices; Devices for accessing memories, e.g. details of addressing circuits
- G11C2029/1806—Address conversion or mapping, i.e. logical to physical address
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Quality & Reliability (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
- Read Only Memory (AREA)
- Dram (AREA)
Abstract
一種記憶體裝置包括積體電路或多晶片模組上的記憶體,該記憶體包含多個記憶體區塊、控制器以及可由控制器存取的在非揮發性記憶體中的刷新映射表。控制器耦接至記憶體以執行具有位址的命令,以存取多個記憶體區塊中的定址記憶體區塊。刷新映射表具有一或多個條目,刷新映射表中的條目將識別針對刷新而設定的定址記憶體區塊的位址映射至備份區塊位址。控制器對具有刷新區塊位址的刷新命令序列作出回應以執行刷新操作,且經組態以在裝置通電後恢復刷新區塊位址至備份區塊位址的映射,針對設定條目掃描刷新映射表,以及將設定條目登錄在刷新映射表中。
Description
本發明是關於包含記憶體刷新的記憶體裝置及系統中的記憶體管理。
用於積體電路記憶體的記憶體技術在愈來愈小的技術節點下開發,且部署在單一積體電路上的愈來愈大的記憶體陣列上。隨著記憶胞的技術發展,用於感測資料的裕度可變得更緊密。另外,在對記憶胞及對相鄰記憶胞的高速且大量存取而導致對記憶胞狀態干擾的情況下,記憶胞保持資料值的能力會受更緊密裕度限制。
為了解決如由更緊密裕度及記憶胞干擾引起的彼等問題,隨著此等技術在大小及密度上的擴展,使用嵌入在積體電路記憶體中的錯誤校正碼(error correcting code,ECC)已變得愈來愈普遍。除了校正記憶體裝置中的有誤記憶體位之外,可能在校正過程中產生的ECC資訊可用於記憶體管理功能。
多種記憶體技術中出現的另一問題是關於儲存在記憶胞中的資料隨時間推移由於暴露於熱量、暴露於由相鄰記憶胞上的操作而導致的電場以及其他環境及操作條件而導致的受干擾的傾向。由記憶胞的干擾導致資料錯誤可在許多情況下藉由錯誤校正邏輯操控。然而,對於一些記憶體技術,隨時間推移,隨著記憶體區塊磨損,損失資料的傾向會增大。最終,ECC邏輯可能不能夠校正隨著記憶體區塊磨損而積累的所有錯誤。
已研發出複雜損耗均衡程式來管理此問題,添加邏輯至實體位址映射,且在達到實體區塊的損耗限制時將具有高位準有效的邏輯位址的映射改變至新實體區塊。
期望提供一種在不能夠使用複雜損耗均衡程式的系統中可用的解決方案。
一種記憶體裝置包括:記憶體,包含在積體電路或多晶片模組上的多個記憶體區塊;控制器,位於積體電路或多晶片模組上,耦接至記憶體以執行具有位址的命令,以存取多個記憶體區塊中的定址記憶體區塊;以及刷新映射表,位於積體電路或多晶片模組上的非揮發性記憶體中,可由控制器存取的。刷新映射表具有一或多個條目,刷新映射表中的條目將識別針對刷新而設定的定址記憶體區塊的位址映射至備份區塊位址。
控制器對具有刷新區塊位址的刷新命令序列作出回應以執行刷新操作。刷新操作包含:將來自具有刷新區塊位址的定址記憶體區塊的資料的備份複本儲存至備份區塊,設定刷新映射表中的條目以將刷新區塊位址映射至備份區塊,使用來自備份區塊的資料刷新具有刷新區塊位址的定址記憶體區塊,以及在定址記憶體區塊的刷新操作完成後重置條目。
控制器經組態以:執行用以在記憶體裝置通電後恢復刷新區塊位址映射至備份區塊位址的程序,針對將刷新區塊位址映射至備份區塊位址的設定條目掃描刷新映射表,以及將設定條目登錄在刷新映射表中。刷新映射表包含儲存一或多個條目的刷新映射記憶體區域,及登錄將刷新區塊位址映射至備份區塊的設定條目的刷新映射電路。
提供一種用於藉由記憶體裝置的控制器操作記憶體裝置的方法。藉由針對將刷新區塊位址映射至備份區塊位址的設定條目掃描刷新映射表,以及將設定條目登錄在刷新映射表中,控制器可執行用以在記憶體裝置通電後恢復刷新區塊位址至備份區塊位址的映射的程序。刷新映射表包含儲存一或多個條目的刷新映射記憶體區域以及刷新映射電路。方法包括針對設定條目掃描刷新映射表中的刷新映射記憶體區域,以及在刷新映射表中的刷新映射電路中登錄將刷新區塊位址映射至備份區塊的設定條目。
提供一種用於藉由耦接至記憶體裝置的外部主機操作記憶體裝置的方法。方法包括藉由發佈具有刷新區塊位址的刷新命令序列至記憶體裝置來執行刷新操作。刷新操作包含:將來自刷新區塊位址處的定址記憶體區塊的資料的備份複本儲存在備份區塊中;設定刷新映射表中的映射條目以將刷新區塊位址映射至備份區塊的位址;使用來自備份區塊的資料刷新所述刷新區塊位址處的定址記憶體區塊;以及在定址記憶體區塊的刷新操作完成後重置映射條目。
所述刷新定址記憶體區塊可包含:抹除刷新區塊位址處的定址記憶體區塊;以及隨後將備份複本自備份區塊複製至定址記憶體區塊。刷新操作可包含在所述將備份複本儲存在備份區塊中之前抹除備份區塊。
在一個實施例中,刷新映射表包括日誌格式表,其中設定映射條目包含將有效條目寫入於日誌格式表中,且重置條目包含將條目標記為無效。
在一替代實施例中,刷新映射表包括登錄一組備份區塊的備份區塊清單,其中條目儲存在所述組備份區塊中的對應備份區塊內部。所述設定條目可包含將有效旗標寫入於所述組備份區塊中的可用區塊中。所述重置條目可包含在區塊中抹除至少有效旗標或寫入無效旗標。
刷新操作可包括:判定在中斷之前開始的複製操作的狀態;在狀態指示複製操作不可恢復的情況下,抹除定址記憶體區塊且將備份複本自備份區塊複製至定址記憶體區塊;以及在狀態指示複製操作可恢復的情況下,在定址記憶體區塊的刷新操作完成後重置映射條目。
方法可包含在所述執行刷新操作之前發佈命令序列以用於:在輸入區塊位址處自記憶體裝置擷取資料;檢查輸入區塊位址上的擷取資料的ECC狀態;以及在ECC狀態指示輸入區塊位址處的區塊需要刷新的情況下,在主機中登錄具有輸入區塊位址的刷新命令序列包含在主機中將輸入區塊位址登錄為刷新區塊位址。
在審閱以下圖式、詳細描述以及申請專利範圍之後可看出本發明的其他態樣及優點。
以下描述將通常參考特定結構實施例及方法。應理解,不存在將所述技術限制為特定揭露的實施例及方法的意圖,而可使用其他特徵、元件、方法以及實施例來實踐所述技術。描述較佳實施例以說明本發明技術,而非限制其範疇,所述範疇由申請專利範圍限定。在本領域具有通常知識者將認識以下描述的各種等效變化。參考圖式提供本發明的實施例的詳細描述。
圖1A為適用於對NAND串中的選定記憶胞執行讀取操作的電路100的實例示意圖。在所示出的實例中,記憶體包括快閃記憶體,諸如高密度NAND快閃記憶體。同樣可利用其他類型的記憶體技術,包含相變記憶體(phase change memory,PCM)、已知為ReRAM或RRAM的可程式化電阻記憶體、NOR快閃記憶體、磁阻記憶體等等。
在圖1A中,選定記憶胞104為在記憶胞的區塊中由局部位元線BL 110所形成的NAND串的一部分。NAND串亦包含記憶胞102、記憶胞103、記憶胞105以及記憶胞106。串選擇電晶體101在NAND串的一個端部選擇性地將位元線BL 110耦接至全局位元線GBL 120。串選擇電晶體101的閘極連接到串選擇線SGD。接地選擇電晶體107選擇性地將NAND串的第二端部耦接至共同源極線CSRC。接地選擇電晶體107的閘極連接到接地選擇線SGS。選定記憶胞104包含耦接至局部位元線BL 110的漏極端子(D)、耦接至共同源極線CSRC的源極端子(S)以及耦接至字元線WLn的閘極端子。未選定記憶胞102、未選定記憶胞103、未選定記憶胞105以及未選定記憶胞106的閘極端子分別耦接至字元線WLn+2、字元線WLn+1、字元線WLn-1以及字元線WLn-2。
全局位元線120藉由行解碼器電路(未繪示)耦接至頁面緩衝器(1120,圖11)中的感測電路130。箝位電路135耦接至全局位元線120及感測電路130。位元線箝位信號BLC耦接至箝位電路135的閘極,且可藉由控制器(1125,圖11)提供以控制讀取操作的時序。
在讀取操作期間,讀取電壓Vread施加至選定記憶胞104的閘極;通過電壓Vpass施加至未選定記憶胞102、未選定記憶胞103、未選定記憶胞105以及未選定記憶胞106的閘極;且電壓Vsg施加至串選擇電晶體101及接地選擇電晶體107的閘極。箝位偏壓VCLAMP可施加在箝位電路135的閘極處,所述閘極具有為Vt的臨限電壓。共同源極線CSRC及共同P井CPWEL可處於接地電壓位準,例如0伏。胞電流Icell可流經局部位元線BL 110。
圖1B示出如可出現於例如NAND快閃記憶體中的記憶胞的臨限電壓Vt的實例分佈。圖1B示出具有資料『1』的記憶胞的臨限電壓Vt的第一分佈141以及具有資料『0』的記憶胞的臨限電壓Vt的第二分佈142。感測窗143分隔開第一分佈141與第二分佈142。在通過電壓Vpass施加至未選定記憶胞的閘極時,可能會由弱的富爾-諾罕(Fowler-Nordheim,FN)穿隧誘發讀取干擾。讀取干擾可擴寬記憶胞的臨限電壓Vt的第一分佈及第二分佈導致在讀取記憶胞時產生錯誤。舉例而言,讀取干擾可導致具有資料「1」的記憶胞的臨限電壓Vt錯誤地升高至高於第一分佈141的電壓位準,因此臨限電壓Vt可讀取為資料「0」。舉例而言,讀取干擾可導致具有資料「0」的記憶胞的臨限電壓Vt錯誤地減小至低於第二分佈142的電壓位準,因此臨限電壓Vt可讀取為資料「1」。
記憶體裝置中的記憶體區塊可具有若干錯誤位元,亦即,具有臨限電壓的若干記憶胞受干擾,因此錯誤地讀出儲存在記憶胞中的資料。嵌入在記憶體裝置中的錯誤校正碼(ECC)可由晶片上的或晶片外的ECC邏輯用來在資料經傳送離開晶片時校正錯誤位元,直至記憶體區塊中的可校正錯誤位元的最大數目。晶片上的或晶片外的ECC邏輯亦可產生ECC狀態且將ECC狀態提供至主機(210,圖2A)。ECC狀態可包含諸如對經擷取資料中的校正錯誤位元的數目的計數的資訊。主機可使用ECC狀態來判定記憶體區塊中的可校正錯誤位元的數目是否接近於可校正錯誤位元的最大數目,且判定是否發佈刷新命令序列。可預先判定小於可校正錯誤位元的最大數目的可校正錯誤位元的刷新臨限數目。若特定記憶體區塊中的可校正錯誤位元的數目大於或等於可校正錯誤位元的刷新臨限數目,則特定記憶體區塊由主機定義為需要刷新的有風險記憶體區塊。記憶體區塊可包含多個ECC單元,且若記憶體區塊中的多個ECC單元中的至少一者中的可校正錯誤位元的數目大於或等於可校正錯誤位元的刷新臨限數目,則所述記憶體區塊可經定義為有風險記憶體區塊。舉例而言,若記憶體裝置的ECC邏輯(222,圖2A)可校正記憶體區塊中的8個錯誤位元(亦即,可校正錯誤位元的最大數目為8),且可校正錯誤位元的刷新臨限數目為6,則在特定記憶體區塊的可校正錯誤位元的數目或特定記憶體區塊中的多個ECC單元中的至少一者中的可校正錯誤位元的數目大於或等於6時,特定記憶體區塊經定義為有風險記憶體區塊且需要刷新。
如本文中所使用,有風險記憶體區塊是指滿足控制邏輯中的參數設定的記憶體區塊,諸如其中所有錯誤位元仍可由ECC校正但可校正錯誤位元的數目接近可校正錯誤位元的刷新臨限數目的記憶體區塊。在不對有風險記憶體區塊執行刷新操作的情況下,可能丟失有風險記憶體區塊中的資料。在對有風險記憶體區塊執行刷新操作的情況下,可能保存有風險記憶體區塊中的資料。
圖2A為包含包括刷新映射表的記憶體裝置及耦接至記憶體裝置的主機的系統200的簡化系統圖。舉例而言,記憶體裝置220可為快閃記憶體,所述快閃記憶體為非揮發性記憶體晶片。記憶體裝置220可為單一積體電路,或可包括多晶片模組,其中多晶片模組中封裝超過一個晶片。
如圖2A的實例中所繪示,在記憶體裝置220外部的主機210可包含微控制器單元MCU 211,其可包含一或多個處理器核心中央處理單元(central processing unit,CPU)。MCU可經由匯流排子系統215與數個裝置通信。數個裝置可包含儲存子系統212、快閃記憶體介面213以及其他電路214。快閃記憶體介面213經由匯流排250提供主機與記憶體裝置220之間的介接,所述匯流排250連接主機與記憶體裝置。舉例而言,用於讀取操作或刷新操作的命令序列可經由匯流排250自主機210傳輸至記憶體裝置220,且ECC校正資料及資料的ECC狀態可經由匯流排250自記憶體裝置220傳輸至主機210。
如圖2A的實例中所繪示,記憶體裝置220包括積體電路或多晶片模組上的包含多個記憶體區塊(區塊0、區塊1、區塊2、…、區塊n、區塊n+1)的記憶體陣列240。積體電路或多晶片模組上的控制器230耦接至記憶體陣列240以執行具有位址的命令,以存取多個記憶體區塊中的定址記憶體區塊。
積體電路或多晶片模組上的非揮發性記憶體中的刷新映射表235可由控制器230存取。刷新映射表可具有一或多個條目,刷新映射表中的條目將識別針對刷新而設定的定址記憶體區塊的位址映射至備份區塊位址。定址記憶體區塊可為有風險記憶體區塊,如參考圖1B所描述。在一個實例中,映射識別定址記憶體區塊的位址的條目可儲存在非揮發性記憶體中的刷新映射記憶體區域(235M,圖2B)中。在一替代實例中,映射識別定址記憶體區塊的位址的條目可儲存在刷新映射記憶體區域外部的非揮發性記憶體中的可定址位置處。在替代實例中,在積體電路或多晶片模組通電後,刷新映射記憶體區域外部的條目可自可定址位置擷取且隨後儲存在非揮發性記憶體中的刷新映射記憶體區域中。
控制器230對例如來自主機210的刷新命令序列作出回應,其中刷新區塊位址用以執行刷新操作,諸如原地刷新操作。刷新操作可包含:將來自具有刷新區塊位址的定址記憶體區塊的資料的備份複本儲存至備份區塊,設定刷新映射表中的條目以將刷新區塊位址映射至備份區塊,使用來自備份區塊的資料刷新具有刷新區塊位址的定址記憶體區塊,以及在定址記憶體區塊的刷新操作完成後重置條目。舉例而言,定址記憶體區塊可包含具有各別頁面位址的多個頁面。刷新命令序列可包含用以執行刷新操作的命令的序列,所述命令的序列包含用於定址記憶體區塊中的各別頁面的頁面讀取及頁面程式化命令,以將定址記憶體區塊中的來自頁面的資料的備份複本逐頁地複製至備份區塊中的各別頁面。刷新命令序列中的頁面讀取及頁面程式化命令可包含將各別頁面的頁面位址輸入在定址記憶體區塊中。舉例而言,刷新命令序列可包含如參考圖3B所描述的命令,包含用以設定刷新映射表中的映射條目(步驟325)以及用以重置刷新映射表中的映射條目(步驟328)的命令。
如本文中所使用,原地刷新操作為記憶體裝置中的定址記憶體區塊上的記憶體刷新操作,其使用將定址記憶體區塊重新映射至備份區塊的邏輯位址至實體位址映射表(logical address to physical address mapping table,L2P)來將來自定址記憶體區塊的資料寫入回至同一定址記憶體區塊。刷新操作有可能在完成之前中斷,在此情況下,定址區塊中的資料的有效性可受損。
控制器230經組態以:執行用以在記憶體裝置通電後自中斷恢復以針對設定條目掃描刷新映射表235的程序,針對設定條目中識別的定址記憶體區塊完成刷新操作,以及在刷新操作完成後重置設定條目。主機可讀出由設定條目映射的校正位址處的資料。控制器230可使用偏壓配置狀態機來控制偏壓配置供應電壓221的應用,諸如讀取、抹除以及程式化電壓。
記憶體裝置220上的或記憶體裝置外的錯誤校正碼(ECC)邏輯222可校正錯誤位元且檢查自輸入區塊位址擷取的資料的ECC狀態。取決於檢查ECC狀態的結果,可判定是否在記憶體裝置中的輸入區塊位址處登錄刷新操作的刷新命令序列,如參考圖3A進一步描述。可將ECC狀態提供至主機(210,圖2A),且作為回應,主機可發佈刷新命令序列。
輸入/輸出埠223可自外部主機210接收命令,且耦接至控制器230。來自外部主機的命令可經解碼,且應用於記憶體裝置上的控制器230。
記憶體裝置220包含用於提供位址至記憶體陣列240的位址計數器224或其他位址邏輯。位址計數器224可由晶片上控制器230控制。
圖2B為如圖2A中所繪示的刷新映射表的放大圖。如圖2B中所繪示,刷新映射表可包含刷新映射電路235C及刷新映射記憶體區域235M。刷新映射電路235C可包含映射功能電路及登錄器,以登錄包含用於對記憶體裝置(1100,圖11)中的記憶體陣列(1101,圖11)進行的讀取操作、程式化操作以及抹除操作的定址記憶體區塊的位址及備份區塊的位址的資訊。刷新映射記憶體區域235M可儲存包含用於讀取、程式化的定址記憶體區塊的位址及備份區塊的位址的資訊,如參考圖4A至圖4G進一步描述。
由刷新映射電路235C登錄的資訊可為揮發性的。儲存在刷新映射記憶體區域235M中的資訊可為非揮發性的。在一個實施例中,刷新映射記憶體區域235M可於控制器(1125,圖11)可存取的積體電路或多晶片模組上的非揮發性記憶體(1101,圖11)中的可定址區域中實施。在一替代實施例中,刷新映射表的刷新映射記憶體區域可在晶片外實施。
圖3A示出用於藉由在記憶體裝置外部的主機讀取記憶體裝置的實例流程圖。在步驟311處,主機(210,圖2A)可例如在執行如參考圖3B所描述的原地刷新操作之前發佈具有輸入區塊位址的讀取命令序列以在輸入區塊位址處自記憶體裝置擷取資料。在步驟312處,輸入區塊位址處的資料自記憶體裝置擷取至主機。在此步驟處,晶片上的或晶片外的錯誤校正碼(ECC)邏輯(222,圖2A)可在資料經擷取時校正錯誤位元,且將ECC狀態與校正資料一起提供至主機。ECC狀態可包含諸如對經擷取資料中的校正錯誤位元的數目的計數或哪些位已經校正的資訊。在步驟313處,主機為輸入區塊位址上的擷取資料檢查如在步驟312處提供的ECC狀態。在步驟314處,記憶體裝置上可出現硬體中斷。舉例而言,硬體中斷可為可以在完成之前中斷讀取操作的供電中斷,在此情況下,定址區塊中的資料的有效性可受損。取決於檢查ECC狀態的結果或是否出現硬體中斷,在步驟315處,判定是否在記憶體裝置中的輸入區塊位址處登錄刷新操作的刷新命令序列。
若判定並不登錄刷新命令序列(步驟315,否),則讀取操作可繼續進行而不登錄刷新命令序列(步驟318)。若判定登錄刷新命令序列(步驟315,是),則在步驟316處,主機可繼續在主機中登錄具有輸入區塊位址的刷新命令序列,包含在主機中將輸入區塊位址登錄為刷新區塊位址。在步驟317處,主機可在記憶體裝置中的輸入區塊位址處執行原地刷新操作,如參考圖3B進一步描述。舉例而言,主機(210,圖2A)可將刷新命令序列以及被登錄為刷新區塊位址的輸入區塊位址登錄在儲存子系統(212,圖2A)中。藉由登錄刷新命令序列,刷新操作可延遲直至至少當前讀取操作完成為止,以免影響當前讀取操作。在沒有正在進行的讀取操作時,主機可發佈被登錄刷新命令序列至記憶體裝置。
圖3B示出用於藉由在包括刷新映射表的記憶體裝置外部且耦接至所述記憶體裝置的主機執行原地刷新操作的實例流程圖。流程圖包含刷新命令序列中的實例命令,主機可將所述實例命令發佈至記憶體裝置以執行原地刷新操作。記憶體裝置包括積體電路或多晶片模組上的包含多個記憶體區塊的記憶體,以及積體電路或多晶片模組上的非揮發性記憶體中的刷新映射表。刷新映射表具有一或多個條目,刷新映射表中的條目將識別針對刷新而設定的定址記憶體區塊的位址映射至備份區塊位址。定址記憶體區塊可為有風險記憶體區塊,如參考圖1B所描述。
如圖3B的實例中所繪示,在步驟321處,主機(210,圖2A)開始原地刷新操作。在步驟322處,主機識別積體電路或多晶片模組上的多個記憶體區塊中的備份區塊。在步驟323處,主機可發佈命令至記憶體裝置(220,圖2A),以抹除如在步驟322處識別的備份區塊。在步驟324處,主機可發佈具有輸入位址的命令至記憶體裝置以儲存刷新區塊位址處的來自定址記憶體區塊的資料的備份複本。步驟323處的用以抹除備份區塊的命令由主機在步驟324處的用以將備份複本儲存在備份區塊中的命令之前發佈。
在步驟325處,主機可發佈具有刷新區塊位址的命令至記憶體裝置,以設定刷新映射表中的映射條目來將刷新區塊位址映射至備份區塊的位址。回應於此命令,記憶體裝置中的控制器可將映射條目儲存在刷新映射記憶體區域(235M,圖2B)中,且在刷新映射表中的刷新映射電路(235C,圖2B)中登錄映射條目。在步驟326處,主機可發佈命令至記憶體裝置以抹除刷新區塊位址處的定址記憶體區塊。在步驟327處,主機可發佈命令至記憶體裝置以將備份複本自備份區塊複製至刷新區塊位址處的定址記憶體區塊。在步驟328處,主機可發佈命令至記憶體裝置以在刷新區塊位址處的定址記憶體區塊的刷新操作完成後重置刷新映射表中的映射條目。回應於此命令,記憶體裝置中的控制器可更新刷新映射表中的刷新映射記憶體區域(235M,圖2B)以及刷新映射電路(235C,圖2B)以重置映射條目。
在步驟330處,主機可發佈命令至記憶體裝置以開始中斷恢復,諸如自電力流失後的恢復。中斷可出現在抹除定址記憶體區塊(步驟326)期間或在將備份複本自備份區塊複製至定址記憶體區塊(步驟327)期間。參考圖3C進一步描述中斷恢復。
圖3C示出用於主機在包括刷新映射表的記憶體裝置中執行自電力流失後的恢復程序的實例流程圖。在記憶體裝置成功地通電之後,主機可執行恢復程序。如圖3C的實例中所繪示,在步驟331處,記憶體裝置中的主機可在記憶體裝置通電後開始用以自諸如電力流失的中斷恢復的程序。中斷可出現在抹除定址記憶體區塊(步驟326,圖3B;步驟624,圖6A)期間或在將備份複本自備份區塊複製至定址記憶體區塊(步驟327,圖3B;步驟625,圖6A)期間。
在步驟332處,主機可發佈命令至記憶體裝置以自刷新映射表(235,圖2A)中的刷新映射電路(235C,圖2B)檢查有效映射條目狀態。若不存在利用刷新映射電路登錄的有效映射條目,則恢復程序結束(步驟332,否)。若存在利用刷新映射電路登錄的有效映射條目(步驟332,是),則恢復程序可繼續進行至步驟333。在步驟333處,針對在中斷之前開始的複製操作(諸如參考圖3B中的步驟327所描述)的狀態,主機可掃描記憶體(例如儲存子系統(212,圖2A))中的元資料。主機將元資料寫入於記憶體中以登錄刷新過程的進程。基於複製操作的狀態,在步驟334處,判定複製操作是否為可恢復的。若是(334,是),則在步驟335處,對於設定條目中識別的定址記憶體區塊,複製操作可繼續且刷新操作可完成。在步驟336處,在定址記憶體區塊的刷新操作完成後,重置刷新映射表中的條目。
若複製操作不為可恢復的(334,否),則在步驟337處,主機可發佈命令至記憶體裝置以抹除定址記憶體區塊,且在步驟338處,主機可發佈命令至記憶體裝置以將備份複本自備份區塊複製至定址記憶體區塊。在步驟336處,主機可發佈命令至記憶體裝置以在定址記憶體區塊的刷新操作完成後重置刷新映射表中的條目。
圖3D示出用於讀取包括刷新映射表的記憶體裝置的實例流程圖。在步驟341處,記憶體裝置中的控制器可接收具有輸入區塊位址的讀取命令。在步驟342處,控制器判定有效的映射條目是否由刷新映射表中的刷新映射電路(235C,圖2B)登錄。若有效的映射條目被登錄(步驟342,是),則在步驟344處,控制器判定輸入區塊位址是否匹配於有效的映射條目中的刷新區塊位址。若輸入區塊位址匹配於刷新區塊位址,則在步驟345處,控制器可根據對應於輸入區塊位址的有效的映射條目自備份區塊擷取資料。若無有效的映射條目被登錄(步驟342,否)或若輸入區塊位址不匹配於刷新區塊位址(步驟344,否),則在步驟343處,控制器可在輸入區塊位址處自定址區塊擷取資料。
圖3E示出用於藉由記憶體裝置中的控制器進行的通電程序的實例流程圖。記憶體裝置中的控制器(1125,圖11)經組態以執行用以在記憶體裝置通電後在中斷之後恢復刷新區塊位址至備份區塊位址的映射的通電程序。在步驟351處,通電程序在記憶體裝置上開始。在步驟352處,控制器可針對設定條目掃描刷新映射表,所述設定條目亦稱作有效的映射條目。在刷新映射表包含日誌格式表的一個實施例中(圖4A至圖4G),控制器可針對有效的映射條目掃描日誌格式表。在刷新映射表包含登錄一組備份區塊的備份區塊清單的替代實施例中(圖5A、圖5B、圖5C、圖5D),可掃描刷新映射記憶體區域(235M,圖2B)找到使用中的備份區塊,再掃描使用中的備份區塊中是否有有效的映射條目。
在步驟353處,控制器可登錄已被設定的條目在刷新映射表中。刷新映射表(235,圖2B)包含儲存映射條目的刷新映射記憶體區域(235M,圖2B),及登錄已被設定的條目並將刷新區塊位址映射至備份區塊的刷新映射電路(235C,圖2B)。掃描刷新映射表包含掃描刷新映射表中的刷新映射記憶體區域尋找已被設定的條目。在刷新映射表中登錄已被設定的條目包含將已被設定的條目登錄在刷新映射表中的刷新映射電路。
在執行通電程序之後,已被設定的條目或有效的映射條目已處於刷新映射表(235,圖2A)中,因此主機可使用同一刷新區塊位址直接存取有效的映射條目。舉例而言,若記憶體裝置的啟動碼區塊需要刷新且在刷新時段期間存在突發電力流失,則下一次記憶體裝置通電時,執行通電程序且主機仍可使用啟動碼區塊的同一刷新區塊位址來啟動記憶體裝置。在不具有包含通電程序的本文中所描述的技術的情況下,若記憶體裝置的啟動碼區塊需要刷新且在刷新時段期間存在突發電力流失,則由於初始啟動碼區塊中不存在校正啟動碼,故在下一次記憶體裝置通電時記憶體系統無法啟動。
圖4A至圖4G示出包含日誌格式表的刷新映射表的實施例。在此實施例中,主機保留備份區塊清單。為了在刷新映射表中設定條目,主機需要發佈具有備份區塊的位址及定址區塊的位址兩者的命令序列。在記憶體裝置的通電時段期間,記憶體裝置中的控制器(1125,圖11)可掃描刷新映射表中的刷新映射記憶體區域(235M,圖2B),且將有效的映射條目更新在刷新映射電路。在通電之後,有效的映射條目已處於刷新映射表(235,圖2A)中,因此主機可直接存取有效的映射條目。在此實施例中,刷新映射表(235,圖2A)中的刷新映射記憶體區域(235M,圖2B)包括日誌格式表。設定條目包含將有效條目或有效旗標寫入於日誌格式表中。重置條目包含將條目標記為無效或將無效旗標寫入於日誌格式表中。設定條目亦可包含將定址記憶體區塊的位址及備份區塊的位址寫入於刷新映射記憶體區域(235M,圖2B)中,且更新刷新映射電路(235C,圖2B)以例如登錄定址記憶體區塊的位址及備份區塊的位址。重置條目亦可包含更新刷新映射電路(235C,圖2B),以例如註銷已被登錄的定址記憶體區塊的位址及備份區塊的位址。
如圖4A至圖4G的實例中所繪示,刷新映射區域可包含第一記憶體區域(「區域1」)及第二記憶體區域(「區域2」)。舉例而言,例如第一記憶體區域或第二記憶體區域的記憶體區域可為NAND快閃記憶體中的記憶胞的區塊,其屬於不需要功率來保留資料的非揮發性儲存器技術類型。在記憶胞的區塊中抹除NAND快閃記憶體,因此無法在不抹除區塊中的所有記憶胞的情況下抹除記憶胞的區塊中的一個記憶胞。
如圖4A至圖4G的實例中所繪示,刷新映射記憶體區域中的僅一個條目可同時經設定或標記為有效,如由「S」指示。而替代地,刷新映射記憶體區域中的兩個或大於兩個條目可同時經設定或標記為有效。如圖4A中所繪示,5個條目410經重置或標記為無效,或具有刷新映射區域中的第一記憶體區域中的無效旗標,如由「C」指示。如圖4B中所繪示,新條目416經設定或標記為有效,或具有第一記憶體區域中的有效旗標,如由「S」指示。設定新條目416亦可包含將定址記憶體區塊的位址及備份區塊的位址寫入於第一記憶體區域中。
如圖4C中所繪示,第一記憶體區域已滿,除了第一記憶體區域中的最末條目417以外,第一記憶體區域中的所有條目已經重置或標記為無效,如由「C」指示。可將可設定條目的記憶體區域稱為有效區域。在操作期間,刷新映射區域中的兩個或大於兩個記憶體區域中的一個記憶體區域為有效的,而刷新映射區域中的其他記憶體區域為無效的。如圖4D中所繪示,如由第一記憶體區域中的最末條目中的旗標「E」指示,如圖4C中所繪示的已滿的第一記憶體區域封閉。
如圖4E中所繪示,第二記憶體區域已成為有效記憶體區域,且在刷新映射表中的第二記憶體區域中,新條目420經設定或標記為有效。設定新條目420亦可包含將定址記憶體區塊的位址及備份區塊的位址寫入於第二記憶體區域中。如圖4F中所繪示,刷新映射區域中的封閉的第一記憶體區域經抹除,因此在第二記憶體區域已滿時,所述封閉的第一記憶體區域可用作有效記憶體區域。如圖4G中所繪示,在刷新映射區域中的第二記憶體區域中,新條目430經設定或標記為有效。
在第二記憶體區域已滿(亦即,其中的所有條目已經重置或標記為無效)時,第二記憶體區域可封閉,第一記憶體區域可變為有效的,且新條目可在第一記憶體區域中經設定或標記為有效。
圖5A示出儲存登錄一組備份區塊(例如備份區塊0、備份區塊1、備份區塊2)以及所述組備份區塊中的備份區塊的啟用狀態(例如禁用、啟用)的備份區塊清單的刷新映射表的替代實施例,其中條目儲存在所述組備份區塊中的對應備份區塊內部。在此替代實施例中,刷新映射記憶體區域(235M,圖2B)可包含所述組備份區塊中的對應備份區塊(例如備份區塊0、備份區塊1、備份區塊2),其中條目儲存在每一使用中的備份區塊內部。在此實施例中,所述組備份區塊中的每一備份區塊(例如備份區塊0)具有用於儲存自定址區塊複製的資料區域以及用於寫入定址區塊的位址及有效旗標的預留區域。參考圖5C描述儲存在刷新映射表中的備份區塊清單的初始化。設定條目可包含將定址區塊的位址及有效旗標寫入於所述組備份區塊中的可用區塊中,如參考圖5D進一步描述。重置條目可包含抹除備份區塊,如參考圖5D進一步描述。重置條目可包含抹除至少有效旗標或將無效旗標寫入於區塊中,如參考圖7B進一步描述。
所述組備份區塊中的可用區塊(例如備份區塊0、備份區塊1、備份區塊2)是指可用於儲存來自定址記憶體區塊的資料的備份複本的區塊。可用區塊亦可稱為使用中的區塊。舉例而言,所述組備份區塊中的可用備份區塊可為所述組備份區塊中的最末備份區塊(例如備份區塊2)。當在所述組備份區塊中的可用區塊中設定條目時,定址區塊的有效旗標及位址可寫入於所述可用區塊中。當在所述組備份區塊中的區塊中重置條目時,可抹除區塊中的有效旗標或可將無效旗標寫入於所述區塊中。備份區塊清單包含多個槽(slot),且所述多個槽中的每一者含有一個備份區塊的資訊。經註銷區塊的備份區塊清單中的槽在圖5A中經指示為「停用」。可用區塊的備份區塊清單中的槽在圖5A中經指示為「使用中」。未經使用的槽在備份區塊清單中經指示為「空」。
圖5B示出用於藉由包含如圖5A中所繪示的刷新映射表的替代實施例的記憶體裝置中的控制器進行的通電程序的實例流程圖。在步驟551處,通電程序在記憶體裝置上開始。在步驟552處,控制器(1125,圖11)可掃描刷新映射表(235,圖2A)中的刷新映射記憶體區域(235M,圖2B)尋找使用中的備份區塊(亦稱作可用備份區塊)。在步驟553處,控制器可針對有效映射條目(亦稱作設定映射條目)掃描使用中的備份區塊。在步驟554處,控制器可利用有效映射條目更新刷新映射電路(235C,圖2B)。隨後,儲存在使用中的備份區塊中的資料可經擷取且根據有效映射條目複製至定址記憶體區塊。
可用備份區塊可使用多次直至其磨損為止,且隨後可使用所述組備份區塊中的另一備份區塊作為可用備份區塊。
圖5C示出登錄一組備份區塊的備份區塊清單的初始化,其中備份區塊清單儲存在刷新映射表中且包含所述組中的備份區塊的啟用狀態。刷新映射記憶體區域(235M,圖2B)包含由備份區塊清單登錄的所述組備份區塊,如參考圖5A所描述。為了初始化備份區塊清單,主機發佈具有備份區塊(備份區塊0)的位址501A的命令序列至記憶體裝置,以將備份區塊登錄在刷新映射記憶體區域中。登錄備份區塊可包含將備份區塊(備份區塊0)的位址501A寫入於備份區塊清單中,且利用備份區塊的位址更新刷新映射電路(235C,圖2B)。啟用旗標501F亦可寫入於刷新映射表中的備份區塊清單中。
圖5D示出第一實施例中的備份區塊中的資料配置。在此實施例中,所述組備份區塊中的備份區塊520具有用於儲存自定址區塊複製的資料區域521以及用於寫入定址區塊的位址523及有效旗標524的預留區域522。為了在刷新映射表中設定條目,主機發佈具有定址區塊的位址的命令序列。在記憶體裝置的通電時段期間,記憶體裝置中的控制器(1125,圖11)可針對使用中的備份區塊檢索刷新映射記憶體區域(235M,圖2B),針對有效映射條目檢查使用中的備份區塊中的啟用旗標資訊(有效或無效),且利用有效映射條目更新刷新映射電路(235C,圖2B)。在通電之後,有效映射條目已處於刷新映射表(235,圖2A)中,因此主機可直接存取有效映射條目。在此實施例中,設定條目可包含將定址區塊的位址及有效旗標寫入於所述組備份區塊中的可用備份區塊中的預留區域中。重置條目可包含抹除備份區塊,包含將預留區域抹除為空白圖案。可在主機發佈區塊抹除命令至記憶體裝置時執行抹除備份區塊,因此並不需要用以重置條目的特定重置命令序列。重置條目可包含更新刷新映射電路(235C,圖2B),以例如註銷在設定條目操作期間登錄的定址記憶體區塊的位址。
圖6A示出用於操作包括如圖5A中的刷新映射表的替代實施例的記憶體裝置的實例流程圖。如針對圖5A所描述,在刷新映射表的此替代實施例中,備份區塊清單紀錄一組備份區塊以及所述組備份區塊中的備份區塊的啟用狀態。刷新映射記憶體區域(235M,圖2B)包含所述組備份區塊,其中條目儲存在所述組備份區塊中的對應備份區塊內部。設定條目可包含將定址區塊的位址及有效旗標寫入於所述組備份區塊中的可用區塊中。重置條目可包含抹除區塊中的有效旗標。重置條目可包含抹除備份區塊。
如圖6A的實例中所繪示,在步驟621處,主機(210,圖2A)開始原地刷新操作。在步驟622處,主機可發佈具有刷新區塊位址的命令至記憶體裝置(220,圖2A),以將來自刷新區塊位址處的定址記憶體區塊的資料的備份複本儲存至所述組備份區塊中的備份區塊,諸如可用備份區塊(「備份區塊2」,圖5A)。定址記憶體區塊可為有風險記憶體區塊,如參考圖1B所描述。
在步驟623處,主機可發佈命令至記憶體裝置以設定刷新映射表中的映射條目。回應於此命令,控制器可將有效旗標寫入於使用中的區塊中,且將定址記憶體區塊的位址寫入於使用中的區塊中。
在步驟624及步驟625處,可使用來自可用備份區塊的資料來刷新所述刷新區塊位址處的定址記憶體區塊。在步驟624處,主機可發佈命令至記憶體裝置以抹除刷新區塊位址處的定址記憶體區塊。在步驟625處,主機可發佈命令至記憶體裝置以將備份複本自備份區塊複製至刷新區塊位址處的定址記憶體區塊。
在步驟626處,主機可發佈區塊抹除命令至記憶體裝置,以抹除刷新映射表中的刷新映射記憶體區域(235M,圖2B)中的備份區塊,藉此重置刷新映射記憶體區域中的映射條目。回應於命令,控制器可抹除包含有效旗標的備份區塊。
在備份區塊經抹除(步驟626)時,或在未能將來自定址記憶體區塊的資料的備份複本儲存至備份區塊(步驟622)後,或在未能設定刷新映射表中的映射條目(步驟623)後,在步驟627處,主機可發佈命令至記憶體裝置以註銷舊備份區塊且登錄新備份區塊。步驟622或步驟623處的失敗可能由舊備份區塊經磨損而導致。參考圖6B至圖6C進一步描述步驟627。
步驟628是指中斷恢復,諸如自電力流失的恢復,其中中斷可發生在抹除定址記憶體區塊(步驟624)期間或在將來自備份區塊的資料的備份複本複製至定址記憶體區塊(步驟625)期間。在記憶體裝置通電後,記憶體裝置中的控制器可針對備份區塊的清單中的使用中的備份區塊以及針對有效映射條目的預留區域中的有效映射條目進行掃描。有效映射條目可儲存在刷新映射表中的刷新映射電路(235C,圖2B)中,因此其準備藉由區塊映射操作使用如參考圖3D所描述的刷新映射表使用。
圖6B至圖6C示出在儲存在刷新映射表(235,圖2A)中的備份區塊清單中註銷舊備份區塊且登錄新備份區塊。圖6B示出註銷具有備份區塊位址541A的舊備份區塊(備份區塊0)的結果。主機可發佈命令至記憶體裝置以例如在舊備份區塊磨損時註銷舊備份區塊。註銷舊備份區塊可包含將舊備份區塊(備份區塊0)的停用旗標541F寫入於備份區塊清單中,且更新刷新映射電路(235C,圖2B)以停用舊備份區塊。
圖6C示出登錄新備份區塊的結果。主機可發佈命令至記憶體裝置以例如在舊備份區塊經註銷時同時登錄新備份區塊。登錄新備份區塊(備份區塊1)可包含將備份區塊的位址542A及啟用旗標542F寫入於備份區塊清單,且更新刷新映射電路(235C,圖2B)以啟用新備份區塊。啟用旗標亦可寫入於刷新映射記憶體區域(235M,圖2B)中的新備份區塊中。圖6B及圖6C一起示出利用新備份區塊(備份區塊1)取代舊備份區塊(備份區塊0)。
圖7A示出用於操作包括如圖5A中的刷新映射表的替代實施例的記憶體裝置的替代流程圖。如針對圖5A所描述,在刷新映射表的此替代實施例中,備份區塊清單登錄一組備份區塊以及所述組備份區塊中的備份區塊的啟用狀態。刷新映射記憶體區域(235M,圖2B)包含所述組備份區塊,其中條目儲存在所述組備份區塊中的對應備份區塊內部。設定條目可包含將定址區塊的位址及有效旗標寫入於所述組備份區塊中的可用區塊中。重置條目可包含抹除區塊中的有效旗標或將無效旗標寫入於區塊中。
如圖7A的實例中所繪示,在步驟751處,主機(210,圖2A)開始原地刷新操作。在步驟752處,主機可發佈區塊抹除命令至記憶體裝置以抹除刷新映射記憶體區域(235M,圖2B)中的備份區塊。回應於命令,控制器可抹除備份區塊。在步驟753處,主機可發佈具有刷新區塊位址的命令至記憶體裝置(220,圖2A),以將來自刷新區塊位址處的定址記憶體區塊的資料的備份複本儲存至所述組備份區塊中的備份區塊,諸如可用備份區塊(「備份區塊2」,圖5A)。
在步驟754處,主機可發佈命令至記憶體裝置以設定刷新映射表中的映射條目。回應於此命令,控制器可將有效旗標寫入於使用中的備份區塊中,且將定址記憶體區塊的位址寫入於使用中的備份區塊中。
在步驟755及步驟756處,可使用來自可用備份區塊的資料來刷新所述刷新區塊位址處的定址記憶體區塊。在步驟755處,主機可發佈命令至記憶體裝置以抹除刷新區塊位址處的定址記憶體區塊。在步驟756處,主機可發佈命令至記憶體裝置以將備份複本自備份區塊複製至刷新區塊位址處的定址記憶體區塊。
在步驟757處,記憶體裝置中的控制器可重置定址記憶體區塊的條目,如參考圖7B進一步描述。
在條目重置失敗(步驟757)時,或在未能抹除備份區塊(步驟752)後,或在未能將來自定址記憶體區塊的資料的備份複本儲存至備份區塊(步驟753)後,或在未能設定刷新映射表中的映射條目(步驟754)後,在步驟758處,主機可發佈命令至記憶體裝置以註銷舊備份區塊且登錄新備份區塊。步驟752、步驟753或步驟754處的失敗可能由舊備份區塊經磨損而導致。參考圖7B至圖7C進一步描述步驟758。
步驟759是指中斷恢復,諸如自電力流失的恢復,其中中斷可發生在抹除定址記憶體區塊(步驟755)期間或在將來自備份區塊的資料的備份複本複製至定址記憶體區塊(步驟756)期間。在記憶體裝置通電後,記憶體裝置中的控制器可針對備份區塊清單中的使用中的備份區塊以及針對有效映射條目的預留區域中的有效映射條目進行掃描。有效映射條目可儲存在刷新映射表中的刷新映射電路(235C,圖2B)中,因此其準備藉由區塊映射操作使用如參考圖3D所描述的刷新映射表使用。
圖7B示出第二實施例中的備份區塊中的資料配置。在此實施例中,所述組備份區塊中的備份區塊530具有用於儲存自定址區塊複製的資料區域531以及用於寫入定址區塊的位址533、有效旗標524以及無效旗標534的預留區域532。參考圖5D進行的關於備份區塊中的資料配置的第一實施例的描述通常適用於此實施例,包含關於設定刷新映射表中的條目的描述。
備份區塊中的資料配置的此第二實施例與參考圖5D描述的第一實施例之間的一個區別在於重置刷新映射表中的條目。在此實施例中,重置條目可包含抹除有效旗標524或將無效旗標534寫入於備份區塊530中的預留區域532中,且更新刷新映射電路(235C,圖2B)以註銷在設定條目的操作期間登錄的定址記憶體區塊的位址。
圖8A、圖8B以及圖8C示出備份區塊清單的第一實施例,其中備份區塊清單可同時登錄多個(大於一個)有效備份區塊。圖8A至圖8C示出在可能儲存在刷新映射表(235,圖2A)中的備份區塊清單800中註銷舊備份區塊且登錄新備份區塊。圖8A示出最初具有多個有效備份區塊(備份區塊0、備份區塊1、備份區塊2)的備份區塊清單。備份區塊「備份區塊1」登錄備份區塊位址841及啟用旗標842。圖8B示出藉由設定停用旗標843註銷備份區塊(備份區塊1)的結果。主機可發佈命令至記憶體裝置以例如在舊備份區塊磨損時註銷舊備份區塊。註銷舊備份區塊可包含將舊備份區塊(備份區塊1)的停用旗標843寫入於備份區塊清單中,且更新刷新映射電路(235C,圖2B)以停用舊備份區塊。
圖8C示出登錄新備份區塊的結果。主機可發佈命令至記憶體裝置以例如在舊備份區塊經註銷時登錄新備份區塊。登錄新備份區塊(備份區塊3)可包含將備份區塊的位址851及啟用旗標852寫入於備份區塊清單,且更新刷新映射電路(235C,圖2B)以啟用新備份區塊。啟用旗標亦可寫入於刷新映射記憶體區域(235M,圖2B)中的新備份區塊中。
圖9A、圖9B以及圖9C示出備份區塊清單的第二實施例,其中備份區塊清單可僅同時登錄單一使用中的備份區塊。在此實施例中,在單一備份區塊經登錄以成為新單一使用中的備份區塊時,舊單一使用中的備份區塊自動註銷。在此實施例中,備份區塊清單900中的最末備份區塊為單一使用中的備份區塊。主機可發佈命令至記憶體裝置以在記憶體裝置僅同時支持單一使用中的備份區塊時登錄新備份區塊。圖9A示出最初具有單一使用中的備份區塊(備份區塊0)的備份區塊清單900。
圖9B示出登錄新備份區塊(備份區塊1)的結果。登錄新備份區塊可包含將新備份區塊的位址寫入至備份區塊清單900,且更新刷新映射電路以啟用新備份區塊。亦可為備份區塊清單中的新備份區塊寫入啟用旗標。在此實例中,新備份區塊(備份區塊1)將成為新單一使用中的備份區塊,且舊單一使用中的備份區塊(備份區塊0)自動註銷(停用),而無需用以註銷舊單一使用中的備份區塊(備份區塊0)的特定註銷操作。
圖9C示出用於操作包括僅同時登錄單一使用中的備份區塊的備份區塊清單(如參考圖9A及圖9B所描述)的第二實施例的記憶體裝置的實例流程圖。圖9C類似於圖6A,其中對圖6A中的步驟621至步驟626以及步驟628的描述適用於圖9C中的對應步驟。一個區別在於在圖9C中,在步驟927處,主機可發佈命令至記憶體裝置以登錄新備份區塊,而無需發佈用以註銷舊單一使用中的備份區塊的特定註銷操作。相比之下,在圖6A中,在步驟627處,主機可發佈命令至記憶體裝置以註銷舊使用中的備份區塊且登錄新使用中的備份區塊。
圖10A及圖10B示出備份區塊清單的第三實施例,其中儲存在刷新映射表(235,圖2A)中的備份區塊清單1000可僅登錄使用中的備份區塊(備份區塊0、備份區塊1、備份區塊2,圖10A),而不登錄任何停用的備份區塊。
圖10B示出同時註銷備份區塊清單中的備份區塊。主機可發佈命令至記憶體裝置以抹除備份區塊清單,以便註銷登錄在備份區塊清單中的使用中的備份區塊。藉由抹除備份區塊清單來註銷如圖10A中所繪示的同時登錄在備份區塊清單中的多個備份區塊,如針對圖10A中所繪示的多個有效備份區塊中的每一者由「空」指示。
圖11為包含記憶體陣列以及用於執行如本文中所描述的刷新操作的控制器的記憶體裝置的簡化方塊圖。記憶體陣列1101可包含積體電路或多晶片模組上的多個記憶體區塊。控制器耦接至記憶體陣列以執行具有位址的命令,以存取多個記憶體區塊中的定址記憶體區塊。記憶體裝置包含可由控制器1125存取的刷新映射表1128。刷新映射表具有一或多個條目,刷新映射表中的條目將識別針對刷新而設定的定址記憶體區塊的位址映射至備份區塊位址。定址記憶體區塊可為有風險記憶體區塊,如參考圖1B所描述。
在此實例中,記憶體裝置1100包含快閃記憶體,所述快閃記憶體包括表徵為普通陣列1101的第一部分以及表徵為ECC陣列1102的第二部分。普通陣列1101儲存資料區塊,而ECC陣列1102針對普通陣列1101中的對應資料區塊儲存ECC。在程式化期間,利用資料區塊計算及儲存ECC,使得所述ECC準確地反映對應資料區塊的內容。
一組記憶體陣列感測放大器(記憶體陣列SA)1103經由線1122與記憶體陣列1101操作性地耦接,且一組ECC感測放大器(ECC SA)1104經由線1122與ECC陣列1102操作性地耦接。在此實例中,頁面緩衝器1120操作性地耦接至記憶體陣列,即在感測資料且將資料程式化至記憶體陣列1101及ECC陣列1102中期間,資料移動通過頁面緩衝器且經利用。同樣地,ECC感測放大器1104操作性地耦接至記憶體陣列1101及ECC陣列1102,即其用於感測儲存在陣列中的資料。另外,字元線驅動器1121與記憶體陣列1101及ECC陣列1102相關聯。所示出的感測放大器及頁面緩衝器的配置類似於一些NAND架構裝置中的配置。在不同實施例中,配置不同,所述不同實施例包含經組態以用於NOR架構裝置以及用於其他記憶體技術的實施例。
積體電路1100包含位址計數器1112或其他位址邏輯,其用於將線1110上的位址提供至字元線驅動器1121、提供至頁面緩衝器1120或其他類型的行解碼器,且提供至輸出資料多工器1107。位址計數器1112可由晶片上控制器1125控制。另外,位址計數器1112可由輸出資料多工器1107利用以控制資料區塊至外部主機(210,圖2A)的輸出。
記憶體裝置亦包含用於針對快閃記憶體的情況進行程式化、抹除以及讀取或針對其他類型的非揮發性記憶體的情況進行設定、重置以及讀取提供必要偏壓電壓的電路。用於提供偏壓電壓的電路可包含電荷泵、分壓器、電流源、電壓調節器以及適用於在積體電路上實施的其他電路元件。
記憶體陣列感測放大器1103及ECC感測放大器1104經配置以提供資料區塊(其可為例如128位元)及對應ECC(其可為例如11位元)至ECC邏輯1105。另外,與記憶體陣列耦接的記憶體陣列感測放大器1103經配置以提供其輸出資料至校正多工器1106,所述校正多工器1106可呈例如快取記憶體形式。ECC邏輯1105產生識別對應區塊中的錯誤位元的位置且提供位置至校正多工器1106的輸出,其中錯誤位元經校正。校正多工器1106的輸出為應用於輸出資料多工器1107的經校正資料區塊,其中所述區塊可作為例如11位元字元的序列提供至輸入/輸出介面1110。輸入/輸出介面1110可使用針對特定實施例指定的匯流排協定而提供資料至外部主機。
輸入/輸出介面1110亦可接收來自外部主機的資料以用於寫入至記憶體陣列中。因此,在方塊圖中,示出自資料多工器1107至記憶體陣列感測放大器1103、ECC感測放大器1104以及頁面緩衝器1120的資料路徑1109。在寫入操作期間,頁面緩衝器1120可加載有包含資料區塊及對應ECC的資料模式,其可根據適於所述類型的記憶體技術的程序而程式化及驗證。在一些實施例中,頁面緩衝器可儲存一個區塊及一個對應ECC。在其他實施例中,頁面緩衝器可儲存大於一個區塊及大於一個對應ECC。在考慮到與記憶體裝置的其他特性一起利用的ECC邏輯的類型的情況下,頁面緩衝器1120的大小可經設計為適於技術的特定實施方案。
在此實例中,輸入/輸出介面1130亦耦接至命令邏輯1126,其中來自外部主機的命令可經解碼且應用於積體電路上的控制器1125。此處,來自外部主機的命令可包含如本文中所描述的刷新命令序列。命令邏輯1126可產生應用於控制器1125的內部控制信號。
根據本文中所描述的技術的實施例,控制器1125可對具有刷新區塊位址的刷新命令序列作出回應以執行刷新操作。刷新操作可包含:將來自具有刷新區塊位址的定址記憶體區塊的資料的備份複本儲存至備份區塊,設定刷新映射表中的條目以將刷新區塊位址映射至備份區塊,使用來自備份區塊的資料刷新具有刷新區塊位址的定址記憶體區塊,以及在定址記憶體區塊的刷新操作完成後重置條目。
控制器1125可經組態以:執行用以針對設定條目掃描刷新映射表的自中斷恢復的程序,針對設定條目中識別的定址記憶體區塊完成刷新操作,以及在刷新操作完成後重置設定條目。
控制器1125可包括一或多個狀態機或其他邏輯構造,控制信號藉由所述一或多個狀態機或其他邏輯構造產生且出於執行嵌入式操作程序的目的應用於記憶體的組件,所述嵌入式操作程序包含寫入程序及讀取程序。針對快閃記憶體,寫入程序可包含程式化程序及抹除程序。
可使用以下來實施控制器1125:專用邏輯電路、可程式化邏輯電路、具有儲存於經執行以實施控制器1125的積體電路上的控制碼的通用處理器以及此等元件的組合。控制器1125中的一或多個狀態機可經組態以藉由應用適當時序及控制信號至裝置的各種電路組件來執行嵌入式操作程序。
在一個實例中,記憶體包括快閃記憶體,諸如高密度NAND快閃記憶體。同樣可利用其他類型的記憶體技術,包含相變記憶體(phase change memory,PCM)、已知為ReRAM或RRAM的可程式化電阻記憶體、NOR快閃記憶體、磁阻記憶體等等。另外,可利用其他類型的記憶體技術,包含揮發性記憶體,諸如DRAM或SRAM。
本文中描述示出藉由記憶體控制器或藉由記憶體裝置執行的邏輯的數個流程圖。邏輯可使用儲存於電腦系統可存取記憶體中的電腦程式而程式化的處理器實施,且可由處理器、專用邏輯硬體(包含場可程式化積體電路)及專用邏輯硬體及電腦程式的組合執行。如同本文中的所有流程圖,應瞭解可組合、並行執行或以不同序列執行許多步驟而不影響所達成功能。在一些情況下,如讀者將瞭解,只要亦進行某些其他改變,重新配置步驟將達成相同結果。在其他情況下,如讀者將瞭解,只要符合某些條件,重新配置步驟將達成相同結果。此外,將瞭解,本文中的流程圖僅繪示相關於理解本發明的步驟,且將理解,可在所繪示彼等步驟之前、之後以及之間執行用於實現其他功能的眾多額外步驟。
儘管參考上文詳述的較佳實施例及實例揭露本發明,但應理解,此等實例意欲為說明性而非限制性意義。預期所屬領域的技術人員將容易地想到各種修改及組合,所述修改及組合將在本發明的精神及以下申請專利範圍的範疇內。
100:電路
101:串選擇電晶體
102、103、104、105、106:記憶胞
107:接地選擇電晶體
110:局部位元線
120:全局位元線
130:感測電路
135:箝位電路
141:第一分佈
142:第二分佈
143:感測窗
200:系統
210:主機
211:微控制器單元
212:儲存子系統
213:快閃記憶體介面
214:其他電路
215:匯流排子系統
220、1100:記憶體裝置
221:偏壓配置供應電壓
222、1105:ECC邏輯
223:輸入/輸出埠
224、1112:位址計數器
230:控制器
235、1128:刷新映射表
235C:刷新映射電路
235M:刷新映射記憶體區域
240、1101:記憶體陣列
250:匯流排
311、312、313、314、315、316、317、318、321、322、323、324、325、326、327、328、330、331、332、333、334、335、336、337、338、341、342、343、344、345、351、352、353、551、552、553、554、621、622、623、624、625、626、627、628、751、752、753、754、755、756、757、758、759、927:步驟
410、416、417、420、430:條目
501A、523、533、542A、851:位址
501F、524、542F、842、852:啟用旗標
520、530:備份區塊
521、531:資料區域
522、532:預留區域
534、541F、843:停用旗標
541A、841:備份區塊位址
800、900、1000:備份區塊清單
1100:積體電路
1102:ECC陣列
1103:記憶體陣列感測放大器
1104:ECC感測放大器
1106:校正多工器
1107:輸出資料多工器
1109:資料路徑
1110、1130:輸入/輸出介面
1120:頁面緩衝器
1121:字元線驅動器
1122:線
1125:控制器
1126:命令邏輯
BLC:位元線箝位信號
CPWEL:共同P井
CSRC:共同源極線
D:漏極端子
Icell:胞電流
S:源極端子
SGD:串選擇線
SGS:接地選擇線
VCLAMP:箝位偏壓
Vpass:通過電壓
Vread:讀取電壓
Vt:臨限電壓
Vsg:電壓
WLn、WLn+1、WLn-1、WLn+2、WLn-2:字元線
圖1A為適用於對NAND串中的選定記憶胞執行讀取操作的電路的實例示意圖。
圖1B示出記憶胞的臨限電壓Vt的實例分佈。
圖2A為包含包括刷新映射表的記憶體裝置及耦接至記憶體裝置的主機的系統的簡化系統圖。
圖2B為如圖2A中所繪示的刷新映射表的放大圖。
圖3A示出用於藉由在記憶體裝置外部的主機讀取記憶體裝置的實例流程圖。
圖3B示出用於藉由在包括刷新映射表的記憶體裝置外部的主機執行原地刷新操作的實例流程圖。
圖3C示出用於在包括刷新映射表的記憶體裝置中執行電力流失後恢復程序的實例流程圖。
圖3D示出用於讀取包括刷新映射表的記憶體裝置的實例流程圖。
圖3E示出用於藉由記憶體裝置中的控制器進行的通電程序的實例流程圖。
圖4A至圖4G示出包含日誌格式表的刷新映射表的實施例。
圖5A示出儲存登錄一組備份區塊以及其啟用狀態的備份區塊清單的刷新映射表的替代實施例。
圖5B示出用於藉由包含如圖5A中所繪示的刷新映射表的替代實施例的記憶體裝置中的控制器進行的通電程序的實例流程圖。
圖5C示出登錄一組備份區塊的備份區塊清單的初始化。
圖5D示出第一實施例中的備份區塊中的資料配置。
圖6A示出用於操作包括如圖5A中的刷新映射表的替代實施例的記憶體裝置的實例流程圖。
圖6B至圖6C示出在儲存在刷新映射表中的備份區塊清單中註銷舊備份區塊且登錄新備份區塊。
圖7A示出用於操作包括如圖5A中的刷新映射表的替代實施例的記憶體裝置的替代流程圖。
圖7B示出第二實施例中的備份區塊中的資料配置。
圖8A、圖8B以及圖8C示出備份區塊清單的第一實施例,其中備份區塊清單可同時登錄多個有效備份區塊。
圖9A、圖9B以及圖9C示出備份區塊清單的第二實施例,其中備份區塊清單可僅同時登錄單一有效備份區塊。
圖10A及圖10B示出備份區塊清單的第三實施例,其中備份區塊清單可僅登錄有效備份區塊。
圖11為包含記憶體陣列以及用於執行如本文中所描述的刷新操作的控制器的記憶體裝置的簡化方塊圖。
200:系統
210:主機
211:微控制器單元
212:儲存子系統
213:快閃記憶體介面
214:其他電路
215:匯流排子系統
220:記憶體裝置
221:偏壓配置供應電壓
222:ECC邏輯
223:輸入/輸出埠
224:位址計數器
230:控制器
235:刷新映射表
240:記憶體陣列
250:匯流排
Claims (15)
- 一種記憶體裝置,包括: 記憶體,包含積體電路或多晶片模組上的多個記憶體區塊; 控制器,位於所述積體電路或所述多晶片模組上,所述控制器耦接至所述記憶體以執行具有位址的命令,以存取所述多個記憶體區塊中的定址記憶體區塊;以及 刷新映射表,位於所述積體電路或所述多晶片模組上的非揮發性記憶體中,所述刷新映射表可由所述控制器存取,所述刷新映射表具有一或多個條目,所述刷新映射表中的條目將識別針對刷新而設定的定址記憶體區塊的位址映射至備份區塊位址; 其中所述控制器對具有刷新區塊位址的刷新命令序列作出回應以執行刷新操作,所述刷新操作包含:將來自具有所述刷新區塊位址的所述定址記憶體區塊的資料的備份複本儲存至備份區塊,設定所述刷新映射表中的條目以將所述刷新區塊位址映射至所述備份區塊,使用來自所述備份區塊的資料刷新具有所述刷新區塊位址的所述定址記憶體區塊,以及在所述定址記憶體區塊的所述刷新操作完成後重置所述條目; 其中所述控制器經組態以:執行用以在所述記憶體裝置通電後恢復所述刷新區塊位址至所述備份區塊位址的映射的程序,針對將所述刷新區塊位址映射至所述備份區塊位址的設定條目掃描所述刷新映射表,以及將所述設定條目登錄在所述刷新映射表中。
- 如請求項1之記憶體裝置,其中所述刷新映射表包含儲存所述一或多個條目的刷新映射記憶體區域,及登錄將所述刷新區塊位址映射至所述備份區塊的所述設定條目的刷新映射電路。
- 如請求項1之記憶體裝置,其中在所述刷新操作中,刷新所述定址記憶體區塊包含抹除所述定址記憶體區塊以及隨後將所述備份複本自所述備份區塊複製至所述定址記憶體區塊。
- 如請求項1之記憶體裝置,所述刷新操作中包含在將所述備份複本儲存在所述備份區塊中之前,抹除所述備份區塊。
- 如請求項1之記憶體裝置,其中所述刷新映射表包括日誌格式表,其中設定所述條目包含將有效條目寫入於所述日誌格式表中,且重置所述條目包含將所述條目標記為無效。
- 如請求項1之記憶體裝置,其中所述刷新映射表包括登錄一組備份區塊的備份區塊清單,其中所述條目儲存在所述組備份區塊中的對應備份區塊內部,其中設定所述條目包含將有效旗標寫入於所述組備份區塊中的可用區塊中,且重置所述條目包含抹除所述區塊中的至少所述有效旗標或寫入無效旗標。
- 一種用於操作記憶體裝置的方法,其中所述記憶體裝置包括:記憶體,包含積體電路上的多個記憶體區塊;刷新映射表,位於所述積體電路上的非揮發性記憶體中,具有一或多個條目,所述刷新映射表中的條目將刷新區塊位址映射至備份區塊位址;以及控制器,位於所述積體電路上,耦接至所述記憶體以執行具有位址的命令,以存取所述多個記憶體區塊中的定址記憶體區塊, 所述方法包括藉由所述記憶體裝置的所述控制器進行以下操作: 藉由以下來執行用以在所述記憶體裝置通電後恢復所述刷新區塊位址至所述備份區塊位址的映射的程序: 針對將所述刷新區塊位址映射至所述備份區塊位址的設定條目掃描所述刷新映射表,以及 將所述設定條目登錄在所述刷新映射表中。
- 如請求項7之用於操作記憶體裝置的方法,其中所述刷新映射表包含儲存所述一或多個條目的刷新映射記憶體區域以及刷新映射電路,所述方法包括: 針對所述設定條目掃描所述刷新映射表中的所述刷新映射記憶體區域;以及 在所述刷新映射表中的所述刷新映射電路中登錄將所述刷新區塊位址映射至所述備份區塊的所述設定條目。
- 一種用於操作記憶體裝置的方法,藉由耦接至所述記憶體裝置的外部主機,其中所述記憶體裝置包括:積體電路上的包含多個記憶體區塊的記憶體;以及所述積體電路上的非揮發性記憶體中的刷新映射表,具有一或多個條目,所述刷新映射表中的條目將識別針對刷新而設定的定址記憶體區塊的位址映射至備份區塊位址,所述方法包括: 藉由發佈具有刷新區塊位址的刷新命令序列至所述記憶體裝置來執行刷新操作,所述刷新操作包含: 將來自所述刷新區塊位址處的所述定址記憶體區塊的資料的備份複本儲存在備份區塊中; 設定所述刷新映射表中的映射條目以將所述刷新區塊位址映射至所述備份區塊的位址; 使用來自所述備份區塊的資料刷新所述刷新區塊位址處的所述定址記憶體區塊;以及 在所述定址記憶體區塊的所述刷新操作完成後重置所述映射條目。
- 如請求項9之用於操作記憶體裝置的方法,其中在所述刷新操作中,所述刷新所述定址記憶體區塊包含: 抹除所述刷新區塊位址處的所述定址記憶體區塊;以及 隨後將所述備份複本自所述備份區塊複製至所述定址記憶體區塊。
- 如請求項9之用於操作記憶體裝置的方法,所述刷新操作包含在所述將所述備份複本儲存在所述備份區塊中之前抹除所述備份區塊。
- 如請求項9之用於操作記憶體裝置的方法,其中所述刷新映射表包括日誌格式表,其中設定所述映射條目包含: 將有效條目寫入於所述日誌格式表中;以及 重置所述條目包含將所述條目標記為無效。
- 如請求項9之用於操作記憶體裝置的方法,其中所述刷新映射表包括登錄一組備份區塊的備份區塊清單,其中所述條目儲存在所述組備份區塊中的對應備份區塊內部,其中 所述設定所述映射條目包含將有效旗標寫入於所述組備份區塊中的可用區塊中;以及 所述重置所述映射條目包含抹除所述區塊中的至少所述有效旗標或寫入無效旗標。
- 如請求項10之用於操作記憶體裝置的方法,所述刷新操作包括: 判定在中斷之前開始的複製操作的狀態; 在所述狀態指示所述複製操作不可恢復的情況下,抹除所述定址記憶體區塊且將所述備份複本自所述備份區塊複製至所述定址記憶體區塊;以及 在所述狀態指示所述複製操作可恢復的情況下,在所述定址記憶體區塊的所述刷新操作完成後重置所述映射條目。
- 如請求項10之用於操作記憶體裝置的方法,包含在所述執行所述刷新操作之前,發佈命令序列以用於: 在輸入區塊位址處自所述記憶體裝置擷取資料; 檢查所述輸入區塊位址上的所述擷取資料的ECC狀態;以及 在所述ECC狀態指示所述輸入區塊位址處的區塊需要刷新的情況下,在所述主機中登錄具有所述輸入區塊位址的所述刷新命令序列包含在所述主機中將所述輸入區塊位址登錄為所述刷新區塊位址。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/938,500 US11087858B1 (en) | 2020-07-24 | 2020-07-24 | In-place refresh operation in flash memory |
| US16/938,500 | 2020-07-24 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202205283A TW202205283A (zh) | 2022-02-01 |
| TWI762033B true TWI762033B (zh) | 2022-04-21 |
Family
ID=77179099
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW109139892A TWI762033B (zh) | 2020-07-24 | 2020-11-16 | 記憶體裝置以及用於操作記憶體裝置的方法 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11087858B1 (zh) |
| CN (2) | CN113970999B (zh) |
| TW (1) | TWI762033B (zh) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20240385754A1 (en) * | 2021-12-14 | 2024-11-21 | Intel Corporation | Devices and Methods for Preventing Memory Failure in Electronic Devices |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140160858A1 (en) * | 2010-07-09 | 2014-06-12 | Samsung Electronics Co., Ltd. | Nonvolatile memory system and refresh method |
| US20140269123A1 (en) * | 2013-03-15 | 2014-09-18 | Samsung Electronics Co., Ltd. | Semiconductor memory device and refresh method thereof |
| US20170315891A1 (en) * | 2016-05-02 | 2017-11-02 | Ji Hyung Park | Storage device having various recovery methods and recovery modes |
| US10354714B2 (en) * | 2016-08-23 | 2019-07-16 | Micron Technology, Inc. | Temperature-dependent refresh circuit configured to increase or decrease a count value of a refresh timer according to a self-refresh signal |
| TW202018517A (zh) * | 2018-11-14 | 2020-05-16 | 英商Arm股份有限公司 | 用於控制記憶體存取的裝置及方法 |
Family Cites Families (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20080151670A1 (en) * | 2006-12-22 | 2008-06-26 | Tomohiro Kawakubo | Memory device, memory controller and memory system |
| US8285940B2 (en) * | 2008-02-29 | 2012-10-09 | Cadence Design Systems, Inc. | Method and apparatus for high speed cache flushing in a non-volatile memory |
| TWI548990B (zh) * | 2013-05-17 | 2016-09-11 | 宇瞻科技股份有限公司 | 記憶體儲存裝置及其還原方法與記憶體控制器 |
| US9817588B2 (en) * | 2015-04-10 | 2017-11-14 | Macronix International Co., Ltd. | Memory device and operating method of same |
| KR20170114438A (ko) | 2016-04-04 | 2017-10-16 | 에스케이하이닉스 주식회사 | 데이터 저장 장치 및 그것의 동작 방법 |
| KR102421149B1 (ko) * | 2018-01-02 | 2022-07-14 | 에스케이하이닉스 주식회사 | 메모리 시스템 및 그것의 동작 방법 |
| TWI703438B (zh) * | 2018-09-11 | 2020-09-01 | 慧榮科技股份有限公司 | 映射表更新方法 |
-
2020
- 2020-07-24 US US16/938,500 patent/US11087858B1/en active Active
- 2020-11-16 TW TW109139892A patent/TWI762033B/zh active
- 2020-11-17 CN CN202011289115.9A patent/CN113970999B/zh active Active
- 2020-11-17 CN CN202410997442.1A patent/CN118778903A/zh active Pending
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20140160858A1 (en) * | 2010-07-09 | 2014-06-12 | Samsung Electronics Co., Ltd. | Nonvolatile memory system and refresh method |
| US20140269123A1 (en) * | 2013-03-15 | 2014-09-18 | Samsung Electronics Co., Ltd. | Semiconductor memory device and refresh method thereof |
| US20170315891A1 (en) * | 2016-05-02 | 2017-11-02 | Ji Hyung Park | Storage device having various recovery methods and recovery modes |
| US10354714B2 (en) * | 2016-08-23 | 2019-07-16 | Micron Technology, Inc. | Temperature-dependent refresh circuit configured to increase or decrease a count value of a refresh timer according to a self-refresh signal |
| TW202018517A (zh) * | 2018-11-14 | 2020-05-16 | 英商Arm股份有限公司 | 用於控制記憶體存取的裝置及方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US11087858B1 (en) | 2021-08-10 |
| CN113970999B (zh) | 2024-09-27 |
| CN113970999A (zh) | 2022-01-25 |
| CN118778903A (zh) | 2024-10-15 |
| TW202205283A (zh) | 2022-02-01 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN111352580B (zh) | 存储装置及其操作方法 | |
| KR102831409B1 (ko) | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 | |
| CN112860178A (zh) | 存储器装置、存储器控制器、存储器系统及存储器系统的操作方法 | |
| US12455787B2 (en) | Memory system and operating method thereof | |
| TWI741631B (zh) | 記憶體裝置及記憶體裝置操作方法 | |
| US10162538B2 (en) | Memory operation threshold adjustment based on bit line integrity data | |
| CN110837340A (zh) | 闪存控制器、管理闪存模块的方法及相关的电子装置 | |
| US11656790B2 (en) | Memory system, memory controller, and operation method of memory system | |
| KR102874912B1 (ko) | 메모리 시스템, 메모리 컨트롤러 및 그 동작 방법 | |
| US10936456B1 (en) | Handling malfunction in a memory system comprising a nonvolatile memory by monitoring bad-block patterns | |
| TWI762033B (zh) | 記憶體裝置以及用於操作記憶體裝置的方法 | |
| US11669266B2 (en) | Memory system and operating method of memory system | |
| CN113936721B (zh) | 存储器系统、存储器装置和操作存储器装置的方法 | |
| US11467903B2 (en) | Memory system and operating method thereof | |
| US11704050B2 (en) | Memory system for determining a memory area in which a journal is stored according to a number of free memory blocks | |
| US11636007B2 (en) | Memory system and operating method thereof for flushing data in data cache with parity | |
| CN114968078A (zh) | 存储器装置及其操作方法 | |
| TWI823649B (zh) | 快閃記憶體控制器的控制方法、快閃記憶體控制器以及電子裝置 | |
| US11500771B2 (en) | Memory system, memory controller, and method of operating memory system | |
| KR20210054188A (ko) | 메모리 시스템 및 메모리 컨트롤러 | |
| KR102842259B1 (ko) | 메모리 시스템, 메모리 컨트롤러 및 메모리 시스템의 동작 방법 | |
| US20230195367A1 (en) | Memory system, memory controller, and operation method of memory system | |
| TW202401258A (zh) | 記憶體系統、記憶體控制器和操作記憶體系統的方法 |