TWI625735B - 記憶體管理方法以及儲存控制器 - Google Patents

記憶體管理方法以及儲存控制器 Download PDF

Info

Publication number
TWI625735B
TWI625735B TW106137732A TW106137732A TWI625735B TW I625735 B TWI625735 B TW I625735B TW 106137732 A TW106137732 A TW 106137732A TW 106137732 A TW106137732 A TW 106137732A TW I625735 B TWI625735 B TW I625735B
Authority
TW
Taiwan
Prior art keywords
word line
error value
error
value
decoding operation
Prior art date
Application number
TW106137732A
Other languages
English (en)
Other versions
TW201919049A (zh
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 大心電子股份有限公司
Priority to TW106137732A priority Critical patent/TWI625735B/zh
Priority to US15/912,545 priority patent/US10936391B2/en
Application granted granted Critical
Publication of TWI625735B publication Critical patent/TWI625735B/zh
Publication of TW201919049A publication Critical patent/TW201919049A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/025Detection or location of defective auxiliary circuits, e.g. defective refresh counters in signal lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/21Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements
    • G11C11/34Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices
    • G11C11/40Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors
    • G11C11/401Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using electric elements using semiconductor devices using transistors forming cells needing refreshing or charge regeneration, i.e. dynamic cells
    • G11C11/4063Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing
    • G11C11/407Auxiliary circuits, e.g. for addressing, decoding, driving, writing, sensing or timing for memory cells of the field-effect type
    • G11C11/408Address circuits
    • G11C11/4087Address decoders, e.g. bit - or word line decoders; Multiple line decoders
    • 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/3418Disturbance prevention or evaluation; Refreshing of disturbed memory data
    • G11C16/3422Circuits or methods to evaluate read or write disturbance in nonvolatile memory, without steps to mitigate the problem
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/38Response verification devices
    • G11C29/42Response verification devices using error correcting codes [ECC] or parity check
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C29/44Indication or identification of errors, e.g. for repair
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/04Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
    • G11C29/08Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
    • G11C29/12Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
    • G11C2029/1202Word line control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Computer Hardware Design (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本發明提供一種記憶體管理方法與使用所述方法之儲存控制器。所述方法包括對儲存於可複寫式非揮發性記憶體模組的多個字元線中的第一字元線的第一資料進行解碼操作,以判斷所述解碼操作成功或失敗,並且獲得所述第一字元線的第一錯誤值;當判定所述解碼操作成功時,根據所述第一錯誤值與第一門檻值來判斷是否標記所述第一字元線為壞字元線;以及當判定所述解碼操作失敗時,獲得相鄰於所述第一字元線的第二字元線的第二錯誤值,根據所述第一錯誤值、所述第二錯誤值與第二門檻值來判斷是否皆標記所述第一字元線與所述第二字元線為該壞字元線。

Description

記憶體管理方法以及儲存控制器
本發明是有關於一種記憶體管理方法,且特別是有關於一種適用於配置有可複寫式非揮發性記憶體模組的儲存裝置的記憶體管理方法與儲存控制器。
一般來說,可複寫式非揮發性記憶體模組具有多個實體區塊,每一實體區塊會具有多個記憶胞(Memory Cells),並且所述多個記憶胞可構成多個字元線(Word-Lines)(每個實體區塊具有所述多個字元線)。可複寫式非揮發性記憶體模組中的所述多個記憶胞會隨著使用次數等因素而導致損壞,進而導致一或多個實體區塊不能再被使用。傳統上,可複寫式非揮發性記憶體模組的控制器會偵測或是判定此些不可再被使用的實體區塊為壞實體區塊,並且不使用所述壞實體區塊來儲存資料。然而,每個被判定的壞實體區塊中的多個字元線並非皆是損壞的。如此一來,會因為壞實體區塊的判定而過度減少了可複寫式非揮發性記憶體模組整體的可用空間。
舉例來說,假設一實體區塊經由傳統作法被判定/標記為壞實體區塊而不可儲存資料並且其存在有好的字元線(沒有損壞的字元線,並且可適當地儲存資料)。在此情況下,所述實體區塊的好的字元線會因為所述實體區塊已被判定/標記為壞實體區塊而不能被使用,導致了所述實體區塊的好的字元線不可被用於儲存資料,進而浪費了位於所述壞實體區塊中的對應所述好的字元線的可用空間。
因此,如何有效地判定/辨識每個實體區塊中多個字元線是否損壞,以較細緻地判定可複寫式非揮發性記憶體模組的多個記憶胞的損壞範圍,進而提昇可複寫式非揮發性記憶體模組的可用空間的利用效率,是本領域人員研究的課題之一。
本發明提供一種記憶體管理方法與儲存控制器,可經由對可複寫式非揮發性記憶體模組的多個實體區塊的多個字元線中的一字元線進行解碼操作,以判斷是否標記所述字元線為壞字元線,藉此可有效率地辨識可複寫式非揮發性記憶體模組的所述多個字元線是否損壞。
本發明的一實施例提供適用於可複寫式非揮發性記憶體模組的一種記憶體管理方法,其中所述非揮發性記憶體模組具有多個字元線,並且每一所述多個字元線由一或多個記憶胞構成。所述記憶體管理方法包括對儲存於所述多個字元線中的第一字元線的第一資料進行第一型解碼操作,以判斷所述第一型解碼操作成功或失敗,並且獲得所述第一字元線的第一錯誤值;當判定所述第一型解碼操作成功時,根據所述第一錯誤值與第一門檻值來判斷是否標記所述第一字元線為壞字元線;以及當判定所述第一型解碼操作失敗時,獲得相鄰於所述第一字元線的第二字元線的第二錯誤值,根據所述第一錯誤值、所述第二錯誤值與第二門檻值來判斷是否皆標記所述第一字元線與所述第二字元線為該壞字元線。
本發明的一實施例提供用於控制配置有可複寫式非揮發性記憶體模組的儲存裝置的一種儲存控制器,其中所述非揮發性記憶體模組具有多個字元線,並且每一所述多個字元線由一或多個記憶胞構成。所述儲存控制器包括連接介面電路、記憶體介面控制電路、處理器、錯誤檢查與校正電路。連接介面電路用以耦接至主機系統。記憶體介面控制電路用以耦接至所述可複寫式非揮發性記憶體模組。錯誤檢查與校正電路用以進行解碼操作。處理器,用以指示所述錯誤檢查與校正電路對儲存於所述多個字元線中的第一字元線的第一資料進行第一型解碼操作,以判斷所述第一型解碼操作成功或失敗,並且獲得所述第一字元線的第一錯誤值。當判定所述第一型解碼操作成功時,所述處理器更用以根據所述第一錯誤值與第一門檻值來判斷是否標記所述第一字元線為壞字元線。當判定所述第一型解碼操作失敗時,所述處理器更用以獲得相鄰於所述第一字元線的第二字元線的第二錯誤值,根據所述第一錯誤值、所述第二錯誤值與第二門檻值來判斷是否皆標記所述第一字元線與所述第二字元線為該壞字元線。
基於上述,本發明實施例所提供的記憶體管理方法以及儲存控制器,可對可複寫式非揮發性記憶體模組的多個字元線中的第一字元線所儲存的資料所進行的解碼操作,以根據所述解碼操作的結果以及對應獲得的錯誤值來判斷是否標記所述第一字元線為壞字元線。此外,更可對相鄰於所述第一字元線的第二字元線所儲存的資料進行解碼操作,以根據所述解碼操作的結果以及對應獲得的錯誤值來判斷是否標記所述第一字元線與所述第二字元線為壞字元線。如此一來,可有效地判斷可複寫式非揮發性記憶體模組的多個字元線是否損壞,進而增進可複寫式非揮發性記憶體模組的可用空間的利用效率。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
在本實施例中,儲存裝置包括可複寫式非揮發性記憶體模組(rewritable non-volatile memory module)與儲存裝置控制器(亦稱,儲存控制器或儲存控制電路)。此外,儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至儲存裝置或從儲存裝置中讀取資料。
圖1是根據本發明的一實施例所繪示的主機系統及儲存裝置的方塊示意圖。
請參照圖1,主機系統(Host System)10包括處理器(Processor)110、主機記憶體(Host Memory)120及資料傳輸介面電路(Data Transfer Interface Circuit)130。在本實施例中,資料傳輸介面電路130耦接(亦稱,電性連接)至處理器110與主機記憶體120。在另一實施例中,處理器110、主機記憶體120與資料傳輸介面電路130之間利用系統匯流排(System Bus)彼此耦接。
儲存裝置20包括儲存控制器(Storage Controller)210、可複寫式非揮發性記憶體模組(Rewritable Non-Volatile Memory Module)220及連接介面電路(Connection Interface Circuit)230。其中,儲存控制器210包括處理器211、資料管理電路(Data Transfer Management Circuit)212與記憶體介面控制電路(Memory Interface Control Circuit)213。
在本實施例中,主機系統10是透過資料傳輸介面電路130與儲存裝置20的連接介面電路230耦接至儲存裝置20來進行資料的存取操作。例如,主機系統10可經由資料傳輸介面電路130將資料儲存至儲存裝置20或從儲存裝置20中讀取資料。
在本實施例中,處理器110、主機記憶體120及資料傳輸介面電路130可設置在主機系統10的主機板上。資料傳輸介面電路130的數目可以是一或多個。透過資料傳輸介面電路130,主機板可以經由有線或無線方式耦接至儲存裝置20。儲存裝置20可例如是隨身碟、記憶卡、固態硬碟(Solid State Drive,SSD)或無線記憶體儲存裝置。無線記憶體儲存裝置可例如是近距離無線通訊(Near Field Communication,NFC)記憶體儲存裝置、無線傳真(WiFi)記憶體儲存裝置、藍牙(Bluetooth)記憶體儲存裝置或低功耗藍牙記憶體儲存裝置(例如,iBeacon)等以各式無線通訊技術為基礎的記憶體儲存裝置。此外,主機板也可以透過系統匯流排耦接至全球定位系統(Global Positioning System,GPS)模組、網路介面卡、無線傳輸裝置、鍵盤、螢幕、喇叭等各式I/O裝置。
在本實施例中,資料傳輸介面電路130與連接介面電路230是相容於高速周邊零件連接介面(Peripheral Component Interconnect Express, PCI Express)標準的介面電路。並且,資料傳輸介面電路130與連接介面電路230之間是利用快速非揮發性記憶體介面標準(Non-Volatile Memory express,NVMe)通訊協定來進行資料的傳輸。
然而,必須瞭解的是,本發明不限於此,資料傳輸介面電路130與連接介面電路230亦可以是符合並列先進附件(Parallel Advanced Technology Attachment,PATA)標準、電氣和電子工程師協會(Institute of Electrical and Electronic Engineers,IEEE)1394標準、序列先進附件(Serial Advanced Technology Attachment,SATA)標準、通用序列匯流排(Universal Serial Bus,USB)標準、SD介面標準、超高速一代(Ultra High Speed-I,UHS-I)介面標準、超高速二代(Ultra High Speed-II,UHS-II)介面標準、記憶棒(Memory Stick, MS)介面標準、多晶片封裝(Multi-Chip Package)介面標準、多媒體儲存卡(Multi Media Card,MMC)介面標準、eMMC介面標準、通用快閃記憶體(Universal Flash Storage,UFS)介面標準、eMCP介面標準、CF介面標準、整合式驅動電子介面(Integrated Device Electronics,IDE)標準或其他適合的標準。此外,在另一實施例中,連接介面電路230可與儲存控制器210封裝在一個晶片中,或者連接介面電路230是佈設於一包含儲存控制器210之晶片外。
在本實施例中,主機記憶體120用以暫存處理器110所執行的指令或資料。例如,在本範例實施例中,主機記憶體120可以是動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)、靜態隨機存取記憶體(Static Random Access Memory,SRAM)等。然而,必須瞭解的是,本發明不限於此,主機記憶體120也可以是其他適合的記憶體。
儲存控制器210用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令並且根據主機系統10的指令在可複寫式非揮發性記憶體模組220中進行資料的寫入、讀取與抹除等運作。
更詳細來說,儲存控制器210中的處理器211為具備運算能力的硬體,其用以控制儲存控制器210的整體運作。具體來說,處理器211具有多個控制指令,並且在儲存裝置20運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。
值得一提的是,在本實施例中,處理器110與處理器211例如是中央處理單元(Central Processing Unit,CPU)、微處理器(micro-processor)、或是其他可程式化之處理單元(Microprocessor)、數位訊號處理器(Digital Signal Processor,DSP)、可程式化控制器、特殊應用積體電路(Application Specific Integrated Circuits,ASIC)、可程式化邏輯裝置(Programmable Logic Device,PLD)或其他類似電路元件,本發明並不限於此。
在一實施例中,儲存控制器210還具有唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有開機碼(boot code),並且當儲存控制器210被致能時,處理器211會先執行此開機碼來將儲存於可複寫式非揮發性記憶體模組220中之控制指令載入至儲存控制器210的隨機存取記憶體中。之後,處理器211會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。在另一實施例中,處理器211的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組220的特定區域,例如,可複寫式非揮發性記憶體模組220中專用於存放系統資料的實體儲存單元中。
在本實施例中,如上所述,儲存控制器210還包括資料管理電路212與記憶體介面控制電路213。應注意的是,儲存控制器220各部件所執行的操作亦可視為儲存控制器220所執行的操作。
其中,資料管理電路212耦接至處理器211、記憶體介面控制電路213與連接介面電路230。資料管理電路212用以接受處理器211的指示來進行資料的傳輸。例如,經由連接介面電路230從主機系統10(如,主機記憶體120)讀取資料,並且將所讀取的資料經由記憶體介面控制電路213寫入至可複寫式非揮發性記憶體模組220中(如,根據來自主機系統10的寫入指令來進行寫入操作)。又例如,經由記憶體介面控制電路213從可複寫式非揮發性記憶體模組220的一或多個實體單元中讀取資料(資料可讀取自一或多個實體單元中的一或多個記憶胞),並且將所讀取的資料經由連接介面電路230寫入至主機系統10(如,主機記憶體120)中(如,根據來自主機系統10的讀取指令來進行讀取操作)。在另一實施例中,資料管理電路212亦可整合至處理器211中。
記憶體介面控制電路213用以接受處理器211的指示,配合資料管理電路212來進行對於可複寫式非揮發性記憶體模組220的寫入(亦稱,程式化,Programming)操作、讀取操作或抹除操作。
舉例來說,處理器211可執行寫入指令序列(或處理器211指示資料管理電路212發送寫入指令序列至記憶體介面控制電路213),以指示記憶體介面控制電路213將資料寫入至可複寫式非揮發性記憶體模組220中;處理器211可執行讀取指令序列(或處理器211指示資料管理電路212發送讀取指令序列至記憶體介面控制電路213),以指示記憶體介面控制電路213從可複寫式非揮發性記憶體模組220的對應讀取指令的一或多個實體單元(亦稱,目標實體單元)中讀取資料;處理器211可執行抹除指令序列(或處理器211指示資料管理電路212發送抹除指令序列至記憶體介面控制電路213),以指示記憶體介面控制電路213對可複寫式非揮發性記憶體模組220進行抹除操作。寫入指令序列、讀取指令序列及抹除指令序列可各別包括一或多個程式碼或指令碼並且用以指示對可複寫式非揮發性記憶體模組220執行相對應的寫入、讀取及抹除等操作。在一實施例中,處理器211還可以下達其他類型的指令序列給記憶體介面控制電路213,以對可複寫式非揮發性記憶體模組220執行相對應的操作。
此外,欲寫入至可複寫式非揮發性記憶體模組220的資料會經由記憶體介面控制電路213轉換為可複寫式非揮發性記憶體模組220所能接受的格式。具體來說,若處理器211要存取可複寫式非揮發性記憶體模組220,處理器211會傳送對應的指令序列給記憶體介面控制電路213以指示記憶體介面控制電路213執行對應的操作。例如,這些指令序列可包括指示寫入資料的寫入指令序列、指示讀取資料的讀取指令序列、指示抹除資料的抹除指令序列、以及用以指示各種記憶體操作(例如,改變預設讀取電壓組的多個預設讀取電壓值以進行讀取操作,或執行垃圾回收程序等等)的相對應的指令序列。這些指令序列可包括一或多個訊號,或是在匯流排上的資料。這些訊號或資料可包括指令碼或程式碼。例如,在讀取指令序列中,會包括讀取的辨識碼、記憶體位址等資訊。
在本實施例中,錯誤檢查與校正電路214用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,當處理器211從主機系統11中接收到寫入指令時,錯誤檢查與校正電路214會為對應此寫入指令的資料產生對應的錯誤更正碼(error correcting code,ECC)及/或錯誤檢查碼(error detecting code,EDC) (編碼操作),並且記憶體管理電路502會將對應此寫入指令的資料與對應的錯誤更正碼及/或錯誤檢查碼寫入至可複寫式非揮發性記憶體模組220中。之後,當記憶體管理電路502從可複寫式非揮發性記憶體模組220中讀取資料時會同時讀取此資料對應的錯誤更正碼及/或錯誤檢查碼,並且錯誤檢查與校正電路214會依據此錯誤更正碼及/或錯誤檢查碼對所讀取的資料執行錯誤檢查與校正程序(解碼操作),以獲得正確的讀取的資料。
在本實施例中,錯誤檢查與校正電路214所使用的是低密度奇偶檢查碼(low density parity code,LDPC)演算法。在低密度奇偶檢查校正碼中,是用一個奇偶檢查矩陣來定義有效的碼字。對資料位元執行奇偶檢查程序(例如,將資料位元所形成的碼字與奇偶檢查矩陣相乘)後,可判斷該碼字是否為有效的碼字。若所產生的碼字為有效的碼字(將資料位元所形成的碼字與奇偶檢查矩陣相乘所獲得的向量為零),表示解碼成功;反之(將資料位元所形成的碼字與奇偶檢查矩陣相乘所獲得的向量不為零),表示解碼失敗。其中,若奇偶檢查矩陣與碼字的相乘是零向量,表示碼字為有效的碼字。在本實施例中,碼字可為正進行解碼操作的所讀取的資料(包含一或多個資料位元),並且在執行奇偶檢查程序後,不論解碼成功或是失敗,皆可獲得對應的校驗子。
在一實施例中,上述解碼操作會包括迭代解碼。具體來說,在對一讀取資料(原始碼字)執行每一次迭代解碼過後,可計算出所產生的碼字的每一個資料位元應該被解碼為位元“1”或是“0”。接著,在對這些計算出的資料位元執行奇偶檢查程序(例如,將資料位元所形成的碼字與奇偶檢查矩陣相乘)後,可判斷所產生碼字是否為有效的碼字。若所產生的碼字為有效的碼字,表示對於讀取資料(原始碼字)的解碼成功並且迭代解碼會停止。然而,若所產生的碼字不是有效的碼字,則會進行下一次的迭代,並且累計對讀取資料所執行的迭代解碼的迭代次數。若對讀取資料所執行的迭代解碼的迭代次數達到一個預設值,則表示對應所述讀取資料的解碼操作失敗並且迭代解碼也會停止。
在本實施例中,錯誤檢查與校正電路214可以藉由小幅度地調整用於讀取記憶胞的讀取電壓準位或執行幾次的迭代解碼操作即可有效糾錯。舉例來說,假設一開始可複寫式非揮發性記憶體模組220中的多個記憶胞的損耗程度很低(例如,此些記憶胞的P/E計數很小)。若要讀取此些記憶胞中的至少一記憶胞所儲存的資料,處理器211會指示資料管理電路212發送一個讀取指令序列至可複寫式非揮發性記憶體模組220。根據此讀取指令序列,記憶體介面控制電路213會使用一個(預設的)讀取電壓準位來從可複寫式非揮發性記憶體模組220讀取此些記憶胞並且將所獲得的資料位元(讀取資料)傳送給處理器211。然而,隨著可複寫式非揮發性記憶體模組220的使用時間增加(例如,P/E計數增加)及/或操作環境改變,可複寫式非揮發性記憶體模組220中的記憶胞可能會發生性能衰退(degradation)。發生性能衰退後,若持續使用相同的讀取電壓準位來讀取此些記憶胞,則讀取到的資料位元可能會包含許多錯誤。在本實施例中,若可複寫式非揮發性記憶體模組220為三維堆疊架構的可複寫式非揮發性記憶體模組(例如,三維NAND型快閃記憶體模組或垂直NAND型快閃記憶體模組),則其多個字元線中的兩個或兩個以上彼此相鄰的字元線有機率會發生字元線短路(Word-Line Short)現象。儲存在發生字元線短路現象的字元線的資料會發生錯誤。以下會藉由圖2來說明三維堆疊架構的可複寫式非揮發性記憶體模組;以及藉由圖3A~3D來詳細說明圖2的三維堆疊架構的可複寫式非揮發性記憶體模組的字元線短路現象。
在一實施例中,錯誤檢查與校正電路214會根據所獲得的資料位元執行第一型解碼操作(亦稱,硬位元(Hard Bits)解碼操作),從而嘗試快速地更正資料位元中的錯誤。硬位元解碼操作是用於解碼所讀取的硬位元。
然而,受限於硬位元解碼操作的解碼能力(或錯誤更正能力),即便使用再多的硬決策讀取電壓準位來讀取記憶胞並對應執行再多次的硬解碼程序,可能都無法藉由單次讀取的硬位元來更正所有錯誤。此時,錯誤檢查與校正電路214可根據所讀取的資料執行第二型解碼操作(亦稱,軟位元(Soft Bits)解碼操作),從而嘗試使用更多資訊來偵錯。軟位元解碼操作是用於解碼所讀取的軟位元。
若軟位元解碼操作仍然不能解碼出正確的讀取資料,則錯誤檢查與校正電路214可根據所讀取的資料執行第三型解碼操作(亦稱,冗餘陣列(RAID)解碼操作),從而嘗試使用已驗證的資訊來偵錯。上述硬位元解碼操作、軟位元解碼操作與冗餘陣列解碼操作的細節為本領域習知技術,不贅述於此。
應注意的是,錯誤檢查與校正電路214可經由所執行的第一型解碼操作、第二型解碼操作以及第三行解碼操作分別獲得對應的校驗子。此外,若第一型解碼操作、第二型解碼操作以及第三行解碼操作被判定為成功,則可分別獲得對應的錯誤位元數(number of error bits),其可經由比較解碼成功後的讀取資料與解碼前的讀取資料之間的資料位元來獲得。
可複寫式非揮發性記憶體模組220是耦接至儲存控制器210(記憶體介面控制電路213)並且用以儲存主機系統10所寫入之資料。可複寫式非揮發性記憶體模組220可以是單階記憶胞(Single Level Cell,SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個位元的快閃記憶體模組)、多階記憶胞(Multi Level Cell,MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個位元的快閃記憶體模組)、三階記憶胞(Triple Level Cell,TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個位元的快閃記憶體模組)、三維NAND型快閃記憶體模組(3D NAND flash memory module)或垂直NAND型快閃記憶體模組(Vertical NAND flash memory module)等其他快閃記憶體模組或其他具有相同特性的記憶體模組。
儲存控制器210會配置多個邏輯單元給可複寫式非揮發性記憶體模組220。主機系統10是透過所配置的邏輯單元來存取儲存在多個實體單元中的使用者資料。在此,每一個邏輯單元可以是由一或多個邏輯位址組成。例如,邏輯單元可以是邏輯區塊(Logical Block)、邏輯頁面(Logical Page)或是邏輯扇區(Logical Sector)。一個邏輯單元可以是映射至一或多個實體單元,其中實體單元可以是一或多個實體位址、一或多個實體扇、一或多個實體程式化單元或者一或多個實體抹除單元。在本實施例中,邏輯單元為邏輯區塊,並且邏輯子單元為邏輯頁面。每一邏輯單元具有多個邏輯子單元。在本實施例中,是以記憶胞作為寫入(程式化)資料的最小單位。實體單元(實體區塊)為抹除之最小單位,即,每一實體區塊含有最小數目之一併被抹除之記憶胞。
在本實施例中,可複寫式非揮發性記憶體模組220的多個記憶胞會構成多個字元線,並且此些字元線會構成多個實體區塊(亦稱,實體抹除單元或實體單元)。具體來說,同一條字元線上的記憶胞可劃分為一或多個實體程式化單元。如此一來,可複寫式非揮發性記憶體模組220的多個記憶胞便可構成多個實體區塊(實體單元)。
圖2是根據本發明的一實施例所繪示的三維的實體區塊的多個字元線的示意圖。請參照圖2,舉例來說,假設可複寫式非揮發性記憶體模組220的實體區塊B1具有多個由多個記憶胞所構成之256個字元線W1~W256,並且每4個字元線會分組為一個堆疊層。即,實體區塊B1具有64個堆疊層L1~L64。由於在記憶體製程的形成實體區塊B1的過程中,會在實體區塊B1本身的有限空間中置入多個字元線。因此,兩個彼此相鄰的字元線有可能會大面積地接觸彼此而產生字元線短路的現象(相鄰的字元線彼此之間的間距太小)。
圖3A、3B、3C、3D是分別根據本發明的一實施例所繪示的不同態樣的字元線短路的示意圖。請先參照圖3A,圖3A的表格用以表示圖2中的實體區塊B1的多個字元線W1~W256的相對位置、對應的字元線的編號(如,“W1”, “W2”, … “W256”)以及每個堆疊層L1~L64。如上所述,彼此相鄰的字元線因為互相接觸而導致了字元線短路的現象。所述字元線短路的態樣可為圖3A所示的目標字元線(如,字元線W10)與其上下左右字元線W6、W9、W11、W14中的其中之一或其組合的字元線發生了字元線短路(發生字元線短路現象的字元線以灰底表示)。相似地,請參考圖3B~3C,字元線短路的態樣也可能為圖3B所示的目標字元線(如,字元線W10)與其對角線方向的字元線W5、W7、W13、W15中的其中之一或其組合的字元線發生了字元線短路;字元線短路的態樣也可為圖3C所示的目標字元線(如,字元線W10)與屬於同個堆疊層(如,堆疊層L3)的字元線W9、W11、W12發生了字元線短路,或是目標字元線(如,字元線W10)與屬於同個堆疊層(如,堆疊層L3)的字元線W11、W12發生了字元線短路;字元線短路的態樣也可為圖3D所示的目標字元線(如,字元線W10)與屬於同個堆疊層(如,堆疊層L3)的字元線W9、W11、W12及上下堆疊層L2、L4中的字元線W5~W8、W13~W16中的部份或全部的字元線發生了字元線短路。即,上述的字元線W5~W16共12個字元線中,彼此相鄰的多個字元線可區域性地發生字元線短路。例如,字元線W10、W9、W13、W14發生字元線短路。又例如,字元線W5~W12發生字元線短路。又例如,字元線W6~W7、W10~W11、W14~W15發生字元線短路。又例如,字元線W5~W7、W9~W11、W13~W15發生字元線短路。又例如,字元線W6~W8、W10~W11、W14發生字元線短路。甚至,在更嚴重的情況下,字元線短路的現象可擴散至大於三個堆疊層的範圍。
由於在程式化資料至發生字元線短路現象的多個字元線的其中一個字元線時,會使發生字元線短路現象的該些字元線的記憶胞的臨界電壓被影響(因為短路而傳遞程式化電壓至非被程式化的字元線)。因此,儲存在發生字元線短路現象的多個字元線的資料會具有較高的錯誤位元數。此外,在更嚴重的情況下,儲存在發生字元線短路現象的多個字元線的資料的錯誤不能經由錯誤檢查與校正電路214而被校正,並且使儲存在其中的資料永久遺失(可視為發生字元線短路現象的多個字元線已損壞)。在本實施例中,發生字元線短路現象的字元線會被標記為壞字元線。
在本實施例中,用以記錄一實體區塊的資訊的系統資料可利用所述實體區塊中的一或多個記憶胞來記錄,或是利用一個系統區中用以記錄所有系統資料的特定實體單元的一或多個記憶胞來記錄。在本實施例中,系統資料還可包括壞實體區塊表、對應可複寫式非揮發性記憶體模組220的多個字元線的字元線錯誤值表及壞字元線表。上述的系統資料可在儲存裝置開電時,被處理器211從可複寫式非揮發性記憶體模組220讀取至儲存控制器的緩衝記憶體來進行維護,並且可被即時地更新。此外,在儲存裝置關電(或其他時機)時,上述系統資料可被備份至可複寫式非揮發性記憶體模組220中。
所述字元線錯誤值表用以記錄了對應每個字元線的多個歷史錯誤值。所述字元線錯誤值表包括多個字元線與分別對應所述多個字元線的多個條目組,其中每一條目組包括一或多個條目,並且所述一或多個條目記錄其所屬之條目組所對應的字元線的錯誤值。換言之,處理器211可記錄所獲得的錯誤值於字元線錯誤值表中,以更新其中的對應的字元線的條目組中的條目。
舉例來說,對於每一個字元線,處理器211會儲存對應所述每一個字元線的最近N個所獲得/計算的錯誤值於所述字元線錯誤值表中(成為對應所述字元線的條目組的N個條目)。也就是說,若可複寫式非揮發性記憶體模組220具有X個字元線(所述字元線錯誤值表會存在對應的X個條目組,並且每個條目組具有N個條目),則所述字元線錯誤值表會記錄分別對應X個字元線的X*N個錯誤值(共X*N個條目)。
所述壞字元線表用以記錄X個字元線中被標記為壞字元線(Bad Word-Line)的字元線。在本實施例中,所述壞字元線表可記錄被標記為壞字元線的字元線的索引值。舉例來說,假設壞字元線表記錄了索引值“B1.W1”,其可表示實體區塊B1的字元線W1被標記為壞字元線。
在另一實施例中,壞字元線表會依據所有字元線的所屬的實體區塊的識別碼來排序所有的字元線的標記值,所述標記值用以表示對應的字元線是否為壞字元線。舉例來說,假設實體區塊B1的識別碼為最小之識別碼,實體區塊B1排序在可複寫式非揮發性記憶體模組220的所有實體區塊的最前方,並且字元線W1會排序在實體區塊B1的所有字元線的最前方(因為字元線W1的編號最小)。在此例子中,所述壞字元線表的第一個標記值為對應實體區塊B1的字元線W1的標記值。所述標記值可為一個位元值(如,“0”或“1”),並且不同位元值用以表示是否損壞。例如,若對應實體區塊B1的字元線W1的標記值為“1”,則此標記值表示實體區塊B1的字元線W1為壞字元線。
在一實施例中,儲存控制器210還包括緩衝記憶體與電源管理電路。緩衝記憶體是耦接至處理器211並且用以暫存來自於主機系統10的資料與指令、來自於可複寫式非揮發性記憶體模組220的資料或其他用以管理儲存裝置20的系統資料,以讓處理器211可快速地從緩衝記憶體中存取所述資料、指令或系統資料。
電源管理電路是耦接至處理器211並且用以控制儲存裝置20的電源。
在本實施例中,處理器211可在特定時間點來選擇可複寫式非揮發性記憶體模組220的多個字元線中其中之一個字元線(亦稱,第一字元線)來進行壞字元線的檢驗/標記。所述特定時間點例如是下列時間點的其中之一或其組合:(1)從第一字元線讀取資料時;(2)儲存裝置20閒置時。應注意的是,被選擇之字元線是已儲存資料的字元線。以下會配合多個圖式來詳細說明如何進行讀取電壓最佳化操作與對應的資料讀取方法的細節。
[第一實施例]
圖4為根據本發明的第一實施例所繪示的記憶體管理方法的流程圖。請同時參照圖1與圖4,在步驟S41中,處理器211對儲存於所述多個字元線中的第一字元線的第一資料進行第一型解碼操作(硬位元解碼操作),以判斷所述第一型解碼操作成功或失敗,並且獲得所述第一字元線的第一錯誤值。
具體來說,在本實施例中,處理器211會主動地從所有字元線中選擇一字元線(以下稱,第一字元線)來進行檢驗(亦稱),以判斷是否要將所選擇之第一字元線標記為壞字元線(標記為損壞)。舉例來說,處理器211可在儲存裝置閒暇時,或是儲存裝置開電時,來檢驗/檢查每一個字元線。又例如,第一字元線可從可複寫式非揮發性記憶體模組220的所有字元線中根據特定選擇條件來被選擇。所述特定選擇條件包括(1)被選擇之字元線所儲存的資料中含有錯誤率高於一定門檻值者;或(2)被選擇之字元線所儲存的資料含有最高的位元錯誤數。在本實施例中,檢驗的方式為,處理器211會先讀取儲存在第一字元線的資料(第一資料),並且指示錯誤檢查與校正電路214對所讀取之資料執行第一型解碼操作。處理器211可根據第一型解碼操作的結果來判斷所述第一型解碼操作是否成功或是失敗。此外,錯誤檢查與校正電路214對第一資料執行第一型解碼操作後,錯誤檢查與校正電路214會將所產生之校驗子傳送給處理器211。處理器211會將此校驗子作為第一字元線的(最新的)第一錯誤值。
若判定所述第一型解碼操作失敗,接續至步驟S45,處理器211獲得鄰近於所述第一字元線的第二字元線的第二錯誤值。具體來說,當錯誤檢查與校正電路214對第一資料所進行的第一型解碼操作失敗時,處理器211會開始去探尋相鄰於第一字元線的字元線(亦稱,第二字元線)的錯誤值(亦稱,第二錯誤值),以獲得第二錯誤值。如圖3A~3D所述,相鄰於第一字元線之第二字元線可為緊鄰於第一字元線的上下左右,或是對角線方向的字元線的其中之一(以XY平面為例)。在本實施例中,處理器211可根據字元線錯誤值表與第二字元線來查找對應第二字元線的最新的所記錄的錯誤值,並且將之作為第二錯誤值。在另一實施例中,處理器211可例如使用步驟S41的方式,對儲存在第二字元線中的資料執行第一型解碼操作,以獲得第二錯誤值。
在獲得第二錯誤值後,接續至步驟S47,處理器211根據所述第一錯誤值、所述第二錯誤值與第二門檻值來判斷是否皆標記所述第一字元線與所述第二字元線為所述壞字元線。
圖5為根據本發明的第一實施例所繪示的圖4中的步驟S47的流程圖。請參照圖5,於步驟S471中,處理器211判斷所述第一錯誤值與所述第二錯誤值的總和是否大於所述第二門檻值。若判定所述第一錯誤值與所述第二錯誤值的總和大於所述第二門檻值,在步驟S473中,處理器211標記所述第一字元線為所述壞字元線,並且標記所述第二字元線為所述壞字元線。也就是說,若所述第一錯誤值與所述第二錯誤值的總和大於一定值(第二門檻值),處理器211會認為第一字元線與第二字元線發生了字元線短路現象,並且處理器211會標記此兩個字元線為壞字元線。如上所述,處理器211可利用壞字元線表來標記此第一字元線與第二字元線為壞字元線。
相對地,若判定所述第一錯誤值與所述第二錯誤值的總和不大於所述第二門檻值,在步驟S475中,處理器211不標記所述第二字元線為所述壞字元線。接著,處理器211會執行步驟S43來判斷第一字元線是否為壞字元線。
應注意的是,若第二字元線的數目大於一個,處理器211可同時或是依序獲得此些第二字元線的第二錯誤值。在獲得多個第二錯誤值後,處理器211再分別利用所獲得的多個第二錯誤值,一個一個地經由與第一錯誤值相加的總和來與第二門檻值比較,進而判斷對應的第二字元線是否為壞字元線。
若在步驟S41中,處理器211判定所述第一型解碼操作成功,接續至步驟S43,處理器211根據所述第一錯誤值與第一門檻值來判斷是否標記所述第一字元線為壞字元線。
圖6為根據本發明的第一實施例所繪示的圖4中的步驟S43的流程圖。請參照圖6,在步驟S431中,處理器211判斷所述第一錯誤值是否大於所述第一門檻值。若判定所述第一錯誤值大於所述第一門檻值,在步驟S433中,處理器211標記所述第一字元線為所述壞字元線。也就是說,若所述第一錯誤值大於一定值(第一門檻值),處理器211會認為第一字元線為損壞的字元線(可能發生了字元線短路現象),進而處理器211會標記此第一字元線為壞字元線。如上所述,處理器211可利用壞字元線表來標記第一字元線為壞字元線。
若判定所述第一錯誤值不大於所述第一門檻值,在步驟S435中,處理器211不標記所述第一字元線為所述壞字元線。接著,在步驟S437中,處理器211根據對應所述第一字元線的當前的所述第一錯誤值與已記錄的舊的一或多個對應所述第一字元線的第三錯誤值計算對應所述第一字元線的第一平均錯誤值。具體來說,處理器211會經由字元線錯誤值表來查找對應的一字元線的一或多個錯誤值(亦稱,第三錯誤值),並且計算一或多個第三錯誤值與第一錯誤值的平均值(亦稱,第一平均錯誤值)。處理器211可再將第一錯誤值記錄至字元線錯誤值表。
在另一實施例中,當於步驟S41中獲得第一錯誤值時,處理器211可將第一錯誤值直接記錄至字元線錯誤值表(成為第三錯誤值的其中之一),以在步驟S437中,可直接對字元線錯誤值表中所記錄的對應第一字元線的多個第三錯誤值計算平均值,並且將其作為對應第一字元線的第一平均錯誤值。
然而,在一實施例中,如上所述,若錯誤值屬於校驗子,則可不執行步驟S437,即,處理器211可不計算對應第一字元線的第一平均錯誤值(如,完成步驟S435後,直接結束步驟S43的整體流程)。
值得一提的是,上述第一門檻值小於第二門檻值。廠商可經由可複寫式非揮發性記憶體模組2202的特性來設定第一門檻值與第二門檻值的值。
[第二實施例]
圖7為根據本發明的第二實施例所繪示的記憶體管理方法的流程圖。第二實施例的儲存控制器與其他硬體元件相同於第一實施例。在第二實施例中的所有錯誤值皆屬於錯誤位元數。換言之,以下會著重在於當錯誤值並非第一實施例的校驗子時,第二實施例的記憶體管理方法(判斷壞字元線的方法)相較於第一實施例的不同之處。應注意的是,由於錯誤值為錯誤位元數,所以在判定解碼成功後,錯誤檢查與校正電路214才可獲得對應的錯誤位元數,以使處理器211將其作為對應的錯誤值。
請參照圖7,步驟S71、S72的細節分別相同於第一實施例中的步驟S41、S43,並且步驟S77、S78的細節分別相同於第一實施例中的步驟S45、S47,不再贅述於此。
在本實施例中,若在步驟S71中,處理器211判定第一型解碼操作失敗,接續至步驟S73,處理器211對所述第一資料進行第二型解碼操作,以判斷所述第二型解碼操作成功或失敗,並且獲得所述第一字元線的第四錯誤值。換句話說,當硬位元解碼操作失敗,處理器211會指示錯誤檢查與校正電路214對第一資料執行軟位元解碼操作(亦稱,第二型解碼操作),以繼續嘗試解碼第一資料。同時,錯誤檢查與校正電路214可判斷第二型解碼操作成功或失敗。
在對第一資料執行第二型解碼操作後,若判定第二型解碼操作成功,接續至步驟S74,處理器211將所述第四錯誤值作為對應所述第一字元線的所述第一錯誤值。具體來說,若判定第二型解碼操作成功,則第一資料會被解碼出正確的資料,並且錯誤檢查與校正電路214可據此計算出錯誤位元數,即,第四錯誤值。處理器211會將此第四錯誤值作為對應第一字元線的第一錯誤值。
反之,在對第一資料執行第二型解碼操作後,若判定第二型解碼操作不成功,接續至步驟S75,處理器211對所述第一資料進行第三型解碼操作,以獲得所述第一字元線的第五錯誤值,並且將獲得的所述第五錯誤值作為對應所述第一字元線的所述第一錯誤值。具體來說,若判定第二型解碼操作不成功,處理器211會指示錯誤檢查與校正電路214執行冗餘陣列解碼操作(亦稱,第三型解碼操作),以解碼第一資料,並且根據經由第三型解碼操作而獲得之解碼後第一資料來計算出錯誤位元數,即,第五錯誤值。處理器211會將此第五錯誤值作為對應第一字元線的第一錯誤值。
在獲得對應第一字元線的第一錯誤值後,在步驟S76中,判斷所述第一錯誤值減去對應所述第一字元線的第一平均錯誤值的差值是否大於第三門檻值。具體來說,如上所述,處理器211可獲得對應第一字元線的第一平均錯誤值。處理器211會進一步地比較此次在第一型解碼操作失敗後所獲得的第一錯誤值大於的一平均錯誤值的程度,即,利用第三門檻值來比較所述第一字元線的第一平均錯誤值的差值。若所述第一錯誤值減去對應所述第一字元線的第一平均錯誤值的差值不大於第三門檻值,處理器211會執行步驟S72。若所述第一錯誤值減去對應所述第一字元線的第一平均錯誤值的差值大於第三門檻值,處理器211會執行步驟S77。
也就是說,在第一型解碼操作失敗的情況下,處理器211會利用第二型解碼操作或第三型解碼操作來獲得第一錯誤值,並且去比較此第一錯誤值的大小是否過高(即,第一錯誤值會大於的一平均錯誤值加上第三門檻值的總和)。若過高,則處理器211更去檢查相鄰於第一字元線的第二字元線。值得一提的是,上述第三門檻值小於第一門檻值。廠商可經由可複寫式非揮發性記憶體模組2202的特性來設定第三門檻值的值。
應注意的是,在錯誤值為校驗子的情況下,處理器211可不維護字元線錯誤值表。
第一實施例與第二實施例分別使用校驗子與錯誤位元數來作為錯誤值,以檢查字元線是否為壞字元線。在其他實施例中,亦可將解碼操作所使用的迭代次數作為錯誤值來檢查字元線。
此外,下方會利用第三實施例與第四實施例分別說明在標記壞字元線後,如何利用所標記的壞字元線來進行其他的記憶體管理方法。其中,第三實施例用以說明利用實體區塊中的壞字元線的數目來判斷壞實體區塊的方法,並且第四實施例用以說明當執行寫入操作以寫入資料至字元線時,根據該字元線是否為壞字元線來對應調整所述資料被儲存的字元線的位置。
[第三實施例]
圖8為根據本發明的第三實施例所繪示的標記壞實體區塊的流程圖。請參照圖8,在步驟S81中,處理器211選擇多個實體區塊中的目標實體區塊。具體來說,所述被選擇之目標實體區塊是可複寫式非揮發性記憶體模組220的所有實體區塊中處理器211所選擇的用以判斷是否為壞實體區塊的實體區塊。在步驟S83中,處理器211辨識所述目標實體區塊中被標記為所述壞字元線的一或多個字元線。具體來說,處理器211會根據壞字元線表來查找目標實體單元的所有字元線中是否有被標記為壞字元線的字元線。
接著,在步驟S85中,處理器211判斷所述目標實體區塊中所述被標記的一或多個字元線的數目是否大於壞字元線門檻值。若判定所述目標實體區塊中所述被標記的一或多個字元線的數目大於壞字元線門檻值,在步驟S87中,處理器211會標記所述目標實體區塊為壞實體區塊。也就是說,若所述目標實體區塊中存在有多於一特定值(壞字元線門檻值)的壞字元線,處理器211會將此目標實體單元視為損壞的實體區塊。反之,處理器211會不將此目標實體單元視為損壞的實體區塊,即,不標記所述目標實體區塊為壞實體區塊。在使用上述方式來掃瞄可複寫式非揮發性記憶體模組220的全部的實體區塊後,處理器211可辨識出可複寫式非揮發性記憶體模組220的壞實體區塊,並且將此結果記錄於壞實體區塊表中。
[第四實施例]
圖9為根據本發明的第四實施例所繪示的執行寫入指令的流程圖。請參照圖9,在步驟S91中,處理器211選擇用以執行寫入指令的一或多個目標實體位址。具體來說,當處理器211執行寫入指令以寫入對應該寫入指令的寫入資料時,處理器211可獲取預備儲存所述寫入資料的一或多個實體位址(亦稱,目標實體位址)。在一實施例中,所述目標實體位址可為開放實體區塊的可用的(空白的)實體位址,並且其被選擇用以儲存寫入資料,以執行寫入指令。
接著,在步驟S93中,處理器211判斷所述一或多個目標實體位址所屬之字元線是否被標記為所述壞字元線。具體來說,處理器211可根據壞字元線表進一步檢查目標實體位址所屬之字元線是否為壞字元線。若判定所述一或多個目標實體位址所屬之字元線被標記為所述壞字元線,在步驟S95中,處理器211寫入虛擬資料至所述一或多個目標實體位址。具體來說,若目標實體位址位於壞字元線中,則處理器211會選擇其他的實體位址作為儲存寫入資料的實體位址。但,處理器211會先將虛擬資料寫入至原本所選擇之目標實體位址。接著,在步驟S97中,處理器211選擇其他的一或多個實體位址作為所述一或多個目標實體位址,以取代之前所選擇的所述一或多個目標實體位址。接著,處理器211再程式化寫入資料至新的目標實體位址,以完成寫入指令的執行。
此外,若在步驟S93中,若處理器211判定所述一或多個目標實體位址所屬之字元線不被標記為所述壞字元線(即,所述一或多個目標實體位址所屬之字元線不為壞字元線),在步驟S99中,處理器211會直接執行寫入指令,以將對應所述寫入指令的寫入資料寫入至所述一或多個目標實體位址。如此一來,在執行一寫入指令以將一寫入資料寫入至一或多個目標實體位址之前,處理器211可根據判斷所述一或多個目標實體位址所屬之字元線是否被標記為該壞字元線來寫入該寫入資料。
綜上所述,本發明實施例所提供的記憶體管理方法以及儲存控制器,可對可複寫式非揮發性記憶體模組的多個字元線中的第一字元線所儲存的資料所進行的解碼操作,以根據所述解碼操作的結果以及對應獲得的錯誤值來判斷是否標記所述第一字元線為壞字元線。此外,更可對相鄰於所述第一字元線的第二字元線所儲存的資料進行解碼操作,以根據所述解碼操作的結果以及對應獲得的錯誤值來判斷是否標記所述第一字元線與所述第二字元線為壞字元線。如此一來,可有效地判斷可複寫式非揮發性記憶體模組的多個字元線是否損壞,進而增進可複寫式非揮發性記憶體模組的可用空間的利用效率。此外,經由標記壞字元線,字元線短路現象所導致的無法校正的資料錯誤的問題也可進一步地被避免。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
10‧‧‧主機系統
20‧‧‧儲存裝置
110、211‧‧‧處理器
120‧‧‧主機記憶體
130‧‧‧資料傳輸介面電路
210‧‧‧儲存控制器
212‧‧‧資料傳輸管理電路
213‧‧‧記憶體介面控制電路
214‧‧‧錯誤檢查與校正電路
220‧‧‧可複寫式非揮發性記憶體模組
230‧‧‧連接介面電路
B1‧‧‧實體區塊
L1~L64‧‧‧堆疊層
W1~W256‧‧‧字元線
S41、S43、S45、S47‧‧‧記憶體管理方法的流程步驟
S471、S473、S475‧‧‧步驟S47的流程步驟
S431、S433、S435、S437‧‧‧步驟S43的流程步驟
S71、S72、S73、S74、S75、S76、S77、S78‧‧‧記憶體管理方法的流程步驟
S81、S83、S85、S87‧‧‧標記壞實體區塊的流程步驟
S91、S93、S95、S97、S99‧‧‧執行寫入指令的流程步驟
圖1是根據本發明的一實施例所繪示的主機系統及儲存裝置的方塊示意圖。 圖2是根據本發明的一實施例所繪示的三維的實體區塊的多個字元線的示意圖。 圖3A、3B、3C、3D是分別根據本發明的一實施例所繪示的不同態樣的字元線短路的示意圖。 圖4為根據本發明的第一實施例所繪示的記憶體管理方法的流程圖。 圖5為根據本發明的第一實施例所繪示的圖4中的步驟S47的流程圖。 圖6為根據本發明的第一實施例所繪示的圖4中的步驟S43的流程圖。 圖7為根據本發明的第二實施例所繪示的記憶體管理方法的流程圖。 圖8為根據本發明的第三實施例所繪示的標記壞實體區塊的流程圖。 圖9為根據本發明的第四實施例所繪示的執行寫入指令的流程圖。

Claims (22)

  1. 一種記憶體管理方法,適用於一可複寫式非揮發性記憶體模組,其中該非揮發性記憶體模組具有多個字元線,並且每一該些字元線由一或多個記憶胞構成,所述方法包括: 對儲存於該些字元線中的一第一字元線的一第一資料進行第一型解碼操作,以判斷該第一型解碼操作成功或失敗,並且獲得該第一字元線的一第一錯誤值; 當判定該第一型解碼操作成功時,根據該第一錯誤值與一第一門檻值來判斷是否標記該第一字元線為壞字元線;以及 當判定該第一型解碼操作失敗時,獲得相鄰於該第一字元線的一第二字元線的一第二錯誤值,根據該第一錯誤值、該第二錯誤值與一第二門檻值來判斷是否皆標記該第一字元線與該第二字元線為該壞字元線。
  2. 如申請專利範圍第1項所述的記憶體管理方法,其中根據該第一錯誤值、該第二錯誤值與該第二門檻值來判斷是否皆標記該第一字元線與該第二字元線為該壞字元線的步驟包括: 判斷該第一錯誤值與該第二錯誤值的總和是否大於該第二門檻值; 當判定該總和大於該第二門檻值時,標記該第一字元線為該壞字元線並且標記該第二字元線為該壞字元線;以及 當判定該總和不大於該第二門檻值時,不標記該第二字元線為該壞字元線,並且執行上述根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線的步驟。
  3. 如申請專利範圍第2項所述的記憶體管理方法,其中根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線為該壞字元線的步驟包括: 判斷該第一錯誤值是否大於該第一門檻值; 當判定該第一錯誤值大於該第一門檻值時,標記該第一字元線為該壞字元線;以及 當判定該第一錯誤值不大於該第一門檻值時,不標記該第一字元線為該壞字元線,並且根據對應該第一字元線的當前的該第一錯誤值與已記錄的舊的一或多個對應該第一字元線的第三錯誤值計算對應該第一字元線的一第一平均錯誤值。
  4. 如申請專利範圍第1項所述的記憶體管理方法,其中獲得相鄰於該第一字元線的該第二字元線的該第二錯誤值的步驟包括: 對儲存於該第二字元線的第二資料進行該第一型解碼操作,以獲得該第二字元線的該第二錯誤值。
  5. 如申請專利範圍第1項所述的記憶體管理方法,更包括: 記錄所獲得的該第一錯誤值於一字元線錯誤值表中,以更新對應該第一字元線的一第一條目組中的一第一條目,其中該字元線錯誤值表包括該些字元線與分別對應該些字元線的多個條目組,其中每一條目組包括一或多個條目,並且所述一或多個條目記錄其所屬之條目組所對應的字元線的錯誤值;以及 當判定該第一型解碼操作成功時,判斷該第一錯誤值是否大於一第一門檻值,其中當判定該第一錯誤值非大於該第一門檻值時,根據該字元線錯誤值表計算對應該第一字元線的一第一平均錯誤值。
  6. 如申請專利範圍第5項所述的記憶體管理方法,更包括: 當判定該第一型解碼操作失敗且在獲得該第二錯誤值之前,判斷該第一錯誤值減去該第一平均錯誤值的差值是否大於一第三門檻值; 當判定該差值大於該第三門檻值時,從該字元線錯誤值表讀取對應該第二字元線的第二條目組中最新的一第二條目,以獲得該第二錯誤值,並且執行上述根據該第一錯誤值、該第二錯誤值與一第二門檻值來判斷是否皆標記該第一字元線與該第二字元線為該壞字元線的步驟;以及 當判定該差值不大於該第三門檻值時,執行上述根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線為該壞字元線的步驟。
  7. 如申請專利範圍第1項所述的記憶體管理方法,其中該第一錯誤值與該第二錯誤值包括錯誤位元數或校驗子,其中若該第一錯誤值與該第二錯誤值的值屬於該錯誤位元數,所述記憶體管理方法更包括: 當判定該第一型解碼操作失敗且在獲得該第二錯誤值之前,對該第一資料進行一第二型解碼操作,以判斷該第二型解碼操作成功或失敗,並且獲得該第一字元線的一第四錯誤值; 當判定該第二型解碼操作成功時,將該第四錯誤值作為對應該第一字元線的該第一錯誤值;以及 當判定該第二型解碼操作失敗時,對該第一資料進行一第三型解碼操作,以獲得該第一字元線的一第五錯誤值,並且將獲得的該第五錯誤值作為對應該第一字元線的該第一錯誤值,其中該第四、第五錯誤值的值也屬於該錯誤位元數。
  8. 如申請專利範圍第7項所述的記憶體管理方法,其中該第一型解碼操作為一硬位元解碼操作,該第二型解碼操作為一軟位元解碼操作,並且該第三行解碼操作為一冗餘陣列解碼操作。
  9. 如申請專利範圍第7項所述的記憶體管理方法,更包括: 當將該第四錯誤值或該第五錯誤值作為該第一錯誤值後,判斷該第一錯誤值減去對應該第一字元線的第一平均錯誤值的差值是否大於一第三門檻值; 當判定該差值大於該第三門檻值時,獲得對應該第二字元線的該第二錯誤值,並且執行上述根據該第一錯誤值、該第二錯誤值與該第二門檻值來判斷是否皆標記該第一字元線與該第二字元線為該壞字元線的步驟;以及 當判定該差值不大於該第三門檻值時,執行上述根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線為該壞字元線的步驟。
  10. 如申請專利範圍第1項所述的記憶體管理方法,其中該些字元線被劃分為多個實體區塊,所述記憶體管理方法更包括: 選擇該些實體區塊中的一目標實體區塊;以及 辨識該目標實體區塊中被標記的一或多個字元線,並且根據被標記為該壞字元線的所述一或多個字元線的數目與一壞字元線門檻值來判斷該目標實體區塊是否為壞實體區塊。
  11. 如申請專利範圍第1項所述的記憶體管理方法,更包括: 在執行一寫入指令以將一寫入資料寫入至一或多個目標實體位址之前,根據判斷所述一或多個目標實體位址所屬之字元線是否被標記為該壞字元線來寫入該寫入資料。
  12. 一種儲存控制器,用於控制配置有一可複寫式非揮發性記憶體模組的一儲存裝置,其中該非揮發性記憶體模組具有多個字元線,並且每一該些字元線由一或多個記憶胞構成,該儲存控制器包括: 一連接介面電路,用以耦接至一主機系統; 一記憶體介面控制電路,用以耦接至該可複寫式非揮發性記憶體模組; 一錯誤檢查與校正電路,用以進行解碼操作;以及 一處理器,其中該處理器用以指示該錯誤檢查與校正電路對儲存於該些字元線中的一第一字元線的一第一資料進行第一型解碼操作,以判斷該第一型解碼操作成功或失敗,並且獲得該第一字元線的一第一錯誤值, 其中當判定該第一型解碼操作成功時,該處理器更用以根據該第一錯誤值與一第一門檻值來判斷是否標記該第一字元線為壞字元線, 其中當判定該第一型解碼操作失敗時,該處理器更用以獲得相鄰於該第一字元線的一第二字元線的一第二錯誤值,根據該第一錯誤值、該第二錯誤值與一第二門檻值來判斷是否皆標記該第一字元線與該第二字元線為該壞字元線。
  13. 如申請專利範圍第12項所述的儲存控制器,其中在上述該處理器更用以根據該第一錯誤值、該第二錯誤值與該第二門檻值來判斷是否皆標記該第一字元線與該第二字元線為該壞字元線的運作中, 該處理器判斷該第一錯誤值與該第二錯誤值的總和是否大於該第二門檻值, 其中當判定該總和大於該第二門檻值時,該處理器標記該第一字元線為該壞字元線並且標記該第二字元線為該壞字元線, 其中當判定該總和不大於該第二門檻值時,該處理器不標記該第二字元線為該壞字元線,並且執行上述根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線的步驟。
  14. 如申請專利範圍第13項所述的儲存控制器,其中在上述該處理器更用以根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線為該壞字元線的運作中, 該處理器判斷該第一錯誤值是否大於該第一門檻值, 其中當判定該第一錯誤值大於該第一門檻值時,該處理器標記該第一字元線為該壞字元線, 其中當判定該第一錯誤值不大於該第一門檻值時,該處理器不標記該第一字元線為該壞字元線,並且根據對應該第一字元線的當前的該第一錯誤值與已記錄的舊的一或多個對應該第一字元線的第三錯誤值計算對應該第一字元線的一第一平均錯誤值。
  15. 如申請專利範圍第12項所述的儲存控制器,其中在上述該處理器更用以獲得相鄰於該第一字元線的該第二字元線的該第二錯誤值的運作中, 該處理器指示該錯誤檢查與校正電路對儲存於該第二字元線的第二資料進行該第一型解碼操作,以獲得該第二字元線的該第二錯誤值。
  16. 如申請專利範圍第12項所述的儲存控制器, 其中該處理器更用以記錄所獲得的該第一錯誤值於一字元線錯誤值表中,以更新對應該第一字元線的一第一條目組中的一第一條目,其中該字元線錯誤值表包括該些字元線與分別對應該些字元線的多個條目組,其中每一條目組包括一或多個條目,並且所述一或多個條目記錄其所屬之條目組所對應的字元線的錯誤值, 其中當判定該第一型解碼操作成功時,該處理器判斷該第一錯誤值是否大於一第一門檻值,其中當判定該第一錯誤值非大於該第一門檻值時,該處理器更用以根據該字元線錯誤值表計算對應該第一字元線的一第一平均錯誤值。
  17. 如申請專利範圍第16項所述的儲存控制器, 其中當判定該第一型解碼操作失敗且在獲得該第二錯誤值之前,該處理器更用以判斷該第一錯誤值減去該第一平均錯誤值的差值是否大於一第三門檻值, 其中當判定該差值大於該第三門檻值時,該處理器更用以從該字元線錯誤值表讀取對應該第二字元線的第二條目組中最新的一第二條目,以獲得該第二錯誤值,並且執行上述根據該第一錯誤值、該第二錯誤值與一第二門檻值來判斷是否標記該第一字元線與該第二字元線為該壞字元線的運作, 其中當判定該差值不大於該第三門檻值時,該處理器執行上述根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線為該壞字元線的運作。
  18. 如申請專利範圍第12項所述的儲存控制器,其中該第一錯誤值與該第二錯誤值包括錯誤位元數或校驗子,其中若該第一錯誤值與該第二錯誤值的值屬於該錯誤位元數, 當判定該第一型解碼操作失敗且在獲得該第二錯誤值之前,該處理器指示該錯誤檢查與校正電路對該第一資料進行一第二型解碼操作,以判斷該第二型解碼操作成功或失敗,並且獲得該第一字元線的一第四錯誤值, 其中當判定該第二型解碼操作成功時,該處理器將該第四錯誤值作為對應該第一字元線的該第一錯誤值, 其中當判定該第二型解碼操作失敗時,該處理器對該第一資料進行一第三型解碼操作,以獲得該第一字元線的一第五錯誤值,並且將獲得的該第五錯誤值作為對應該第一字元線的該第一錯誤值,其中該第四、第五錯誤值的值也屬於該錯誤位元數。
  19. 如申請專利範圍第18項所述的儲存控制器,其中該第一型解碼操作為一硬位元解碼操作,該第二型解碼操作為一軟位元解碼操作,並且該第三行解碼操作為一冗餘陣列解碼操作。
  20. 如申請專利範圍第18項所述的儲存控制器, 當將該第四錯誤值或該第五錯誤值作為該第一錯誤值後,該處理器判斷該第一錯誤值減去對應該第一字元線的第一平均錯誤值的差值是否大於一第三門檻值, 其中當判定該差值大於該第三門檻值時,該處理器獲得對應該第二字元線的該第二錯誤值,並且執行上述根據該第一錯誤值、該第二錯誤值與該第二門檻值來判斷是否皆標記該第一字元線與該第二字元線為該壞字元線的運作, 其中當判定該差值不大於該第三門檻值時,該處理器執行上述根據該第一錯誤值與該第一門檻值來判斷是否標記該第一字元線為該壞字元線的運作。
  21. 如申請專利範圍第12項所述的儲存控制器,其中該些字元線被劃分為多個實體區塊, 其中該處理器更用以選擇該些實體區塊中的一目標實體區塊, 其中該處理器更用以辨識該目標實體區塊中被標記的一或多個字元線,並且根據被標記為該壞字元線的所述一或多個字元線的數目與一壞字元線門檻值來判斷該目標實體區塊是否為壞實體區塊。
  22. 如申請專利範圍第12項所述的儲存控制器, 在執行一寫入指令以將一寫入資料寫入至一或多個目標實體位址之前,該處理器更用以根據判斷所述一或多個目標實體位址所屬之字元線是否被標記為該壞字元線來寫入該寫入資料。
TW106137732A 2017-11-01 2017-11-01 記憶體管理方法以及儲存控制器 TWI625735B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW106137732A TWI625735B (zh) 2017-11-01 2017-11-01 記憶體管理方法以及儲存控制器
US15/912,545 US10936391B2 (en) 2017-11-01 2018-03-05 Memory management method and storage controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW106137732A TWI625735B (zh) 2017-11-01 2017-11-01 記憶體管理方法以及儲存控制器

Publications (2)

Publication Number Publication Date
TWI625735B true TWI625735B (zh) 2018-06-01
TW201919049A TW201919049A (zh) 2019-05-16

Family

ID=63255709

Family Applications (1)

Application Number Title Priority Date Filing Date
TW106137732A TWI625735B (zh) 2017-11-01 2017-11-01 記憶體管理方法以及儲存控制器

Country Status (2)

Country Link
US (1) US10936391B2 (zh)
TW (1) TWI625735B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI681393B (zh) * 2019-01-07 2020-01-01 群聯電子股份有限公司 解碼方法、記憶體控制電路單元以及記憶體儲存裝置

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI709850B (zh) * 2019-01-30 2020-11-11 群聯電子股份有限公司 資料寫入方法、記憶體控制電路單元與記憶體儲存裝置
CN113495674B (zh) 2020-04-01 2023-10-10 长鑫存储技术有限公司 读写方法及存储器装置
CN113495675B (zh) 2020-04-01 2023-08-11 长鑫存储技术有限公司 读写方法及存储器装置
EP3985494B1 (en) * 2020-04-01 2024-01-17 Changxin Memory Technologies, Inc. Read-write method and memory device
EP3964941B1 (en) 2020-04-01 2024-02-28 Changxin Memory Technologies, Inc. Read-write method and memory device
EP3936996A4 (en) 2020-04-01 2022-07-06 Changxin Memory Technologies, Inc. READ-WRITE METHOD AND STORAGE DEVICE
CN113495671B (zh) 2020-04-01 2023-10-17 长鑫存储技术有限公司 读写方法及存储器装置
CN113495672B (zh) 2020-04-01 2023-08-11 长鑫存储技术有限公司 读写方法及存储器装置
EP3964940A4 (en) 2020-04-01 2022-08-17 Changxin Memory Technologies, Inc. READ/WRITE METHOD AND STORAGE DEVICE
US11782787B2 (en) * 2021-08-13 2023-10-10 Micron Technology, Inc. Dynamic error control configuration for memory systems
US20230231574A1 (en) * 2022-01-20 2023-07-20 Micron Technology, Inc. Syndrome check functionality to differentiate between error types

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130121084A1 (en) * 2011-11-10 2013-05-16 Sandisk Technologies Inc. Method and apparatus to provide data including hard bit data and soft bit data to a rank modulation decoder
TW201532044A (zh) * 2014-02-07 2015-08-16 Phison Electronics Corp 解碼方法、記憶體儲存裝置、記憶體控制電路單元
US20170123902A1 (en) * 2015-10-29 2017-05-04 Sandisk Technologies Inc. Partial soft bit read
US9690697B2 (en) * 2014-07-10 2017-06-27 Kabushiki Kaisha Toshiba Memory controller, storage device and memory control method
TW201735550A (zh) * 2016-03-18 2017-10-01 慧榮科技股份有限公司 用於執行內建式自我測試的獨立磁碟冗餘陣列解碼系統

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8879317B2 (en) * 2011-03-01 2014-11-04 Sandisk Technologies Inc. System and method of decoding data from memory based on sensing information and decoded data of neighboring storage elements
US9009574B2 (en) * 2011-06-07 2015-04-14 Marvell World Trade Ltd. Identification and mitigation of hard errors in memory systems
US10340016B2 (en) * 2017-06-26 2019-07-02 Micron Technology, Inc. Methods of error-based read disturb mitigation and memory devices utilizing the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130121084A1 (en) * 2011-11-10 2013-05-16 Sandisk Technologies Inc. Method and apparatus to provide data including hard bit data and soft bit data to a rank modulation decoder
TW201532044A (zh) * 2014-02-07 2015-08-16 Phison Electronics Corp 解碼方法、記憶體儲存裝置、記憶體控制電路單元
US9690697B2 (en) * 2014-07-10 2017-06-27 Kabushiki Kaisha Toshiba Memory controller, storage device and memory control method
US20170123902A1 (en) * 2015-10-29 2017-05-04 Sandisk Technologies Inc. Partial soft bit read
TW201735550A (zh) * 2016-03-18 2017-10-01 慧榮科技股份有限公司 用於執行內建式自我測試的獨立磁碟冗餘陣列解碼系統

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI681393B (zh) * 2019-01-07 2020-01-01 群聯電子股份有限公司 解碼方法、記憶體控制電路單元以及記憶體儲存裝置

Also Published As

Publication number Publication date
US20190129776A1 (en) 2019-05-02
US10936391B2 (en) 2021-03-02
TW201919049A (zh) 2019-05-16

Similar Documents

Publication Publication Date Title
TWI625735B (zh) 記憶體管理方法以及儲存控制器
TWI527037B (zh) 資料儲存方法、記憶體控制電路單元與記憶體儲存裝置
US20160350179A1 (en) Decoding method, memory storage device and memory control circuit unit
US10977116B2 (en) Data access method, memory control circuit unit and memory storage device
TWI650757B (zh) 解碼方法以及儲存控制器
US10642731B2 (en) Memory management method and storage controller
CN106297883B (zh) 解码方法、存储器存储装置及存储器控制电路单元
US10437484B2 (en) Data protecting method, memory control circuit unit and memory storage device
US10803973B2 (en) Memory management method and storage controller
US20150293814A1 (en) Method for programming data, memory storage device and memory control circuit unit
US9983805B1 (en) Memory management method, memory control circuit unit and memory storage apparatus
US10509583B1 (en) Memory management method and storage controller
TWI616807B (zh) 資料寫入方法以及儲存控制器
TW202009944A (zh) 記憶體測試方法與記憶體測試系統
US20220027089A1 (en) Memory control method, memory storage device and memory control circuit unit
CN109766055A (zh) 存储器管理方法以及存储控制器
CN110874281B (zh) 存储器管理方法以及存储控制器
CN112306382A (zh) 快闪存储器控制器、储存装置及其读取方法
TWI762843B (zh) 儲存控制器、記憶體管理方法與儲存裝置
CN117632579B (zh) 存储器控制方法和存储器存储装置
CN110795025B (zh) 存储器管理方法以及存储控制器
US20230326502A1 (en) Table management method, memory storage device and memory control circuit unit
TWI777087B (zh) 資料管理方法、記憶體控制電路單元以及記憶體儲存裝置
US11145372B2 (en) Decoding method, memory controlling circuit unit, and memory storage device
CN111508546B (zh) 解码方法、存储器控制电路单元与存储器存储装置