TWI592869B - 解碼方法、記憶體儲存裝置及記憶體控制電路單元 - Google Patents
解碼方法、記憶體儲存裝置及記憶體控制電路單元 Download PDFInfo
- Publication number
- TWI592869B TWI592869B TW105112619A TW105112619A TWI592869B TW I592869 B TWI592869 B TW I592869B TW 105112619 A TW105112619 A TW 105112619A TW 105112619 A TW105112619 A TW 105112619A TW I592869 B TWI592869 B TW I592869B
- Authority
- TW
- Taiwan
- Prior art keywords
- data
- unit
- memory
- voltage level
- verification
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
- 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
-
- 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
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/021—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
-
- 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/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/028—Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
-
- 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/36—Data generation devices, e.g. data inverters
-
- 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
-
- 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
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/52—Protection of memory contents; Detection of errors in memory contents
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Read Only Memory (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Description
本發明是有關於一種記憶體技術,且特別是有關於一種解碼方法、記憶體儲存裝置及記憶體控制電路單元。
數位相機、行動電話與MP3播放器在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體模組(例如,快閃記憶體)具有資料非揮發性、省電、體積小,以及無機械結構等特性,所以非常適合內建於上述所舉例的各種可攜式多媒體裝置中。
一般來說,在將資料從記憶體中讀取出來之後,此資料可能會被解碼以驗證資料的正確性。藉此,若此資料中存在錯誤,透過解碼操作亦可以更正其中的錯誤。在記憶體裝置出廠時,一個預設讀取電壓準位會被配置。此預設讀取電壓準位是用來讀取此記憶體裝置所儲存的資料。然而,隨著記憶體裝置的使用時間及/或損耗程度增加,藉由此預設讀取電壓準位讀取的資料可能會包含越來越多錯誤,甚至超過解碼操作的錯誤更正能力。因此,如何藉由調整預設讀取電壓準位來提升所讀取之資料的正確性及/或記憶體的解碼能力,實為本領域技術人員所致力研究的課題之一。
本發明的一範例實施例提供一種解碼方法、記憶體儲存裝置及記憶體控制電路單元,可提升所讀取之資料的正確性,改善記憶體儲存裝置的解碼效率。
本發明的一範例實施例提供一種解碼方法,其用於包括多個實體單元的可複寫式非揮發性記憶體模組,所述解碼方法包括:基於第一讀取電壓準位讀取所述實體單元中的目標實體單元以獲得第一目標資料;對所述第一目標資料執行第一解碼操作;若所述第一解碼操作失敗,基於第一候選電壓準位讀取所述實體單元中的驗證實體單元以獲得第一輔助資料並基於第二候選電壓準位讀取所述驗證實體單元以獲得第二輔助資料;根據所述第一輔助資料與驗證資料獲得第一評估參數並根據所述第二輔助資料與所述驗證資料獲得第二評估參數;根據所述第一評估參數與所述第二評估參數決定第二讀取電壓準位;基於所述第二讀取電壓準位讀取所述目標實體單元以獲得第二目標資料;以及對所述第二目標資料執行第二解碼操作。
在本發明的一範例實施例中,所述第一評估參數包括第一翻轉位元計數,所述第二評估參數包括第二翻轉位元計數,所述第一翻轉位元計數對應於所述第一輔助資料中的錯誤位元之總數,所述第二翻轉位元計數對應於所述第二輔助資料中的錯誤位元之總數。
在本發明的一範例實施例中,根據所述第一輔助資料與所述驗證資料獲得所述第一評估參數並根據所述第二輔助資料與所述驗證資料獲得所述第二評估參數之步驟包括:基於所述驗證資料來分析所述第一輔助資料以計算所述第一翻轉位元計數;以及基於所述驗證資料來分析所述第二輔助資料以計算所述第二翻轉位元計數。
在本發明的一範例實施例中,根據所述第一評估參數與所述第二評估參數決定所述第二讀取電壓準位的步驟包括:根據所述第一翻轉位元計數與所述第二翻轉位元計數之間的數值關係決定所述第二讀取電壓準位。
在本發明的一範例實施例中,所述解碼方法更包括:在基於所述第一候選電壓準位讀取所述驗證實體單元並基於所述第二候選電壓準位讀取所述驗證實體單元之前,將所述驗證資料程式化至所述驗證實體單元。
本發明的另一範例實施例提供一種記憶體儲存裝置,其包括連接介面單元、可複寫式非揮發性記憶體模組及記憶體控制電路單元。所述連接介面單元用以耦接至主機系統。所述可複寫式非揮發性記憶體模組包括多個實體單元。所述記憶體控制電路單元耦接至所述連接介面單元與所述可複寫式非揮發性記憶體模組,所述記憶體控制電路單元用以發送第一讀取指令序列以指示基於第一讀取電壓準位讀取所述實體單元中的目標實體單元以獲得第一目標資料,所述記憶體控制電路單元更用以對所述第一目標資料執行第一解碼操作,若所述第一解碼操作失敗,所述記憶體控制電路單元更用以發送第一測試指令序列以指示基於第一候選電壓準位讀取所述實體單元中的驗證實體單元以獲得第一輔助資料並發送第二測試指令序列以指示基於第二候選電壓準位讀取所述驗證實體單元以獲得第二輔助資料,所述記憶體控制電路單元更用以根據所述第一輔助資料與驗證資料獲得第一評估參數並根據所述第二輔助資料與所述驗證資料獲得第二評估參數,所述記憶體控制電路單元更用以根據所述第一評估參數與所述第二評估參數決定第二讀取電壓準位,所述記憶體控制電路單元更用以發送第二讀取指令序列以指示基於所述第二讀取電壓準位讀取所述目標實體單元以獲得第二目標資料,所述記憶體控制電路單元更用以對所述第二目標資料執行第二解碼操作。
在本發明的一範例實施例中,所述第一評估參數包括第一翻轉位元計數,所述第二評估參數包括第二翻轉位元計數,所述第一翻轉位元計數對應於所述第一輔助資料中的錯誤位元之總數,所述第二翻轉位元計數對應於所述第二輔助資料中的錯誤位元之總數。
在本發明的一範例實施例中,所述記憶體控制電路單元根據所述第一輔助資料與所述驗證資料獲得所述第一評估參數並根據所述第二輔助資料與所述驗證資料獲得所述第二評估參數之操作包括:基於所述驗證資料來分析所述第一輔助資料以計算所述第一翻轉位元計數;以及基於所述驗證資料來分析所述第二輔助資料以計算所述第二翻轉位元計數。
在本發明的一範例實施例中,所述記憶體控制電路單元根據所述第一評估參數與所述第二評估參數決定所述第二讀取電壓準位的操作包括:根據所述第一翻轉位元計數與所述第二翻轉位元計數之間的數值關係決定所述第二讀取電壓準位。
在本發明的一範例實施例中,在發送所述第一測試指令序列與所述第二測試指令序列之前,所述記憶體控制電路單元更用以發送寫入指令序列以指示將所述驗證資料程式化至所述驗證實體單元。
本發明的另一範例實施例提供一種記憶體控制電路單元,其用於控制包括多個實體單元的可複寫式非揮發性記憶體模組,所述記憶體控制電路單元包括主機介面、記憶體介面、錯誤檢查與校正電路及記憶體管理電路。所述主機介面用以耦接至主機系統。所述記憶體介面用以耦接至所述可複寫式非揮發性記憶體模組。所述記憶體管理電路耦接至所述主機介面、所述記憶體介面及所述錯誤檢查與校正電路,所述記憶體管理電路用以發送第一讀取指令序列以指示基於第一讀取電壓準位讀取所述實體單元中的目標實體單元以獲得第一目標資料,所述錯誤檢查與校正電路用以對所述第一目標資料執行第一解碼操作,若所述第一解碼操作失敗,所述記憶體管理電路更用以發送第一測試指令序列以指示基於第一候選電壓準位讀取所述實體單元中的驗證實體單元以獲得第一輔助資料並發送第二測試指令序列以指示基於第二候選電壓準位讀取所述驗證實體單元以獲得第二輔助資料,所述記憶體管理電路更用以根據所述第一輔助資料與驗證資料獲得第一評估參數並根據所述第二輔助資料與所述驗證資料獲得第二評估參數,所述記憶體管理電路更用以根據所述第一評估參數與所述第二評估參數決定第二讀取電壓準位,所述記憶體管理電路更用以發送第二讀取指令序列以指示基於所述第二讀取電壓準位讀取所述目標實體單元以獲得第二目標資料,所述錯誤檢查與校正電路更用以對所述第二目標資料執行第二解碼操作。
在本發明的一範例實施例中,所述第一評估參數包括第一翻轉位元計數,所述第二評估參數包括第二翻轉位元計數,所述第一翻轉位元計數對應於所述第一輔助資料中的錯誤位元之總數,所述第二翻轉位元計數對應於所述第二輔助資料中的錯誤位元之總數。
在本發明的一範例實施例中,所述記憶體管理電路根據所述第一輔助資料與所述驗證資料獲得所述第一評估參數並根據所述第二輔助資料與所述驗證資料獲得所述第二評估參數之操作包括:基於所述驗證資料來分析所述第一輔助資料以計算所述第一翻轉位元計數;以及基於所述驗證資料來分析所述第二輔助資料以計算所述第二翻轉位元計數。
在本發明的一範例實施例中,所述記憶體管理電路根據所述第一評估參數與所述第二評估參數決定所述第二讀取電壓準位的操作包括:根據所述第一翻轉位元計數與所述第二翻轉位元計數之間的數值關係決定所述第二讀取電壓準位。
在本發明的一範例實施例中,在發送所述第一測試指令序列與所述第二測試指令序列之前,所述記憶體管理電路更用以發送寫入指令序列以指示將所述驗證資料程式化至所述驗證實體單元。
在本發明的一範例實施例中,所述目標實體單元與所述驗證實體單元屬於同一實體抹除單元。
在本發明的一範例實施例中,所述第一解碼操作與所述第二解碼操作皆屬於硬解碼模式解碼。
基於上述,一個讀取電壓準位會被用來讀取目標實體單元以獲得目標資料並且此目標資料會被解碼。若對目標資料之解碼操作失敗,多個候選電壓準位會被用來讀取驗證實體單元以獲得輔助資料。在依序將所獲得的輔助資料與驗證資料比對之後,多個評估參數會被獲得。根據所獲得的評估參數,另一讀取電壓準位會被決定並且被用來再次讀取相同的目標實體單元。藉此,可提升所讀取之資料的正確性,改善記憶體儲存裝置的解碼效率。
為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。
一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組(rewritable non-volatile memory module)與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中目標資料。
圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。
請參照圖1與圖2,主機系統11一般包括處理器111、隨機存取記憶體(random access memory, RAM)112、唯讀記憶體(read only memory, ROM)113及資料傳輸介面114。處理器111、隨機存取記憶體112、唯讀記憶體113及資料傳輸介面114皆耦接至系統匯流排(system bus)110。
在本範例實施例中,主機系統11是透過資料傳輸介面114與記憶體儲存裝置10耦接。例如,主機系統11可經由資料傳輸介面114將資料儲存至記憶體儲存裝置10或從記憶體儲存裝置10中目標資料。此外,主機系統11是透過系統匯流排110與I/O裝置12耦接。例如,主機系統11可經由系統匯流排110將輸出訊號傳送至I/O裝置12或從I/O裝置12接收輸入訊號。
在本範例實施例中,處理器111、隨機存取記憶體112、唯讀記憶體113及資料傳輸介面114可設置在主機系統11的主機板20上。資料傳輸介面114的數目可以是一或多個。透過資料傳輸介面114,主機板20可以經由有線或無線方式耦接至記憶體儲存裝置10。記憶體儲存裝置10可例如是隨身碟201、記憶卡202、固態硬碟(Solid State Drive, SSD)203或無線記憶體儲存裝置204。無線記憶體儲存裝置204可例如是近距離無線通訊(Near Field Communication, NFC)記憶體儲存裝置、無線傳真(WiFi)記憶體儲存裝置、藍牙(Bluetooth)記憶體儲存裝置或低功耗藍牙記憶體儲存裝置(例如,iBeacon)等以各式無線通訊技術為基礎的記憶體儲存裝置。此外,主機板20也可以透過系統匯流排110耦接至全球定位系統(Global Positioning System, GPS)模組205、網路介面卡206、無線傳輸裝置207、鍵盤208、螢幕209、喇叭210等各式I/O裝置。例如,在一範例實施例中,主機板20可透過無線傳輸裝置207存取無線記憶體儲存裝置204。
在一範例實施例中,所提及的主機系統為可實質地與記憶體儲存裝置配合以儲存資料的任意系統。雖然在上述範例實施例中,主機系統是以電腦系統來作說明,然而,圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。請參照圖3,在另一範例實施例中,主機系統31也可以是數位相機、攝影機、通訊裝置、音訊播放器、視訊播放器或平板電腦等系統,而記憶體儲存裝置30可為其所使用的安全數位(Secure Digital, SD)卡32、小型快閃(Compact Flash, CF)卡33或嵌入式儲存裝置34等各式非揮發性記憶體儲存裝置。嵌入式儲存裝置34包括嵌入式多媒體卡(embedded MMC, eMMC)341及/或嵌入式多晶片封裝(embedded Multi Chip Package, eMCP)儲存裝置342等各類型將記憶體模組直接耦接於主機系統的基板上的嵌入式儲存裝置。
圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。
請參照圖4,記憶體儲存裝置10包括連接介面單元402、記憶體控制電路單元404與可複寫式非揮發性記憶體模組406。
在本範例實施例中,連接介面單元402是相容於序列先進附件(Serial Advanced Technology Attachment, SATA)標準。然而,必須瞭解的是,本發明不限於此,連接介面單元402亦可以是符合並列先進附件(Parallel Advanced Technology Attachment, PATA)標準、電氣和電子工程師協會(Institute of Electrical and Electronic Engineers, IEEE)1394標準、高速周邊零件連接介面(Peripheral Component Interconnect Express, PCI Express)標準、通用序列匯流排(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)標準或其他適合的標準。連接介面單元402可與記憶體控制電路單元404封裝在一個晶片中,或者連接介面單元402是佈設於一包含記憶體控制電路單元404之晶片外。
記憶體控制電路單元404用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令並且根據主機系統11的指令在可複寫式非揮發性記憶體模組406中進行資料的寫入、讀取與抹除等運作。
可複寫式非揮發性記憶體模組406是耦接至記憶體控制電路單元404並且用以儲存主機系統11所寫入之資料。可複寫式非揮發性記憶體模組406可以是單階記憶胞(Single Level Cell, SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個位元的快閃記憶體模組)、多階記憶胞(Multi Level Cell, MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個位元的快閃記憶體模組)、複數階記憶胞(Triple Level Cell,TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個位元的快閃記憶體模組)、其他快閃記憶體模組或其他具有相同特性的記憶體模組。
可複寫式非揮發性記憶體模組406中的每一個記憶胞是以電壓(以下亦稱為臨界電壓)的改變來儲存一或多個位元。具體來說,每一個記憶胞的控制閘極(control gate)與通道之間有一個電荷捕捉層。透過施予一寫入電壓至控制閘極,可以改變電荷補捉層的電子量,進而改變記憶胞的臨界電壓。此改變臨界電壓的操作亦稱為“把資料寫入至記憶胞”或“程式化記憶胞”。隨著臨界電壓的改變,可複寫式非揮發性記憶體模組406中的每一個記憶胞具有多個儲存狀態。透過施予讀取電壓可以判斷一個記憶胞是屬於哪一個儲存狀態,藉此取得此記憶胞所儲存的一或多個位元。
圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。
請參照圖5,記憶體控制電路單元404包括記憶體管理電路502、主機介面504、記憶體介面506及錯誤檢查與校正電路508。
記憶體管理電路502用以控制記憶體控制電路單元404的整體運作。具體來說,記憶體管理電路502具有多個控制指令,並且在記憶體儲存裝置10運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。以下說明記憶體管理電路502的操作時,等同於說明記憶體控制電路單元404的操作。
在本範例實施例中,記憶體管理電路502的控制指令是以韌體型式來實作。例如,記憶體管理電路502具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置10運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。
在另一範例實施例中,記憶體管理電路502的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組406的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路502具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有開機碼(boot code),並且當記憶體控制電路單元404被致能時,微處理器單元會先執行此開機碼來將儲存於可複寫式非揮發性記憶體模組406中之控制指令載入至記憶體管理電路502的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。
此外,在另一範例實施例中,記憶體管理電路502的控制指令亦可以一硬體型式來實作。例如,記憶體管理電路502包括微控制器、記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路。記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路是耦接至微控制器。記憶胞管理電路用以管理可複寫式非揮發性記憶體模組406的記憶胞或其群組。記憶體寫入電路用以對可複寫式非揮發性記憶體模組406下達寫入指令序列以將資料寫入至可複寫式非揮發性記憶體模組406中。記憶體讀取電路用以對可複寫式非揮發性記憶體模組406下達讀取指令序列以從可複寫式非揮發性記憶體模組406中目標資料。記憶體抹除電路用以對可複寫式非揮發性記憶體模組406下達抹除指令序列以將資料從可複寫式非揮發性記憶體模組406中抹除。資料處理電路用以處理欲寫入至可複寫式非揮發性記憶體模組406的資料以及從可複寫式非揮發性記憶體模組406中讀取的資料。寫入指令序列、讀取指令序列及抹除指令序列可各別包括一或多個程式碼或指令碼並且用以指示可複寫式非揮發性記憶體模組406執行相對應的寫入、讀取及抹除等操作。在一範例實施例中,記憶體管理電路502還可以下達其他類型的指令序列給可複寫式非揮發性記憶體模組406以指示執行相對應的操作。
主機介面504是耦接至記憶體管理電路502並且用以接收與識別主機系統11所傳送的指令與資料。也就是說,主機系統11所傳送的指令與資料會透過主機介面504來傳送至記憶體管理電路502。在本範例實施例中,主機介面504是相容於SATA標準。然而,必須瞭解的是本發明不限於此,主機介面504亦可以是相容於PATA標準、IEEE 1394標準、PCI Express標準、USB標準、SD標準、UHS-I標準、UHS-II標準、MS標準、MMC標準、eMMC標準、UFS標準、CF標準、IDE標準或其他適合的資料傳輸標準。
記憶體介面506是耦接至記憶體管理電路502並且用以存取可複寫式非揮發性記憶體模組406。也就是說,欲寫入至可複寫式非揮發性記憶體模組406的資料會經由記憶體介面506轉換為可複寫式非揮發性記憶體模組406所能接受的格式。具體來說,若記憶體管理電路502要存取可複寫式非揮發性記憶體模組406,記憶體介面506會傳送對應的指令序列。例如,這些指令序列可包括指示寫入資料的寫入指令序列、指示目標資料的讀取指令序列、指示抹除資料的抹除指令序列、以及用以指示各種記憶體操作(例如,改變讀取電壓準位或執行垃圾回收操作等等)的相對應的指令序列。這些指令序列例如是由記憶體管理電路502產生並且透過記憶體介面506傳送至可複寫式非揮發性記憶體模組406。這些指令序列可包括一或多個訊號,或是在匯流排上的資料。這些訊號或資料可包括指令碼或程式碼。例如,在讀取指令序列中,會包括讀取的辨識碼、記憶體位址等資訊。
錯誤檢查與校正電路508是耦接至記憶體管理電路502並且用以執行錯誤檢查與校正操作以確保資料的正確性。具體來說,當記憶體管理電路502從主機系統11中接收到寫入指令時,錯誤檢查與校正電路508會為對應此寫入指令的資料產生對應的錯誤更正碼(error correcting code, ECC)及/或錯誤檢查碼(error detecting code,EDC),並且記憶體管理電路502會將對應此寫入指令的資料與對應的錯誤更正碼及/或錯誤檢查碼寫入至可複寫式非揮發性記憶體模組406中。之後,當記憶體管理電路502從可複寫式非揮發性記憶體模組406中目標資料時會同時讀取此資料對應的錯誤更正碼及/或錯誤檢查碼,並且錯誤檢查與校正電路508會依據此錯誤更正碼及/或錯誤檢查碼對所讀取的資料執行錯誤檢查與校正操作。
在本範例實施例中,錯誤檢查與校正電路508是使用低密度奇偶檢查碼(low density parity code,LDPC)來執行資料的編碼與解碼。然而,在另一範例實施例中,錯誤檢查與校正電路508也可以是使用BCH碼、迴旋碼(convolutional code)或渦輪碼(turbo code)等各種碼來執行資料的編碼與解碼。
在一範例實施例中,記憶體控制電路單元404還包括緩衝記憶體510與電源管理電路512。
緩衝記憶體510是耦接至記憶體管理電路502並且用以暫存來自於主機系統11的資料與指令或來自於可複寫式非揮發性記憶體模組406的資料。電源管理電路512是耦接至記憶體管理電路502並且用以控制記憶體儲存裝置10的電源。
圖6是根據本發明的一範例實施例所繪示之管理可複寫式非揮發性記憶體模組的示意圖。必須瞭解的是,在此描述可複寫式非揮發性記憶體模組406之實體單元的運作時,以“選擇”與“分組”等詞來操作實體單元是邏輯上的概念。也就是說,可複寫式非揮發性記憶體模組406之實體單元的實際位置並未更動,而是邏輯上對可複寫式非揮發性記憶體模組406的實體單元進行操作。
在本範例實施例中,可複寫式非揮發性記憶體模組406的記憶胞會構成多個實體程式化單元,並且此些實體程式化單元會構成多個實體抹除單元。具體來說,同一條字元線上的記憶胞會組成一或多個實體程式化單元。若每一個記憶胞可儲存2個以上的位元,則同一條字元線上的實體程式化單元至少可被分類為下實體程式化單元與上實體程式化單元。例如,一記憶胞的最低有效位元(Least Significant Bit,LSB)是屬於下實體程式化單元,並且一記憶胞的最高有效位元(Most Significant Bit,MSB)是屬於上實體程式化單元。一般來說,在MLC NAND型快閃記憶體中,下實體程式化單元的寫入速度會大於上實體程式化單元的寫入速度,及/或下實體程式化單元的可靠度是高於上實體程式化單元的可靠度。
在本範例實施例中,實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。例如,實體程式化單元為實體頁面(page)或是實體扇(sector)。若實體程式化單元為實體頁面,則此些實體程式化單元通常包括資料位元區與冗餘(redundancy)位元區。資料位元區包含多個實體扇,用以儲存使用者資料,而冗餘位元區用以儲存系統資料(例如,錯誤更正碼)。在本範例實施例中,資料位元區包含32個實體扇,且一個實體扇的大小為512位元組(byte, B)。然而,在其他範例實施例中,資料位元區中也可包含8個、16個或數目更多或更少的實體扇,並且每一個實體扇的大小也可以是更大或更小。另一方面,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。例如,實體抹除單元為實體區塊(block)。
請參照圖6,記憶體管理電路502會將可複寫式非揮發性記憶體模組406的實體單元610(0)~610(B)邏輯地分組為儲存區601與替換區602。儲存區601中的實體單元610(0)~610(A)是用以儲存資料,而替換區602中的實體單元610(A+1)~610(B)是用以替換儲存區601中損壞的實體單元。例如,實體單元的替換是以一個實體抹除單元為單位。在本範例實施例中,實體單元610(0)~610(B)中的每一者皆是指至少一實體程式化單元。或者,在另一範例實施例中,實體單元610(0)~610(B)中的每一者亦可以包含任意數目之記憶胞。
記憶體管理電路502會配置邏輯單元612(0)~612(C)以映射儲存區601中的實體單元610(0)~610(A)的至少一部分。在本範例實施例中,主機系統11是透過邏輯位址(logical address, LA)來存取儲存區601中的資料,因此,邏輯單元612(0)~612(C)中的每一者是指一個邏輯位址。然而,在另一範例實施例中,邏輯單元612(0)~612(C)中的每一者也可以是指一個邏輯程式化單元、一個邏輯抹除單元或者由多個連續或不連續的邏輯位址組成,視實務上的需求而定。此外,邏輯單元612(0)~612(C)中的每一者可被映射至一或多個實體單元。
在本範例實施例中,記憶體管理電路502會將邏輯單元與實體單元之間的映射關係(亦稱為邏輯-實體映射關係)記錄於至少一邏輯-實體映射表。當主機系統11欲從記憶體儲存裝置10讀取資料或寫入資料至記憶體儲存裝置10時,記憶體管理電路502可根據此邏輯-實體映射表來執行對於記憶體儲存裝置10的資料存取。
圖7是根據本發明的一範例實施例所繪示的一個實體單元中的多個記憶胞的臨界電壓分佈的示意圖。本範例實施例是以SLC NAND型快閃記憶體為例,其中橫軸代表記憶胞的臨界電壓,而縱軸代表記憶胞個數。然而,在另一範例實施例中,圖7亦可以用來表示MLC NAND或TLC NAND型快閃記憶體中一部份的臨界電壓分布。
請參照圖7,在程式化可複寫式非揮發性記憶體模組406中的某一實體單元之後,此實體單元中被程式化的每一個記憶胞的臨界電壓會屬於分佈710與720的其中之一。例如,若某一個記憶胞被用來儲存位元“1”,則此記憶胞的臨界電壓會落在分佈710;而若某一個記憶胞被用來儲存位元“0”,則此記憶胞的臨界電壓會落在分佈720。
值得一提的是,在本範例實施例中,每一個記憶胞是用以儲存一個位元,故此些記憶胞的臨界電壓之分佈有兩種可能(例如,分佈710與720)。然而,在其他範例實施例中,若一個記憶胞是用以儲存多個位元,則對應的臨界電壓之分佈則可能有四種(例如,MLC NAND型快閃記憶體)、八種(例如,TLC NAND型快閃記憶體)或其他任意個可能。此外,本發明也不限制每一個分佈所代表的位元。例如,在圖7的另一範例實施例中,分佈710是代表位元“0”,並且分佈720是代表位元“1”。
一般來說,若要讀取此實體單元所儲存的資料,記憶體管理電路502會發送一個讀取指令序列至可複寫式非揮發性記憶體模組406。此讀取指令序列用以指示基於一個預設讀取電壓準位來讀取此實體單元的實體位址。根據此讀取指令序列,可複寫式非揮發性記憶體模組406會使用一個預設讀取電壓準位V
default來讀取此實體單元中的記憶胞並且將所獲得的資料傳送給記憶體管理電路502。例如,若某一個記憶胞的臨界電壓小於預設讀取電壓準位V
default(例如,臨界電壓屬於分布710的記憶胞),則記憶體管理電路502會讀到位元“1”;若某一個記憶胞的臨界電壓大於預設讀取電壓準位V
default(例如,臨界電壓屬於分布720的記憶胞),則記憶體管理電路502會讀到位元“0”。
然而,隨著可複寫式非揮發性記憶體模組406的使用時間及/或損耗程度增加,可複寫式非揮發性記憶體模組406中的記憶胞可能會發生性能衰退(degradation)。例如,在屬於分佈710與720的記憶胞發生性能衰退後,分佈710與720可能會逐漸相互靠近甚至相互重疊。例如,圖7中的分佈711與721分別用來表示性能衰退後的分佈710與720。
在發生性能衰退後,若持續使用預設讀取電壓準位V
default來讀取同一個實體單元中的記憶胞,讀取到的資料可能會包含許多錯誤。以圖7中的分佈711與721為例,斜線區域內之記憶胞仍屬於分布711,但其臨界電壓已高於預設讀取電壓準位V
default。因此,若持續使用預設讀取電壓準位V
default來讀取此些記憶胞,部分實際上儲存位元“1”的記憶胞(例如,分布711中的斜線區域內的記憶胞)會被誤判為儲存位元“0”。然而,若改為使用讀取電壓準位V
optimal來讀取此實體單元中的記憶胞,則讀取到的資料所包含之錯誤即可大幅減少。
圖8是根據本發明的一範例實施例所繪示的管理實體單元的示意圖
請參照圖8,記憶體管理電路502會選定至少一個實體單元作為驗證實體單元並且將特定資料儲存至此驗證實體單元。其中,被儲存至驗證實體單元中的資料亦稱為驗證資料。例如,記憶體管理電路502會選擇實體單元610(0)作為一個驗證實體單元並且將屬於邏輯單元612(0)的資料(即驗證資料)儲存至實體單元610(0)。據此,邏輯單元612(0)會被映射至實體單元610(0)。
在從主機系統11接收到將某一資料儲存至邏輯單元612(1)的寫入指令之後,記憶體管理電路502會指示將此資料儲存至實體單元610(1),並且邏輯單元612(1)會被映射至實體單元610(1)。然後,在某一時間點,記憶體管理電路502會從主機系統11接收到指示讀取儲存於邏輯單元612(1)之資料的讀取指令。根據此讀取指令,記憶體管理電路502會選擇邏輯單元612(1)所映射的實體單元610(1)並且將實體單元610(1)作為對應於此讀取指令的目標實體單元。記憶體管理電路502會發送一個讀取指令序列(以下亦稱為第一讀取指令序列)至可複寫式非揮發性記憶體模組406以指示基於一個預設讀取電壓準位(以下亦稱為第一讀取電壓準位)來讀取此目標實體單元(即實體單元610(1))以獲得一目標資料(以下亦稱為第一目標資料)。
錯誤檢查與校正電路508會對第一目標資料執行一解碼操作(以下亦稱為第一解碼操作)。例如,此第一解碼操作可對第一目標資料進行驗證並可用於更正第一目標資料中可能存在的錯誤。若第一解碼操作成功,表示第一目標資料中不具有錯誤,錯誤檢查與校正電路508會輸出解碼成功的資料。若第一解碼操作失敗,表示第一目標資料中包含太多的錯誤,使得錯誤檢查與校正電路508無法完全更正所有錯誤。因此,記憶體管理電路502會發送多個測試指令序列至可複寫式非揮發性記憶體模組406以指示基於多個候選電壓準位讀取預先設定的驗證實體單元(即實體單元610(0))以分別獲得相應的輔助資料。
在本範例實施例中,此些測試指令序列包括N個測試指令序列,其中N是大於1的整數。根據此N個測試指令序列中的第一測試指令序列,可複寫式非揮發性記憶體模組406會基於第一候選電壓準位來讀取實體單元610(0)並回傳讀取到的資料作為第一輔助資料。根據此N個測試指令序列中的第二測試指令序列,可複寫式非揮發性記憶體模組406會基於第二候選電壓準位來讀取實體單元610(0)並回傳讀取到的資料作為第二輔助資料。其中,第一候選電壓準位與第二候選電壓準位不同。也就是說,根據此N個測試指令序列,相應的N個輔助資料會被獲得。
記憶體管理電路502會基於原始的驗證資料來逐一分析此N個輔助資料並根據分析結果獲得N個評估參數。在本範例實施例中,每一個評估參數包括一個翻轉位元計數。此翻轉位元計數對應於一個輔助資料中的錯誤位元之總數。例如,藉由比對原始儲存至驗證實體單元的驗證資料(即被視為不包含任何錯誤的驗證資料)與後續從驗證實體單元中讀取出來的輔助資料(即經過通道影響而可能有錯誤的驗證資料),輔助資料中全部或大部分的錯誤位元可以被找出。然後,記憶體管理電路502會計數所找到的錯誤位元作為對應於此輔助資料的翻轉位元計數並且設定對應於此翻轉位元計數的一個評估參數來表示此些錯誤位元的總數及/或此輔助資料的正確性。藉此,根據此N個評估參數(或翻轉位元計數),相應的N個輔助資料的正確性可以被統計。
換言之,記憶體管理電路502會根據N個輔助資料中的第一輔助資料與驗證資料獲得對應於第一輔助資料之正確性的第一評估參數並且根據N個輔助資料中的第二輔助資料與同一驗證資料獲得對應於第二輔助資料之正確性的第二評估參數。例如,第一評估參數包括第一翻轉位元計數,而第二評估參數包括第二翻轉位元計數。例如,第一翻轉位元計數可對應於第一輔助資料中錯誤位元的總數,而第二翻轉位元計數對應於第二輔助資料中錯誤位元的總數。
記憶體管理電路502會根據所獲得的N個評估參數決定另一個讀取電壓準位(以下亦稱為第二讀取電壓準位)。例如,此第二讀取電壓準位可以是圖7中的最佳讀取電壓準位V
optimal。例如,記憶體管理電路502可根據此N個評估參數(或翻轉位元計數)之間的數值關係來找出基於某一候選讀取電壓準位所讀取的輔助資料包含最少的錯誤位元及/或具有最高的正確性,並且據以將此候選讀取電壓準位設定為第二讀取電壓準位(或最佳讀取電壓準位)。以N=2為例,記憶體管理電路502可以比較第一翻轉位元計數與第二翻轉位元計數。若第一翻轉位元計數小於第二翻轉位元計數,記憶體管理電路502會將第一候選電壓準位設定為第二讀取電壓準位。或者,若第二翻轉位元計數小於第一翻轉位元計數,記憶體管理電路502會將第二候選電壓準位設定為第二讀取電壓準位。在一範例實施例中,設定第二讀取電壓準位之操作亦可視為更新預設讀取電壓準位。例如,將圖7中的預設讀取電壓準位從電壓準位V
default更新為電壓準位V
optimal。
在決定第二讀取電壓準位之後,記憶體管理電路502會發送另一個讀取指令序列(以下亦稱為第二讀取指令序列)至可複寫式非揮發性記憶體模組406以指示基於第二讀取電壓準位來再次讀取目標實體單元(即實體單元610(1))以獲得另一目標資料(以下亦稱為第二目標資料)。例如,相對於第一目標資料,第二目標資料可能會具有較少的錯誤位元。然後,錯誤檢查與校正電路508會對第二目標資料執行另一解碼操作(以下亦稱為第二解碼操作)。類似於第一解碼操作,此第二解碼操作可對第二目標資料進行驗證並可用於更正第二目標資料中可能存在的錯誤。因此,藉由降低從目標實體單元中讀取之資料中錯誤位元之總數,對於記憶體儲存裝置10之解碼成功率可被提升。
圖9是根據本發明的一範例實施例所繪示的使用多個候選讀取電壓準位來讀取驗證實體單元的示意圖。
請參照圖9,假設儲存有驗證資料的驗證實體單元(例如,圖8中的實體單元610(0))中的記憶胞之臨界電壓分布具有分布911與921。其中,分布911對應於位元“1”並且分布921對應於位元“0”。記憶體管理電路502會查詢一查找表以獲得多個偏移值(offset value)。其中,讀取電壓準位V
C1例如是等於預設讀取電壓準位V
default加上某一個偏移值(例如,+Δ),讀取電壓準位V
C2例如是等於預設讀取電壓準位V
default加上某一個偏移值(例如,-Δ),讀取電壓準位V
C3例如是等於預設讀取電壓準位V
default加上某一個偏移值(例如,+2Δ),讀取電壓準位V
C4例如是等於預設讀取電壓準位V
default加上某一個偏移值(例如,-2Δ),讀取電壓準位V
C5例如是等於預設讀取電壓準位V
default加上某一個偏移值(例如,+3Δ),並且讀取電壓準位V
C6例如是等於預設讀取電壓準位V
default加上某一個偏移值(例如,-3Δ)。讀取電壓準位V
C1~V
C6中的每一者皆為一個候選讀取電壓準位。
記憶體管理電路502會依照一特定順序來指示基於讀取電壓準位V
C1~V
C6讀取驗證實體單元中的記憶胞以獲得相應的6個輔助資料。根據圖9,基於讀取電壓準位V
C3讀取到的輔助資料理論上會具有最少的錯誤位元。然而,從記憶體管理電路502的角度來看,透過逐一將這6個輔助資料與原始的驗證資料進行比對,所獲得的評估資料也有相當高的機率會呈現相同的結果(即基於讀取電壓準位V
C3讀取到的輔助資料會具有最少的錯誤位元)。因此,根據所獲得的評估資料,讀取電壓準位V
C3會被設定為第二讀取電壓準位(或最佳讀取電壓準位)並且被用於重新讀取目標實體單元,以減少所獲得之目標資料中的錯誤。
值得一提的是,在圖8的一範例實施例中,實體單元610(0)~610(249)是屬於同一實體抹除單元。也就是說,被作為驗證實體單元的實體單元610(0)與被作為目標實體單元的實體單元610(1)是屬於同一實體抹除單元。由於實體單元610(0)~610(249)中任兩者的損耗程度及/或記憶胞之臨界電壓分布可能是類似的,記憶體管理電路502可直接根據對應於驗證實體單元(即實體單元610(0))的最佳讀取電壓準位(或所選用的偏移值)來設定對應於目標實體單元(即實體單元610(1))的最佳讀取電壓準位。若目標實體單元為實體單元610(2)~610(249)中的任一者,對應於驗證實體單元(即實體單元610(0))的最佳讀取電壓準位(或所選用的偏移值)亦可以用來設定對應於此目標實體單元的最佳讀取電壓準位。此外,驗證實體單元的數目也可以是多個。例如,在圖8的另一範例實施例中,實體單元610(0)~610(249)中的多個實體單元可以被設為驗證實體單元。
在圖8的另一範例實施例中,作為驗證實體單元的實體單元610(0)與作為目標實體單元的實體單元610(1)會是由同一字元線上的記憶胞組成。例如,作為驗證實體單元的實體單元610(0)為下實體程式化單元,則作為目標實體單元的實體單元610(1)為對應於實體單元610(0)的上實體程式化單元。或者,作為目標實體單元的實體單元610(1)為下實體程式化單元,則作為驗證實體單元的實體單元610(0)為對應於實體單元610(1)的上實體程式化單元等。
在一範例實施例中,驗證資料會被先儲存至某一個驗證實體單元,然後相應的目標實體單元才會被用來儲存主機系統11所指示儲存之資料。然而,在另一範例實施例中,目標實體單元亦可以先被用來儲存資料,然後相應的驗證實體單元才被用來儲存驗證資料。
在一範例實施例中,驗證資料包含一預設字串。在另一範例實施例中,記憶體管理電路502會將一個種子(seed)輸入至隨機數產生器來產生包含隨機字串的驗證資料。然後,記憶體管理電路502會儲存此種子並且將驗證資料程式化至驗證實體單元。當需要使用到原始的驗證資料時,記憶體管理電路502再次將所儲存的種子輸入至隨機數產生器即可獲得原始的驗證資料。
在一範例實施例中,被儲存至驗證實體單元的驗證資料(或種子)會被額外儲存在可複寫式非揮發性記憶體模組406中可靠度較高的區域及/或以可靠度較高的操作模式來儲存。例如,額外以SLC模式(即一個記憶胞只儲存一個位元)來儲存驗證資料。藉此,額外儲存的驗證資料可以基於最高的正確性被還原並且被用來與後續從驗證實體單元中讀取的輔助資料進行比對。
在一範例實施例中,錯誤檢查與校正電路508可支援硬解碼模式解碼與軟解碼模式解碼中的至少一者。在硬解碼模式解碼中,對應於每一個記憶胞的至少一硬位元(亦稱為硬資訊)會被採用。例如,對應於儲存有一個位元(例如,位元“1”或“0”)的一個記憶胞,一個硬決策電壓準位會被用來從此記憶胞中讀取一個硬位元;對應於儲存有兩個位元(例如,位元“11”、“10”、“00”或“01”)的一個記憶胞,兩個硬決策電壓準位會被用來從此記憶胞中讀取兩個硬位元;並且對應於儲存有三個位元(例如,位元“111”、“010”、“000”等)的一個記憶胞,三個硬決策電壓準位會被用來從此記憶胞中讀取三個硬位元。然而,在軟解碼模式解碼中,對應於每一個記憶胞的多個軟位元(亦稱為軟資訊)會被採用。亦即,在軟解碼模式解碼中,無論一個記憶胞儲存有幾個位元,多個軟決策電壓準位皆會被用來從此記憶胞中讀取多個軟位元。藉此,相對於硬解碼模式解碼,軟解碼模式解碼可以獲得更多的通道資訊,從而提高成功解碼的機率。本領域技術人員應當可以理解何謂硬解碼模式解碼與軟解碼模式解碼,在此便不贅述。
在一範例實施例中,上述第一解碼操作與第二解碼操作皆屬於硬解碼模式解碼。例如,第一讀取電壓準位與第二讀取電壓準位皆為硬決策電壓準位。然而,在另一範例實施例中,第一解碼操作是屬於硬解碼模式解碼,而第二解碼操作屬於軟解碼模式解碼。例如,根據第二讀取指令序列,更多的軟決策電壓準位可能會被用來讀取目標實體單元以獲得所需的軟位元。此外,在另一範例實施例中,第一解碼操作與第二解碼操作亦可能皆是屬於軟解碼模式解碼。例如,第一目標資料與第二目標資料中皆包含使用多個軟決策電壓準位所讀取到的軟位元。
圖10是根據本發明的一範例實施例所繪示的解碼方法的流程圖。
請參照圖10,在步驟S1001中,基於第一讀取電壓準位讀取目標實體單元以獲得第一目標資料。在步驟S1002中,對第一目標資料執行第一解碼操作。在步驟S1003中,判斷第一解碼操作是否成功(或失敗)。若第一解碼操作成功,在步驟S1004中,輸出解碼成功之資料。若第一解碼操作不成功(即失敗),在步驟S1005中,基於第一候選電壓準位讀取驗證實體單元以獲得第一輔助資料並基於第二候選電壓準位讀取相同的驗證實體單元以獲得第二輔助資料。在步驟S1006中,根據第一輔助資料與驗證資料獲得第一評估參數並根據第二輔助資料與相同的驗證資料獲得第二評估參數。在步驟S1007中,根據第一評估參數與第二評估參數決定第二讀取電壓準位。在步驟S1008中,基於第二讀取電壓準位讀取目標實體單元以獲得第二目標資料。在步驟S1009中,對第二目標資料執行第二解碼操作。
圖11是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。
請參照圖11,在步驟S1101中,基於一讀取電壓準位讀取目標實體單元以獲得目標資料。在步驟S1102中,對目標資料執行硬解碼模式的一解碼操作。在步驟S1103中,判斷解碼操作是否成功(或失敗)。若解碼操作成功,在步驟S1104中,輸出解碼成功之資料。若解碼操作不成功(即失敗),在步驟S1105中,判斷是否已使用基於驗證資料找到的最佳讀取電壓準位。若尚未使用此最佳讀取電壓準位,在步驟S1106中,基於一候選電壓準位讀取驗證實體單元以獲得輔助資料。在步驟S1107中,根據輔助資料與驗證資料獲得評估參數。在步驟S1108中,判斷是否還有未檢查的候選電壓準位。若還有未檢查的候選電壓準位(即步驟S1108判斷為是),步驟S1106與步驟S1107會被重複執行,直到獲得所有候選電壓準位所對應的輔助資料為止。
若所有候選電壓準位都已被檢查且所對應的輔助資料都已獲得(即步驟S1108判斷為否),在步驟S1109中,根據所獲得的評估參數決定一最佳讀取電壓準位。然後,在步驟S1101中,基於此最佳讀取電壓準位讀取同一目標實體單元以獲得目標資料。在步驟S1102中,對目標資料執行硬解碼模式的解碼操作。在步驟S1103中,判斷解碼操作是否成功(或失敗)。若解碼操作成功,在步驟S1104中,輸出解碼成功之資料。若解碼操作不成功(即失敗),在步驟S1005中,判斷是否已使用基於驗證資料找到的最佳讀取電壓準位。由於最佳讀取電壓準位已被使用,在步驟S1110,進入軟解碼模式解碼。由於硬解碼模式解碼與軟解碼模式解碼已說明於上,在此便不贅述。
圖12是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。
請參照圖12,在步驟S1201中,基於一讀取電壓準位讀取目標實體單元以獲得目標資料。在步驟S1202中,對目標資料執行硬解碼模式的一解碼操作。在步驟S1203中,判斷解碼操作是否成功(或失敗)。若解碼操作成功,在步驟S1204中,輸出解碼成功之資料。若解碼操作不成功(即失敗),在步驟S1205中,判斷是否還有未檢查的候選電壓準位。若還有未檢查的候選電壓準位(即步驟S1205判斷為是),在步驟S1206中,基於尚未檢查的一候選電壓準位讀取驗證實體單元以獲得輔助資料。在步驟S1207中,根據輔助資料與驗證資料獲得評估參數。
在步驟S1208中,判斷步驟S1207中所獲得的評估參數是否優於一預設評估參數。在此,某一評估參數優於預設評估參數表示對應於此評估參數的輔助資料之正確性高於對應於預設評估參數的輔助資料之正確性。例如,可藉由比較兩者的翻轉位元計數來判斷哪一輔助資料之正確性較高。此外,在檢查第一個候選候選電壓準位時,由於尚未設定預設評估參數,故步驟S1209可直接被執行。若步驟S1208判斷為否,表示對應於預設評估參數的輔助資料之正確性較高,在步驟S1208之後,步驟S1205會被重複執行。若步驟S1205判斷為是,則步驟S1206~步驟S1208會被重複執行。若步驟S1208判斷為是,表示對應於步驟S1207所獲得的評估參數的輔助資料之正確性較高,在步驟S1209中,將所獲得的評估參數設定為預設評估參數。在步驟S1210中,根據預設評估參數決定一最佳讀取電壓準位。
在步驟S1210之後,步驟S1201會被重複執行,以基於最佳讀取電壓準位讀取同一目標實體單元以獲得目標資料。在步驟S1202中,對目標資料執行硬解碼模式的解碼操作。在步驟S1203中,判斷解碼操作是否成功(或失敗)。若解碼操作成功,在步驟S1204中,輸出解碼成功之資料。若解碼操作不成功(即失敗),在步驟S1205中,判斷是否還有未檢查的候選電壓準位。若是,步驟S1206等會被重複執行,在此便不贅述。若所有候選電壓準位都已被檢查且所對應的輔助資料都已獲得(即步驟S1205判斷為否),在步驟1211中,進入軟解碼模式解碼。
然而,圖10至圖12中各步驟已詳細說明如上,在此便不再贅述。值得注意的是,圖10至圖12中各步驟可以實作為多個程式碼或是電路,本發明不加以限制。此外,圖10至圖12的方法可以搭配以上範例實施例使用,也可以單獨使用,本發明不加以限制。
綜上所述,一個讀取電壓準位會先被用來讀取目標實體單元以獲得目標資料並且此目標資料會被解碼。若對目標資料之解碼操作失敗,多個候選電壓準位會被用來讀取驗證實體單元以獲得輔助資料。在依序將所獲得的輔助資料與原先被用來儲存至驗證實體單元的驗證資料比對之後,多個評估參數會被獲得。根據所獲得的評估參數,另一讀取電壓準位會被決定並且被用來再次讀取相同的目標實體單元。藉此,可提升所讀取之資料的正確性,改善記憶體儲存裝置的解碼效率。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。
10‧‧‧記憶體儲存裝置
11‧‧‧主機系統
110‧‧‧系統匯流排
111‧‧‧處理器
112‧‧‧隨機存取記憶體
113‧‧‧唯讀記憶體
114‧‧‧資料傳輸介面
12‧‧‧輸入/輸出(I/O)裝置
20‧‧‧主機板
201‧‧‧隨身碟
202‧‧‧記憶卡
203‧‧‧固態硬碟
204‧‧‧無線記憶體儲存裝置
205‧‧‧全球定位系統模組
206‧‧‧網路介面卡
207‧‧‧無線傳輸裝置
208‧‧‧鍵盤
209‧‧‧螢幕
210‧‧‧喇叭
32‧‧‧SD卡
33‧‧‧CF卡
34‧‧‧嵌入式儲存裝置
341‧‧‧嵌入式多媒體卡
342‧‧‧嵌入式多晶片封裝儲存裝置
402‧‧‧連接介面單元
404‧‧‧記憶體控制電路單元
406‧‧‧可複寫式非揮發性記憶體模組
502‧‧‧記憶體管理電路
504‧‧‧主機介面
506‧‧‧記憶體介面
508‧‧‧錯誤檢查與校正電路
510‧‧‧緩衝記憶體
512‧‧‧電源管理電路
601‧‧‧儲存區
602‧‧‧替換區
610(0)~610(B)‧‧‧實體單元
612(0)~612(C)‧‧‧邏輯單元
710、720、711、721、911、921‧‧‧分布
步驟S1001‧‧‧步驟(基於第一讀取電壓準位讀取目標實體單元以獲得第一目標資料)
步驟S1002‧‧‧步驟(對第一目標資料執行第一解碼操作)
步驟S1003‧‧‧步驟(判斷第一解碼操作是否成功)
步驟S1004‧‧‧步驟(輸出解碼成功之資料)
步驟S1005‧‧‧步驟(基於第一候選電壓準位讀取驗證實體單元以獲得第一輔助資料並基於第二候選電壓準位讀取驗證實體單元以獲得第二輔助資料)
步驟S1006‧‧‧步驟(根據第一輔助資料與驗證資料獲得第一評估參數並根據第二輔助資料與驗證資料獲得第二評估參數)
步驟S1007‧‧‧步驟(根據第一評估參數與第二評估參數決定第二讀取電壓準位)
步驟S1008‧‧‧步驟(基於第二讀取電壓準位讀取目標實體單元以獲得第二目標資料)
步驟S1009‧‧‧步驟(對第二目標資料執行第二解碼操作)
步驟S1101‧‧‧步驟(基於一讀取電壓準位讀取目標實體單元以獲得目標資料)
步驟S1102‧‧‧步驟(對目標資料執行硬解碼模式的一解碼操作)
步驟S1103‧‧‧步驟(解碼操作是否成功)
步驟S1104‧‧‧步驟(輸出解碼成功之資料)
步驟S1105‧‧‧步驟(是否已使用基於驗證資料找到的最佳讀取電壓準位)
步驟S1106‧‧‧步驟(基於一候選電壓準位讀取驗證實體單元以獲得輔助資料)
步驟S1107‧‧‧步驟(根據輔助資料與驗證資料獲得評估參數)
步驟S1108‧‧‧步驟(是否還有未檢查的候選電壓準位)
步驟S1109‧‧‧步驟(根據所獲得的評估參數決定一最佳讀取電壓準位)
步驟S1110‧‧‧步驟(進入軟解碼模式解碼)
步驟S1201‧‧‧步驟(基於一讀取電壓準位讀取目標實體單元以獲得目標資料)
步驟S1202‧‧‧步驟(對目標資料執行硬解碼模式的一解碼操作)
步驟S1203‧‧‧步驟(解碼操作是否成功)
步驟S1204‧‧‧步驟(輸出解碼成功之資料)
步驟S1205‧‧‧步驟(是否還有未檢查的候選電壓準位)
步驟S1206‧‧‧步驟(基於一候選電壓準位讀取驗證實體單元以獲得輔助資料)
步驟S1207‧‧‧步驟(根據輔助資料與驗證資料獲得評估參數)
步驟S1208‧‧‧步驟(所獲得的評估參數是否優於一預設評估參數)
步驟S1209‧‧‧步驟(將所獲得的評估參數設定為預設評估參數)
步驟S1210‧‧‧步驟(根據預設評估參數決定一最佳讀取電壓準位)
步驟S1211‧‧‧步驟(進入軟解碼模式解碼)
11‧‧‧主機系統
110‧‧‧系統匯流排
111‧‧‧處理器
112‧‧‧隨機存取記憶體
113‧‧‧唯讀記憶體
114‧‧‧資料傳輸介面
12‧‧‧輸入/輸出(I/O)裝置
20‧‧‧主機板
201‧‧‧隨身碟
202‧‧‧記憶卡
203‧‧‧固態硬碟
204‧‧‧無線記憶體儲存裝置
205‧‧‧全球定位系統模組
206‧‧‧網路介面卡
207‧‧‧無線傳輸裝置
208‧‧‧鍵盤
209‧‧‧螢幕
210‧‧‧喇叭
32‧‧‧SD卡
33‧‧‧CF卡
34‧‧‧嵌入式儲存裝置
341‧‧‧嵌入式多媒體卡
342‧‧‧嵌入式多晶片封裝儲存裝置
402‧‧‧連接介面單元
404‧‧‧記憶體控制電路單元
406‧‧‧可複寫式非揮發性記憶體模組
502‧‧‧記憶體管理電路
504‧‧‧主機介面
506‧‧‧記憶體介面
508‧‧‧錯誤檢查與校正電路
510‧‧‧緩衝記憶體
512‧‧‧電源管理電路
601‧‧‧儲存區
602‧‧‧替換區
610(0)~610(B)‧‧‧實體單元
612(0)~612(C)‧‧‧邏輯單元
710、720、711、721、911、921‧‧‧分布
步驟S1001‧‧‧步驟(基於第一讀取電壓準位讀取目標實體單元以獲得第一目標資料)
步驟S1002‧‧‧步驟(對第一目標資料執行第一解碼操作)
步驟S1003‧‧‧步驟(判斷第一解碼操作是否成功)
步驟S1004‧‧‧步驟(輸出解碼成功之資料)
步驟S1005‧‧‧步驟(基於第一候選電壓準位讀取驗證實體單元以獲得第一輔助資料並基於第二候選電壓準位讀取驗證實體單元以獲得第二輔助資料)
步驟S1006‧‧‧步驟(根據第一輔助資料與驗證資料獲得第一評估參數並根據第二輔助資料與驗證資料獲得第二評估參數)
步驟S1007‧‧‧步驟(根據第一評估參數與第二評估參數決定第二讀取電壓準位)
步驟S1008‧‧‧步驟(基於第二讀取電壓準位讀取目標實體單元以獲得第二目標資料)
步驟S1009‧‧‧步驟(對第二目標資料執行第二解碼操作)
步驟S1101‧‧‧步驟(基於一讀取電壓準位讀取目標實體單元以獲得目標資料)
步驟S1102‧‧‧步驟(對目標資料執行硬解碼模式的一解碼操作)
步驟S1103‧‧‧步驟(解碼操作是否成功)
步驟S1104‧‧‧步驟(輸出解碼成功之資料)
步驟S1105‧‧‧步驟(是否已使用基於驗證資料找到的最佳讀取電壓準位)
步驟S1106‧‧‧步驟(基於一候選電壓準位讀取驗證實體單元以獲得輔助資料)
步驟S1107‧‧‧步驟(根據輔助資料與驗證資料獲得評估參數)
步驟S1108‧‧‧步驟(是否還有未檢查的候選電壓準位)
步驟S1109‧‧‧步驟(根據所獲得的評估參數決定一最佳讀取電壓準位)
步驟S1110‧‧‧步驟(進入軟解碼模式解碼)
步驟S1201‧‧‧步驟(基於一讀取電壓準位讀取目標實體單元以獲得目標資料)
步驟S1202‧‧‧步驟(對目標資料執行硬解碼模式的一解碼操作)
步驟S1203‧‧‧步驟(解碼操作是否成功)
步驟S1204‧‧‧步驟(輸出解碼成功之資料)
步驟S1205‧‧‧步驟(是否還有未檢查的候選電壓準位)
步驟S1206‧‧‧步驟(基於一候選電壓準位讀取驗證實體單元以獲得輔助資料)
步驟S1207‧‧‧步驟(根據輔助資料與驗證資料獲得評估參數)
步驟S1208‧‧‧步驟(所獲得的評估參數是否優於一預設評估參數)
步驟S1209‧‧‧步驟(將所獲得的評估參數設定為預設評估參數)
步驟S1210‧‧‧步驟(根據預設評估參數決定一最佳讀取電壓準位)
步驟S1211‧‧‧步驟(進入軟解碼模式解碼)
圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。 圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。 圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。 圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。 圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。 圖6是根據本發明的一範例實施例所繪示之管理可複寫式非揮發性記憶體模組的示意圖。 圖7是根據本發明的一範例實施例所繪示的一個實體單元中的多個記憶胞的臨界電壓分佈的示意圖。 圖8是根據本發明的一範例實施例所繪示的管理實體單元的示意圖。 圖9是根據本發明的一範例實施例所繪示的使用多個候選讀取電壓準位來讀取驗證實體單元的示意圖。 圖10是根據本發明的一範例實施例所繪示的解碼方法的流程圖。 圖11是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。 圖12是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。
步驟S1001‧‧‧步驟(基於第一讀取電壓準位讀取目標實體單元以獲得第一目標資料)
步驟S1002‧‧‧步驟(對第一目標資料執行第一解碼操作)
步驟S1003‧‧‧步驟(判斷第一解碼操作是否成功)
步驟S1004‧‧‧步驟(輸出解碼成功之資料)
步驟S1005‧‧‧步驟(基於第一候選電壓準位讀取驗證實體單元以獲得第一輔助資料並基於第二候選電壓準位讀取驗證實體單元以獲得第二輔助資料)
步驟S1006‧‧‧步驟(根據第一輔助資料與驗證資料獲得第一評
估參數並根據第二輔助資料與驗證資料獲得第二評估參數)
步驟S1007‧‧‧步驟(根據第一評估參數與第二評估參數決定第二讀取電壓準位)
步驟S1008‧‧‧步驟(基於第二讀取電壓準位讀取目標實體單元以獲得第二目標資料)
步驟S1009‧‧‧步驟(對第二目標資料執行第二解碼操作)
Claims (18)
- 一種解碼方法,用於包括多個實體單元的一可複寫式非揮發性記憶體模組,該解碼方法包括:將一驗證資料程式化至該些實體單元中的一驗證實體單元;基於一第一讀取電壓準位讀取該些實體單元中的一目標實體單元以獲得一第一目標資料;對該第一目標資料執行一第一解碼操作;若該第一解碼操作失敗,基於一第一候選電壓準位讀取該驗證實體單元以獲得一第一輔助資料並基於一第二候選電壓準位讀取該驗證實體單元以獲得一第二輔助資料;根據該第一輔助資料與該驗證資料獲得一第一評估參數並根據該第二輔助資料與該驗證資料獲得一第二評估參數;根據該第一評估參數與該第二評估參數決定一第二讀取電壓準位;基於該第二讀取電壓準位讀取該目標實體單元以獲得一第二目標資料;以及對該第二目標資料執行一第二解碼操作。
- 如申請專利範圍第1項所述的解碼方法,其中該第一評估參數包括一第一翻轉位元計數,其中該第二評估參數包括一第二翻轉位元計數,其中該第一翻轉位元計數對應於該第一輔助資料中的一錯誤位元之一總數,其中該第二翻轉位元計數對應於該第二輔助資料 中的一錯誤位元之一總數。
- 如申請專利範圍第2項所述的解碼方法,其中根據該第一輔助資料與該驗證資料獲得該第一評估參數並根據該第二輔助資料與該驗證資料獲得該第二評估參數之步驟包括:基於該驗證資料來分析該第一輔助資料以計算該第一翻轉位元計數;以及基於該驗證資料來分析該第二輔助資料以計算該第二翻轉位元計數。
- 如申請專利範圍第2項所述的解碼方法,其中根據該第一評估參數與該第二評估參數決定該第二讀取電壓準位的步驟包括:根據該第一翻轉位元計數與該第二翻轉位元計數之間的一數值關係決定該第二讀取電壓準位。
- 如申請專利範圍第1項所述的解碼方法,其中該目標實體單元與該驗證實體單元屬於同一實體抹除單元。
- 如申請專利範圍第1項所述的解碼方法,其中該第一解碼操作與該第二解碼操作皆屬於一硬解碼模式解碼。
- 一種記憶體儲存裝置,包括:一連接介面單元,用以耦接至一主機系統;一可複寫式非揮發性記憶體模組,包括多個實體單元;以及一記憶體控制電路單元,耦接至該連接介面單元與該可複寫式非揮發性記憶體模組, 其中該記憶體控制電路單元用以發送一寫入指令序列以指示將一驗證資料程式化至該些實體單元中的一驗證實體單元,其中該記憶體控制電路單元更用以發送一第一讀取指令序列以指示基於一第一讀取電壓準位讀取該些實體單元中的一目標實體單元以獲得一第一目標資料,其中該記憶體控制電路單元更用以對該第一目標資料執行一第一解碼操作,其中若該第一解碼操作失敗,該記憶體控制電路單元更用以發送一第一測試指令序列以指示基於一第一候選電壓準位讀取該驗證實體單元以獲得一第一輔助資料並發送一第二測試指令序列以指示基於一第二候選電壓準位讀取該驗證實體單元以獲得一第二輔助資料,其中該記憶體控制電路單元更用以根據該第一輔助資料與該驗證資料獲得一第一評估參數並根據該第二輔助資料與該驗證資料獲得一第二評估參數,其中該記憶體控制電路單元更用以根據該第一評估參數與該第二評估參數決定一第二讀取電壓準位,其中該記憶體控制電路單元更用以發送一第二讀取指令序列以指示基於該第二讀取電壓準位讀取該目標實體單元以獲得一第二目標資料,其中該記憶體控制電路單元更用以對該第二目標資料執行一第二解碼操作。
- 如申請專利範圍第7項所述的記憶體儲存裝置,其中該第一評估參數包括一第一翻轉位元計數,其中該第二評估參數包括一第二翻轉位元計數,其中該第一翻轉位元計數對應於該第一輔助資料中的一錯誤位元之一總數,其中該第二翻轉位元計數對應於該第二輔助資料中的一錯誤位元之一總數。
- 如申請專利範圍第8項所述的記憶體儲存裝置,其中該記憶體控制電路單元根據該第一輔助資料與該驗證資料獲得該第一評估參數並根據該第二輔助資料與該驗證資料獲得該第二評估參數之操作包括:基於該驗證資料來分析該第一輔助資料以計算該第一翻轉位元計數;以及基於該驗證資料來分析該第二輔助資料以計算該第二翻轉位元計數。
- 如申請專利範圍第8項所述的記憶體儲存裝置,其中該記憶體控制電路單元根據該第一評估參數與該第二評估參數決定該第二讀取電壓準位的操作包括:根據該第一翻轉位元計數與該第二翻轉位元計數之間的一數值關係決定該第二讀取電壓準位。
- 如申請專利範圍第7項所述的記憶體儲存裝置,其中該目標實體單元與該驗證實體單元屬於同一實體抹除單元。
- 如申請專利範圍第7項所述的記憶體儲存裝置,其中該第一解碼操作與該第二解碼操作皆屬於一硬解碼模式解碼。
- 一種記憶體控制電路單元,用於控制包括多個實體單元的一可複寫式非揮發性記憶體模組,其中該記憶體控制電路單元包括:一主機介而,用以耦接至一主機系統;一記憶體介面,用以耦接至該可複寫式非揮發性記憶體模組;一錯誤檢查與校正電路;以及一記憶體管理電路,耦接至該主機介面、該記憶體介面及該錯誤檢查與校正電路,其中該記憶體管理電路用以發送一寫入指令序列以指示將一驗證資料程式化至該些實體單元中的一驗證實體單元,其中該記憶體管理電路更用以發送一第一讀取指令序列以指示基於一第一讀取電壓準位讀取該些實體單元中的一目標實體單元以獲得一第一目標資料,其中該錯誤檢查與校正電路用以對該第一目標資料執行一第一解碼操作,其中若該第一解碼操作失敗,該記憶體管理電路更用以發送一第一測試指令序列以指示基於一第一候選電壓準位讀取該驗證實體單元以獲得一第一輔助資料並發送一第二測試指令序列以指示基於一第二候選電壓準位讀取該驗證實體單元以獲得一第二輔助資料, 其中該記憶體管理電路更用以根據該第一輔助資料與該驗證資料獲得一第一評估參數並根據該第二輔助資料與該驗證資料獲得一第二評估參數,其中該記憶體管理電路更用以根據該第一評估參數與該第二評估參數決定一第二讀取電壓準位,其中該記憶體管理電路更用以發送一第二讀取指令序列以指示基於該第二讀取電壓準位讀取該目標實體單元以獲得一第二目標資料,其中該錯誤檢查與校正電路更用以對該第二目標資料執行一第二解碼操作。
- 如申請專利範圍第13項所述的記憶體控制電路單元,其中該第一評估參數包括一第一翻轉位元計數,其中該第二評估參數包括一第二翻轉位元計數,其中該第一翻轉位元計數對應於該第一輔助資料中的一錯誤位元之一總數,其中該第二翻轉位元計數對應於該第二輔助資料中的一錯誤位元之一總數。
- 如申請專利範圍第14項所述的記憶體控制電路單元,其中該記憶體管理電路根據該第一輔助資料與該驗證資料獲得該第一評估參數並根據該第二輔助資料與該驗證資料獲得該第二評估參數之操作包括:基於該驗證資料來分析該第一輔助資料以計算該第一翻轉位元計數;以及 基於該驗證資料來分析該第二輔助資料以計算該第二翻轉位元計數。
- 如申請專利範圍第14項所述的記憶體控制電路單元,其中該記憶體管理電路根據該第一評估參數與該第二評估參數決定該第二讀取電壓準位的操作包括:根據該第一翻轉位元計數與該第二翻轉位元計數之間的一數值關係決定該第二讀取電壓準位。
- 如申請專利範圍第13項所述的記憶體控制電路單元,其中該目標實體單元與該驗證實體單元屬於同一實體抹除單元。
- 如申請專利範圍第13項所述的記憶體控制電路單元,其中該第一解碼操作與該第二解碼操作皆屬於一硬解碼模式解碼。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105112619A TWI592869B (zh) | 2016-04-22 | 2016-04-22 | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 |
US15/185,034 US9934087B2 (en) | 2016-04-22 | 2016-06-17 | Decoding method, memory storage device and memory control circuit unit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW105112619A TWI592869B (zh) | 2016-04-22 | 2016-04-22 | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI592869B true TWI592869B (zh) | 2017-07-21 |
TW201810025A TW201810025A (zh) | 2018-03-16 |
Family
ID=60048668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105112619A TWI592869B (zh) | 2016-04-22 | 2016-04-22 | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 |
Country Status (2)
Country | Link |
---|---|
US (1) | US9934087B2 (zh) |
TW (1) | TWI592869B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI640008B (zh) * | 2017-09-26 | 2018-11-01 | 大陸商深圳大心電子科技有限公司 | 資料讀取方法以及儲存控制器 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102257050B1 (ko) * | 2017-05-26 | 2021-05-27 | 에스케이하이닉스 주식회사 | 컨트롤러, 반도체 메모리 시스템 및 그것의 동작 방법 |
US10366763B2 (en) * | 2017-10-31 | 2019-07-30 | Micron Technology, Inc. | Block read count voltage adjustment |
US10878920B2 (en) * | 2018-03-21 | 2020-12-29 | SK Hynix Inc. | Memory controller and memory system having the same |
KR102532563B1 (ko) * | 2018-03-28 | 2023-05-17 | 에스케이하이닉스 주식회사 | 메모리 장치 및 그것의 동작방법 |
CN111459704B (zh) * | 2019-01-21 | 2023-05-30 | 群联电子股份有限公司 | 存储器控制方法、存储器存储装置及存储器控制电路单元 |
US11580214B2 (en) * | 2019-08-27 | 2023-02-14 | Micron Technology, Inc. | Authentication logging using circuitry degradation |
JP2021044034A (ja) * | 2019-09-09 | 2021-03-18 | キオクシア株式会社 | メモリシステム |
US11650753B2 (en) * | 2021-07-27 | 2023-05-16 | Beijing Tenafe Electronic Technology Co., Ltd. | Firmware-controlled and table-based conditioning for synchronous handling of exception cases |
KR102345067B1 (ko) * | 2021-08-25 | 2021-12-29 | 삼성전자주식회사 | 스토리지 장치 및 스토리지 컨트롤러의 구동 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI447731B (zh) | 2010-12-01 | 2014-08-01 | Phison Electronics Corp | 資料讀取方法、記憶體儲存裝置及其控制器 |
US9728263B2 (en) | 2013-05-31 | 2017-08-08 | Sandisk Technologies Llc | Method and device for iteratively updating read voltages |
TWI523018B (zh) * | 2013-12-31 | 2016-02-21 | 群聯電子股份有限公司 | 解碼方法、記憶體儲存裝置、記憶體控制電路單元 |
US9614547B2 (en) * | 2014-06-30 | 2017-04-04 | Sandisk Technologies Llc | Multi-stage decoder |
TWI582779B (zh) * | 2015-04-14 | 2017-05-11 | 群聯電子股份有限公司 | 讀取電壓準位估測方法、記憶體儲存裝置及記憶體控制電路單元 |
-
2016
- 2016-04-22 TW TW105112619A patent/TWI592869B/zh active
- 2016-06-17 US US15/185,034 patent/US9934087B2/en active Active
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI640008B (zh) * | 2017-09-26 | 2018-11-01 | 大陸商深圳大心電子科技有限公司 | 資料讀取方法以及儲存控制器 |
US10628082B2 (en) | 2017-09-26 | 2020-04-21 | Shenzhen Epostar Electronics Limited Co. | Data reading method and storage controller |
Also Published As
Publication number | Publication date |
---|---|
TW201810025A (zh) | 2018-03-16 |
US9934087B2 (en) | 2018-04-03 |
US20170308432A1 (en) | 2017-10-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI592869B (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI649754B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI588834B (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI615852B (zh) | 記憶體重讀方法、記憶體儲存裝置及記憶體控制電路單元 | |
US10256844B2 (en) | Decoding method, memory storage device and memory control circuit unit | |
US10977116B2 (en) | Data access method, memory control circuit unit and memory storage device | |
TWI584304B (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI614755B (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN113140253B (zh) | 存储器管理方法、存储器存储装置及存储器控制电路单元 | |
CN107146638B (zh) | 译码方法、存储器储存装置及存储器控制电路单元 | |
TWI670725B (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
TW201913388A (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI751620B (zh) | 記憶體控制方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI607452B (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 | |
US10984870B2 (en) | Adjusting read voltage level in rewritable nonvolatile memory module | |
TWI662553B (zh) | 記憶體測試方法與記憶體測試系統 | |
CN116230062A (zh) | 电压预测方法、存储器存储装置及存储器控制电路单元 | |
CN113724774B (zh) | 解码方法、存储器存储装置及存储器控制电路单元 | |
TWI597731B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN111326186B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
CN111459704B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
TWI777519B (zh) | 記憶體管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
TWI834149B (zh) | 表格管理方法、記憶體儲存裝置及記憶體控制電路單元 | |
CN111863099B (zh) | 存储器控制方法、存储器存储装置及存储器控制电路单元 | |
TWI808483B (zh) | 解碼方法、記憶體儲存裝置及記憶體控制電路單元 |