TWI584304B - Decoding method, memory storage device and memory control circuit unit - Google Patents

Decoding method, memory storage device and memory control circuit unit Download PDF

Info

Publication number
TWI584304B
TWI584304B TW105115957A TW105115957A TWI584304B TW I584304 B TWI584304 B TW I584304B TW 105115957 A TW105115957 A TW 105115957A TW 105115957 A TW105115957 A TW 105115957A TW I584304 B TWI584304 B TW I584304B
Authority
TW
Taiwan
Prior art keywords
memory
voltage level
voltage
bit information
soft bit
Prior art date
Application number
TW105115957A
Other languages
Chinese (zh)
Other versions
TW201742067A (en
Inventor
顏恆麟
蕭又華
Original Assignee
大心電子(英屬維京群島)股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 大心電子(英屬維京群島)股份有限公司 filed Critical 大心電子(英屬維京群島)股份有限公司
Priority to TW105115957A priority Critical patent/TWI584304B/en
Priority to US15/208,618 priority patent/US9952926B2/en
Application granted granted Critical
Publication of TWI584304B publication Critical patent/TWI584304B/en
Publication of TW201742067A publication Critical patent/TW201742067A/en

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/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
    • G06F11/1008Adding 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/1072Adding 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 multilevel memories
    • 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
    • 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
    • G06F11/1008Adding 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/1012Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using codes or arrangements adapted for a specific type of error
    • 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/021Detection or location of defective auxiliary circuits, e.g. defective refresh counters in voltage or current generators
    • 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/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C29/50004Marginal testing, e.g. race, voltage or current testing of threshold voltage
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/52Protection of memory contents; Detection of errors in memory contents
    • 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
    • G11C2029/0409Online test
    • 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
    • G11C2029/0411Online error correction
    • 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/50Marginal testing, e.g. race, voltage or current testing
    • G11C2029/5004Voltage

Description

解碼方法、記憶體儲存裝置及記憶體控制電路單元Decoding method, memory storage device and memory control circuit unit

本發明是有關於一種記憶體技術,且特別是有關於一種解碼方法、記憶體儲存裝置及記憶體控制電路單元。The present invention relates to a memory technology, and more particularly to a decoding method, a memory storage device, and a memory control circuit unit.

數位相機、行動電話與MP3播放器在這幾年來的成長十分迅速,使得消費者對儲存媒體的需求也急速增加。由於可複寫式非揮發性記憶體模組(例如,快閃記憶體)具有資料非揮發性、省電、體積小,以及無機械結構等特性,所以非常適合內建於上述所舉例的各種可攜式多媒體裝置中。Digital cameras, mobile phones and MP3 players have grown very rapidly in recent years, and the demand for storage media has increased rapidly. Since the rewritable non-volatile memory module (for example, flash memory) has the characteristics of non-volatile data, power saving, small size, and no mechanical structure, it is very suitable for various built-in examples. Portable multimedia device.

一般來說,在將資料從記憶體中讀取出來之後,此資料可能會被解碼以驗證資料的正確性。藉此,若此資料中存在錯誤,透過解碼程序亦可以更正其中的錯誤。在記憶體裝置出廠時,一個預設讀取電壓準位會被配置。此預設讀取電壓準位是用來讀取此記憶體裝置所儲存的資料。然而,隨著記憶體裝置的使用時間及/或損耗程度增加,藉由此預設讀取電壓準位讀取的資料可能會包含越來越多錯誤,甚至超過解碼程序的錯誤更正能力。因此,如何藉由調整預設讀取電壓準位來提升所讀取之資料的正確性及/或記憶體的解碼能力,實為本領域技術人員所致力研究的課題之一。In general, after reading the data from the memory, the data may be decoded to verify the correctness of the data. Therefore, if there is an error in this data, the error can be corrected by the decoding program. A preset read voltage level is configured when the memory device is shipped. This preset read voltage level is used to read the data stored in this memory device. However, as the usage time and/or the degree of loss of the memory device increases, the data read by the preset read voltage level may contain more and more errors, even exceeding the error correction capability of the decoding program. Therefore, how to improve the correctness of the read data and/or the decoding capability of the memory by adjusting the preset read voltage level is one of the subjects studied by those skilled in the art.

本發明提供一種解碼方法、記憶體儲存裝置及記憶體控制電路單元,可提升解碼效率。The invention provides a decoding method, a memory storage device and a memory control circuit unit, which can improve decoding efficiency.

本發明的一範例實施例提供一種解碼方法,其用於包括多個記憶胞的可複寫式非揮發性記憶體模組,所述解碼方法包括:基於預設硬決策電壓準位讀取所述記憶胞中的多個第一記憶胞以獲得硬位元資訊;對所述硬位元資訊執行硬解碼操作;若所述硬解碼操作失敗,基於多個預設軟決策電壓準位讀取所述第一記憶胞以獲得軟位元資訊;對所述軟位元資訊執行軟解碼操作;若所述軟解碼操作失敗,基於多個第一測試電壓準位讀取所述第一記憶胞以獲得第一軟位元資訊並基於多個第二測試電壓準位讀取所述第一記憶胞以獲得第二軟位元資訊;根據所述第一軟位元資訊獲得第一評估參數並根據所述第二軟位元資訊獲得第二評估參數,其中所述第一評估參數對應於所述第一記憶胞中符合第一狀態條件之記憶胞的第一總數,其中所述第二評估參數對應於所述第一記憶胞中符合第二狀態條件之記憶胞的第二總數;以及根據所述第一評估參數與所述第二評估參數更新所述預設硬決策電壓準位。An exemplary embodiment of the present invention provides a decoding method for a rewritable non-volatile memory module including a plurality of memory cells, the decoding method comprising: reading the method based on a preset hard decision voltage level a plurality of first memory cells in the memory cell to obtain hard bit information; perform a hard decoding operation on the hard bit information; if the hard decoding operation fails, read the location based on a plurality of preset soft decision voltage levels Decoding a first memory cell to obtain soft bit information; performing a soft decoding operation on the soft bit information; if the soft decoding operation fails, reading the first memory cell based on a plurality of first test voltage levels Obtaining first soft bit information and reading the first memory cell based on the plurality of second test voltage levels to obtain second soft bit information; obtaining first evaluation parameters according to the first soft bit information and according to The second soft bit information obtains a second evaluation parameter, wherein the first evaluation parameter corresponds to a first total number of memory cells in the first memory cell that meet a first state condition, wherein the second evaluation parameter Corresponding to the first The total number of memory cells in the second line with a second status condition of the memory cell; and the predetermined voltage according to the first hard decision and the evaluation parameter of the second evaluation parameter update level.

在本發明的一範例實施例中,根據所述第一軟位元資訊獲得所述第一評估參數並根據所述第二軟位元資訊獲得所述第二評估參數之步驟包括:根據所述第一軟位元資訊統計所述第一記憶胞中臨界電壓屬於第一轉態區域之記憶胞的總數,其中所述第一轉態區域包含所述第一測試電壓準位中任兩個電壓準位之間的區域;以及根據所述第二軟位元資訊統計所述第一記憶胞中臨界電壓屬於第二轉態區域之記憶胞的總數,其中所述第二轉態區域包含所述第二測試電壓準位中任兩個電壓準位之間的區域。In an exemplary embodiment of the present invention, the step of obtaining the first evaluation parameter according to the first soft bit information and obtaining the second evaluation parameter according to the second soft bit information includes: according to the The first soft bit information is used to count the total number of memory cells in the first memory cell belonging to the first transition region, wherein the first transition region includes any two voltages in the first test voltage level An area between the levels; and counting, according to the second soft bit information, a total number of memory cells in the first memory cell that belong to the second transition region, wherein the second transition region includes the The area between any two of the voltage levels in the second test voltage level.

在本發明的一範例實施例中,根據所述第一軟位元資訊獲得所述第一評估參數並根據所述第二軟位元資訊獲得所述第二評估參數之步驟包括:根據所述第一軟位元資訊統計所述第一記憶胞中臨界電壓屬於第一穩態區域之記憶胞的總數,其中所述第一穩態區域包含所述第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域;以及根據所述第二軟位元資訊統計所述第一記憶胞中臨界電壓屬於第二穩態區域之記憶胞的總數,其中所述第二穩態區域包含所述第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域。In an exemplary embodiment of the present invention, the step of obtaining the first evaluation parameter according to the first soft bit information and obtaining the second evaluation parameter according to the second soft bit information includes: according to the The first soft bit information is used to count the total number of memory cells in the first memory cell that belong to the first steady state region, wherein the first steady state region includes the voltage with the highest voltage in the first test voltage level. An area outside the area between the level and the voltage level at which the voltage is the smallest; and counting the total number of memory cells in the first memory cell that belong to the second steady state area according to the second soft bit information, Wherein the second steady-state region includes a region outside a region between a voltage level at which the voltage of the second test voltage level is the highest and a voltage level at which the voltage is the smallest.

在本發明的一範例實施例中,所述第一測試電壓準位對應於第一偏移值,所述第二測試電壓準位對應於第二偏移值,所述第一偏移值不同於所述第二偏移值,其中根據所述第一評估參數與所述第二評估參數更新所述預設硬決策電壓準位之步驟包括:根據所述第一總數與所述第二總數之間的數值關係來更新所述預設硬決策電壓準位,其中更新後的所述預設硬決策電壓準位對應於所述第一偏移值與所述第二偏移值的其中之一。In an exemplary embodiment of the present invention, the first test voltage level corresponds to a first offset value, and the second test voltage level corresponds to a second offset value, where the first offset value is different And the second offset value, wherein the step of updating the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter comprises: according to the first total number and the second total number a numerical relationship between the preset hard decision voltage levels, wherein the updated preset hard decision voltage level corresponds to the first offset value and the second offset value One.

在本發明的一範例實施例中,所述的解碼方法更包括:根據所述第一總數與所述第二總數之間的所述數值關係來更新所述預設軟決策電壓準位,其中更新後的所述預設軟決策電壓準位對應於所述第一偏移值與所述第二偏移值的所述其中之一。In an exemplary embodiment of the present invention, the decoding method further includes: updating the preset soft decision voltage level according to the numerical relationship between the first total number and the second total number, where The updated preset soft decision voltage level corresponds to one of the first offset value and the second offset value.

本發明的另一範例實施例提供一種記憶體儲存裝置,其包括連接介面單元、可複寫式非揮發性記憶體模組及記憶體控制電路單元。所述連接介面單元用以耦接至主機系統。所述可複寫式非揮發性記憶體模組包括多個記憶胞。所述記憶體控制電路單元耦接至所述連接介面單元與所述可複寫式非揮發性記憶體模組,其中所述記憶體控制電路單元用以發送第一讀取指令序列以指示基於預設硬決策電壓準位讀取所述記憶胞中的多個第一記憶胞以獲得硬位元資訊,其中所述記憶體控制電路單元更用以對所述硬位元資訊執行硬解碼操作,其中若所述硬解碼操作失敗,所述記憶體控制電路單元更用以發送第二讀取指令序列以指示基於多個預設軟決策電壓準位讀取所述第一記憶胞以獲得軟位元資訊,其中所述記憶體控制電路單元更用以對所述軟位元資訊執行軟解碼操作,其中若所述軟解碼操作失敗,所述記憶體控制電路單元更用以發送第一測試指令序列以指示基於多個第一測試電壓準位讀取所述第一記憶胞以獲得第一軟位元資訊並發送第二測試指令序列以指示基於多個第二測試電壓準位讀取所述第一記憶胞以獲得第二軟位元資訊,其中所述記憶體控制電路單元更用以根據所述第一軟位元資訊獲得第一評估參數並根據所述第二軟位元資訊獲得第二評估參數,其中所述第一評估參數對應於所述第一記憶胞中符合第一狀態條件之記憶胞的第一總數,其中所述第二評估參數對應於所述第一記憶胞中符合第二狀態條件之記憶胞的第二總數,其中所述記憶體控制電路單元更用以根據所述第一評估參數與所述第二評估參數更新所述預設硬決策電壓準位。Another exemplary embodiment of the present invention provides a memory storage device including a connection interface unit, a rewritable non-volatile memory module, and a memory control circuit unit. The connection interface unit is configured to be coupled to a host system. The rewritable non-volatile memory module includes a plurality of memory cells. The memory control circuit unit is coupled to the connection interface unit and the rewritable non-volatile memory module, wherein the memory control circuit unit is configured to send a first read instruction sequence to indicate Setting a hard decision voltage level to read a plurality of first memory cells in the memory cell to obtain hard bit information, wherein the memory control circuit unit is further configured to perform a hard decoding operation on the hard bit information, If the hard decoding operation fails, the memory control circuit unit is further configured to send a second read instruction sequence to instruct to read the first memory cell to obtain a soft bit based on a plurality of preset soft decision voltage levels. Meta-information, wherein the memory control circuit unit is further configured to perform a soft decoding operation on the soft bit information, wherein the memory control circuit unit is further configured to send the first test instruction if the soft decoding operation fails The sequence is configured to read the first memory cell based on the plurality of first test voltage levels to obtain first soft bit information and send a second test instruction sequence to indicate based on the plurality of second test voltages Reading the first memory cell to obtain second soft bit information, wherein the memory control circuit unit is further configured to obtain a first evaluation parameter according to the first soft bit information and according to the second soft The bit information obtains a second evaluation parameter, wherein the first evaluation parameter corresponds to a first total number of memory cells in the first memory cell that meet a first state condition, wherein the second evaluation parameter corresponds to the first a second total number of memory cells in the memory cell that meet the second state condition, wherein the memory control circuit unit is further configured to update the preset hard decision voltage according to the first evaluation parameter and the second evaluation parameter Level.

在本發明的一範例實施例中,所述記憶體控制電路單元根據所述第一軟位元資訊獲得所述第一評估參數並根據所述第二軟位元資訊獲得所述第二評估參數之操作包括:根據所述第一軟位元資訊統計所述第一記憶胞中臨界電壓屬於一第一轉態區域之記憶胞的一總數,其中所述第一轉態區域包含所述第一測試電壓準位中任兩個電壓準位之間的區域;以及根據所述第二軟位元資訊統計所述第一記憶胞中臨界電壓屬於第二轉態區域之記憶胞的總數,其中所述第二轉態區域包含所述第二測試電壓準位中任兩個電壓準位之間的區域。In an exemplary embodiment of the present invention, the memory control circuit unit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation parameter according to the second soft bit information. The operation includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell that belong to a first transition region, wherein the first transition region includes the first Testing a region between any two voltage levels in the voltage level; and counting, according to the second soft bit information, a total number of memory cells in the first memory cell that belong to the second transition region, where The second transition region includes a region between any two of the second test voltage levels.

在本發明的一範例實施例中,所述記憶體控制電路單元根據所述第一軟位元資訊獲得所述第一評估參數並根據所述第二軟位元資訊獲得所述第二評估參數之操作包括:根據所述第一軟位元資訊統計所述第一記憶胞中臨界電壓屬於第一穩態區域之記憶胞的總數,其中所述第一穩態區域包含所述第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域;以及根據所述第二軟位元資訊統計所述第一記憶胞中臨界電壓屬於第二穩態區域之記憶胞的總數,其中所述第二穩態區域包含所述第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域。In an exemplary embodiment of the present invention, the memory control circuit unit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation parameter according to the second soft bit information. The operation includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell whose threshold voltage belongs to the first steady state region, wherein the first steady state region includes the first test voltage An area outside the region between the voltage level of the voltage in the level and the voltage level at which the voltage is the smallest; and the threshold voltage in the first memory cell belongs to the second steady state according to the information of the second soft bit information a total number of memory cells of the region, wherein the second steady state region includes a region outside a region between a voltage level at which the voltage is the highest in the second test voltage level and a voltage level at which the voltage is the smallest.

在本發明的一範例實施例中,所述第一測試電壓準位對應於第一偏移值,所述第二測試電壓準位對應於第二偏移值,所述第一偏移值不同於所述第二偏移值,其中所述記憶體控制電路單元根據所述第一評估參數與所述第二評估參數更新所述預設硬決策電壓準位之操作包括:根據所述第一總數與所述第二總數之間的數值關係來更新所述預設硬決策電壓準位,其中更新後的所述預設硬決策電壓準位對應於所述第一偏移值與所述第二偏移值的其中之一。In an exemplary embodiment of the present invention, the first test voltage level corresponds to a first offset value, and the second test voltage level corresponds to a second offset value, where the first offset value is different And the second offset value, wherein the operation of the memory control circuit unit to update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter comprises: according to the first Updating the preset hard decision voltage level by a numerical relationship between the total number and the second total number, wherein the updated preset hard decision voltage level corresponds to the first offset value and the first One of the two offset values.

在本發明的一範例實施例中,所述記憶體控制電路單元更用以根據所述第一總數與所述第二總數之間的所述數值關係來更新所述預設軟決策電壓準位,其中更新後的所述預設軟決策電壓準位對應於所述第一偏移值與所述第二偏移值的所述其中之一。In an exemplary embodiment of the present invention, the memory control circuit unit is further configured to update the preset soft decision voltage level according to the numerical relationship between the first total number and the second total number. And the updated preset soft decision voltage level corresponds to one of the first offset value and the second offset value.

本發明的另一範例實施例提供一種記憶體控制電路單元,其用於控制包括多個記憶胞的可複寫式非揮發性記憶體模組,其中所述記憶體控制電路單元包括主機介面、記憶體介面、錯誤檢查與校正電路及記憶體管理電路。所述主機介面用以耦接至主機系統。所述記憶體介面用以耦接至所述可複寫式非揮發性記憶體模組。所述記憶體管理電路耦接至所述主機介面、所述記憶體介面及所述錯誤檢查與校正電路,所述記憶體管理電路用以發送第一讀取指令序列以指示基於預設硬決策電壓準位讀取所述記憶胞中的多個第一記憶胞以獲得硬位元資訊,所述錯誤檢查與校正電路用以對所述硬位元資訊執行硬解碼操作,若所述硬解碼操作失敗,所述記憶體管理電路更用以發送第二讀取指令序列以指示基於多個預設軟決策電壓準位讀取所述第一記憶胞以獲得軟位元資訊,所述錯誤檢查與校正電路更用以對所述軟位元資訊執行軟解碼操作,若所述軟解碼操作失敗,所述記憶體管理電路更用以發送第一測試指令序列以指示基於多個第一測試電壓準位讀取所述第一記憶胞以獲得第一軟位元資訊並發送第二測試指令序列以指示基於多個第二軟決策電壓準位讀取所述第一記憶胞以獲得第二軟位元資訊,其中所述記憶體管理電路更用以根據所述第一軟位元資訊獲得第一評估參數並根據所述第二軟位元資訊獲得第二評估參數,其中所述第一評估參數對應於所述第一記憶胞中符合第一狀態條件之記憶胞的第一總數,其中所述第二評估參數對應於所述第一記憶胞中符合第二狀態條件之記憶胞的第二總數,所述記憶體管理電路更用以根據所述第一評估參數與所述第二評估參數更新所述預設硬決策電壓準位。Another exemplary embodiment of the present invention provides a memory control circuit unit for controlling a rewritable non-volatile memory module including a plurality of memory cells, wherein the memory control circuit unit includes a host interface and a memory. Body interface, error checking and correction circuit and memory management circuit. The host interface is configured to be coupled to a host system. The memory interface is coupled to the rewritable non-volatile memory module. The memory management circuit is coupled to the host interface, the memory interface, and the error checking and correcting circuit, and the memory management circuit is configured to send a first read instruction sequence to indicate a preset hard decision Reading, by the voltage level, a plurality of first memory cells in the memory cell to obtain hard bit information, wherein the error checking and correction circuit is configured to perform a hard decoding operation on the hard bit information, if the hard decoding If the operation fails, the memory management circuit is further configured to send a second read instruction sequence to instruct the first memory cell to read the soft bit information based on the plurality of preset soft decision voltage levels, the error check And the correction circuit is further configured to perform a soft decoding operation on the soft bit information. If the soft decoding operation fails, the memory management circuit is further configured to send a first test instruction sequence to indicate that the first test voltage is based on the plurality of first test voltages. Reading the first memory cell to obtain first soft bit information and transmitting a second test instruction sequence to indicate that the first memory cell is read based on the plurality of second soft decision voltage levels to obtain a second Bit information, wherein the memory management circuit is further configured to obtain a first evaluation parameter according to the first soft bit information and obtain a second evaluation parameter according to the second soft bit information, wherein the first evaluation The parameter corresponds to a first total number of memory cells in the first memory cell that meet the first state condition, wherein the second evaluation parameter corresponds to a second of the first memory cells that meet the second state condition The memory management circuit is further configured to update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter.

在本發明的一範例實施例中,所述記憶體管理電路根據所述第一軟位元資訊獲得所述第一評估參數並根據所述第二軟位元資訊獲得所述第二評估參數之操作包括:根據所述第一軟位元資訊統計所述第一記憶胞中臨界電壓屬於第一轉態區域之記憶胞的總數,其中所述第一轉態區域包含所述第一測試電壓準位中任兩個電壓準位之間的區域;以及根據所述第二軟位元資訊統計所述第一記憶胞中臨界電壓屬於第二轉態區域之記憶胞的總數,其中所述第二轉態區域包含所述第二測試電壓準位中任兩個電壓準位之間的區域。In an exemplary embodiment of the present invention, the memory management circuit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation parameter according to the second soft bit information. The operation includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell that belong to the first transition region, wherein the first transition region includes the first test voltage An area between any two of the voltage levels; and counting, based on the second soft bit information, a total number of memory cells in the first memory cell that belong to the second transition region, wherein the second The transition region includes an area between any two of the second test voltage levels.

在本發明的一範例實施例中,所述第一轉態區域是所述第一測試電壓準位中電壓最大之電壓準位與所述第一測試電壓準位中電壓最小之電壓準位之間的區域,所述第二轉態區域是所述第二測試電壓準位中電壓最大之電壓準位與所述第二測試電壓準位中電壓最小之電壓準位之間的區域。In an exemplary embodiment of the present invention, the first transition region is a voltage level at which the voltage of the first test voltage level is the highest and a voltage level at which the voltage of the first test voltage level is the smallest. An area between the second transition state is a region between a voltage level at which the voltage of the second test voltage level is the highest and a voltage level at which the voltage of the second test voltage level is the smallest.

在本發明的一範例實施例中,所述記憶體管理電路根據所述第一軟位元資訊獲得所述第一評估參數並根據所述第二軟位元資訊獲得所述第二評估參數之操作包括:根據所述第一軟位元資訊統計所述第一記憶胞中臨界電壓屬於第一穩態區域之記憶胞的總數,其中所述第一穩態區域包含所述第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域;以及根據所述第二軟位元資訊統計所述第一記憶胞中臨界電壓屬於第二穩態區域之記憶胞的總數,其中所述第二穩態區域包含所述第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域。In an exemplary embodiment of the present invention, the memory management circuit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation parameter according to the second soft bit information. The operation includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell that belong to the first steady state region, wherein the first steady state region includes the first test voltage An area outside the region between the voltage level at which the voltage is the highest and the voltage level at which the voltage is the smallest; and the threshold voltage in the first memory cell belongs to the second steady region according to the information of the second soft bit information a total number of memory cells, wherein the second steady state region includes a region outside a region between a voltage level at which the voltage is the highest in the second test voltage level and a voltage level at which the voltage is the smallest.

在本發明的一範例實施例中,所述第一穩態區域位於所述第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外,其中所述第二穩態區域位於所述第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外。In an exemplary embodiment of the present invention, the first steady-state region is located outside a region between a voltage level at which the voltage is the largest and a voltage level at which the voltage is the smallest in the first test voltage level, wherein the The second steady state region is located outside the region between the voltage level at which the voltage is the highest in the second test voltage level and the voltage level at which the voltage is the smallest.

在本發明的一範例實施例中,所述第一測試電壓準位對應於第一偏移值,所述第二測試電壓準位對應於第二偏移值,所述第一偏移值不同於所述第二偏移值,所述記憶體管理電路根據所述第一評估參數與所述第二評估參數更新所述預設硬決策電壓準位之操作包括:根據所述第一總數與所述第二總數之間的數值關係來更新所述預設硬決策電壓準位,其中更新後的所述預設硬決策電壓準位對應於所述第一偏移值與所述第二偏移值的其中之一。In an exemplary embodiment of the present invention, the first test voltage level corresponds to a first offset value, and the second test voltage level corresponds to a second offset value, where the first offset value is different And the operation of the memory management circuit to update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter, according to the second offset value, according to the first total a numerical relationship between the second total number to update the preset hard decision voltage level, wherein the updated preset hard decision voltage level corresponds to the first offset value and the second offset One of the values of the shift.

在本發明的一範例實施例中,所述記憶體管理電路更用以根據所述第一總數與所述第二總數之間的所述數值關係來更新所述預設軟決策電壓準位,其中更新後的所述預設軟決策電壓準位對應於所述第一偏移值與所述第二偏移值的所述其中之一。In an exemplary embodiment of the present invention, the memory management circuit is further configured to update the preset soft decision voltage level according to the numerical relationship between the first total number and the second total number. The updated preset soft decision voltage level corresponds to one of the first offset value and the second offset value.

基於上述,在軟解碼程序失敗之後,至少兩組的測試電壓準位會被用來讀取相同的記憶胞。然後,相應的多個評估參數會被獲得,其中每一個評估參數對應於記憶胞中符合特定狀態條件之記憶胞的總數。根據此些評估參數,預設硬決策電壓準位即可被更新。藉此,可提升解碼效率。Based on the above, after the soft decoding process fails, at least two sets of test voltage levels are used to read the same memory cell. A corresponding plurality of evaluation parameters are then obtained, wherein each of the evaluation parameters corresponds to the total number of memory cells in the memory cell that meet certain state conditions. Based on these evaluation parameters, the preset hard decision voltage level can be updated. Thereby, the decoding efficiency can be improved.

為讓本發明的上述特徵和優點能更明顯易懂,下文特舉實施例,並配合所附圖式作詳細說明如下。The above described features and advantages of the invention will be apparent from the following description.

一般而言,記憶體儲存裝置(亦稱,記憶體儲存系統)包括可複寫式非揮發性記憶體模組(rewritable non-volatile memory module)與控制器(亦稱,控制電路)。通常記憶體儲存裝置是與主機系統一起使用,以使主機系統可將資料寫入至記憶體儲存裝置或從記憶體儲存裝置中目標資料。In general, a memory storage device (also referred to as a memory storage system) includes a rewritable non-volatile memory module and a controller (also referred to as a control circuit). Typically, the memory storage device is used with a host system to enable the host system to write data to or from the memory storage device.

圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。FIG. 1 is a schematic diagram of a host system, a memory storage device, and an input/output (I/O) device according to an exemplary embodiment of the invention. FIG. 2 is a schematic diagram of a host system, a memory storage device, and an I/O device according to another exemplary embodiment of the present invention.

請參照圖1與圖2,主機系統11一般包括處理器111、隨機存取記憶體(random access memory, RAM)112、唯讀記憶體(read only memory, ROM)113及資料傳輸介面114。處理器111、隨機存取記憶體112、唯讀記憶體113及資料傳輸介面114皆耦接至系統匯流排(system bus)110。Referring to FIG. 1 and FIG. 2, the host system 11 generally includes a processor 111, a random access memory (RAM) 112, a read only memory (ROM) 113, and a data transmission interface 114. The processor 111, the random access memory 112, the read-only memory 113, and the data transmission interface 114 are all coupled to the system bus 110.

在本範例實施例中,主機系統11是透過資料傳輸介面114與記憶體儲存裝置10耦接。例如,主機系統11可經由資料傳輸介面114將資料儲存至記憶體儲存裝置10或從記憶體儲存裝置10中目標資料。此外,主機系統11是透過系統匯流排110與I/O裝置12耦接。例如,主機系統11可經由系統匯流排110將輸出訊號傳送至I/O裝置12或從I/O裝置12接收輸入訊號。In the exemplary embodiment, the host system 11 is coupled to the memory storage device 10 through the data transmission interface 114. For example, the host system 11 can store data to or from the memory storage device 10 via the data transfer interface 114. In addition, the host system 11 is coupled to the I/O device 12 through the system bus bar 110. For example, host system 11 can transmit output signals to or receive input signals from I/O device 12 via system bus 110.

在本範例實施例中,處理器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。In the present exemplary embodiment, the processor 111, the random access memory 112, the read-only memory 113, and the data transfer interface 114 may be disposed on the motherboard 20 of the host system 11. The number of data transmission interfaces 114 may be one or more. The motherboard 20 can be coupled to the memory storage device 10 via a data transmission interface 114 via a wired or wireless connection. The memory storage device 10 can be, for example, a flash drive 201, a memory card 202, a solid state drive (SSD) 203, or a wireless memory storage device 204. The wireless memory storage device 204 can be, for example, a Near Field Communication (NFC) memory storage device, a wireless fax (WiFi) memory storage device, a Bluetooth memory storage device, or a low power Bluetooth memory. A memory storage device based on various wireless communication technologies, such as a storage device (for example, iBeacon). In addition, the motherboard 20 can also be coupled to the Global Positioning System (GPS) module 205, the network interface card 206, the wireless transmission device 207, the keyboard 208, the screen 209, the speaker 210, etc. through the system bus bar 110. I/O device. For example, in an exemplary embodiment, the motherboard 20 can access the wireless memory storage device 204 via the wireless transmission device 207.

在一範例實施例中,所提及的主機系統為可實質地與記憶體儲存裝置配合以儲存資料的任意系統。雖然在上述範例實施例中,主機系統是以電腦系統來作說明,然而,圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。請參照圖3,在另一範例實施例中,主機系統31也可以是數位相機、攝影機、通訊裝置、音訊播放器、視訊播放器或平板電腦等系統,而記憶體儲存裝置30可為其所使用的安全數位(Secure Digital, SD)卡32、小型快閃(Compact Flash, CF)卡33或嵌入式儲存裝置34等各式非揮發性記憶體儲存裝置。嵌入式儲存裝置34包括嵌入式多媒體卡(embedded MMC, eMMC)341及/或嵌入式多晶片封裝(embedded Multi Chip Package, eMCP)儲存裝置342等各類型將記憶體模組直接耦接於主機系統的基板上的嵌入式儲存裝置。In an exemplary embodiment, the host system referred to is any system that can substantially cooperate with a memory storage device to store data. Although in the above exemplary embodiment, the host system is illustrated by a computer system, FIG. 3 is a schematic diagram of the host system and the memory storage device according to another exemplary embodiment of the present invention. Referring to FIG. 3, in another exemplary embodiment, the host system 31 can also be a digital camera, a video camera, a communication device, an audio player, a video player, or a tablet computer, and the memory storage device 30 can be used for Various non-volatile memory storage devices such as a Secure Digital (SD) card 32, a Compact Flash (CF) card 33, or an embedded storage device 34 are used. The embedded storage device 34 includes an embedded multimedia card (embedded MMC) 341 and/or an embedded multi-chip package (eMCP) storage device 342 and the like, and directly couples the memory module to the host system. Embedded storage device on the substrate.

圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。FIG. 4 is a schematic block diagram of a memory storage device according to an exemplary embodiment of the invention.

請參照圖4,記憶體儲存裝置10包括連接介面單元402、記憶體控制電路單元404與可複寫式非揮發性記憶體模組406。Referring to FIG. 4, the memory storage device 10 includes a connection interface unit 402, a memory control circuit unit 404, and a rewritable non-volatile memory module 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之晶片外。In the present exemplary embodiment, the connection interface unit 402 is compatible with the Serial Advanced Technology Attachment (SATA) standard. However, it must be understood that the present invention is not limited thereto, and the connection interface unit 402 may also be a Parallel Advanced Technology Attachment (PATA) standard, Institute of Electrical and Electronic Engineers (IEEE) 1394. Standard, high-speed Peripheral Component Interconnect Express (PCI Express) standard, Universal Serial Bus (USB) standard, SD interface standard, Ultra High Speed-I (UHS-I) interface Standard, Ultra High Speed II (UHS-II) interface standard, Memory Stick (MS) interface standard, Multi-Chip Package interface standard, Multimedia Memory Card (Multi Media Card) , MMC) interface standard, eMMC interface standard, Universal Flash Storage (UFS) interface standard, eMCP interface standard, CF interface standard, Integrated Device Electronics (IDE) standard or other suitable standard. The connection interface unit 402 can be packaged in a wafer with the memory control circuit unit 404, or the connection interface unit 402 can be disposed outside a wafer including the memory control circuit unit 404.

記憶體控制電路單元404用以執行以硬體型式或韌體型式實作的多個邏輯閘或控制指令並且根據主機系統11的指令在可複寫式非揮發性記憶體模組406中進行資料的寫入、讀取與抹除等運作。The memory control circuit unit 404 is configured to execute a plurality of logic gates or control commands implemented in a hard type or a firmware type and perform data in the rewritable non-volatile memory module 406 according to an instruction of the host system 11. Write, read, and erase operations.

可複寫式非揮發性記憶體模組406是耦接至記憶體控制電路單元404並且用以儲存主機系統11所寫入之資料。可複寫式非揮發性記憶體模組406可以是單階記憶胞(Single Level Cell, SLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存1個位元的快閃記憶體模組)、多階記憶胞(Multi Level Cell, MLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存2個位元的快閃記憶體模組)、複數階記憶胞(Triple Level Cell,TLC)NAND型快閃記憶體模組(即,一個記憶胞中可儲存3個位元的快閃記憶體模組)、其他快閃記憶體模組或其他具有相同特性的記憶體模組。The rewritable non-volatile memory module 406 is coupled to the memory control circuit unit 404 and is used to store data written by the host system 11. The rewritable non-volatile memory module 406 can be a single-level memory cell (SLC) NAND-type flash memory module (ie, one memory cell can store one bit of flash memory) Module), Multi Level Cell (MLC) NAND flash memory module (ie, a flash memory module that can store 2 bits in a memory cell), and complex memory cells ( Triple Level Cell, TLC) NAND flash memory module (ie, a flash memory module that can store 3 bits in a memory cell), other flash memory modules, or other memory with the same characteristics Body module.

可複寫式非揮發性記憶體模組406中的每一個記憶胞是以電壓(以下亦稱為臨界電壓)的改變來儲存一或多個位元。具體來說,每一個記憶胞的控制閘極(control gate)與通道之間有一個電荷捕捉層。透過施予一寫入電壓至控制閘極,可以改變電荷補捉層的電子量,進而改變記憶胞的臨界電壓。此改變臨界電壓的操作亦稱為“把資料寫入至記憶胞”或“程式化記憶胞”。隨著臨界電壓的改變,可複寫式非揮發性記憶體模組406中的每一個記憶胞具有多個儲存狀態。透過施予讀取電壓可以判斷一個記憶胞是屬於哪一個儲存狀態,藉此取得此記憶胞所儲存的一或多個位元。Each of the memory cells of the rewritable non-volatile memory module 406 stores one or more bits in response to a change in voltage (hereinafter also referred to as a threshold voltage). Specifically, there is a charge trapping layer between the control gate and the channel of each memory cell. By applying a write voltage to the control gate, the amount of electrons in the charge trapping layer can be changed, thereby changing the threshold voltage of the memory cell. This operation of changing the threshold voltage is also referred to as "writing data to the memory cell" or "stylized memory cell". As the threshold voltage changes, each of the memory cells of the rewritable non-volatile memory module 406 has a plurality of storage states. By applying the read voltage, it can be determined which storage state a memory cell belongs to, thereby obtaining one or more bits stored by the memory cell.

圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。FIG. 5 is a schematic block diagram of a memory control circuit unit according to an exemplary embodiment of the invention.

請參照圖5,記憶體控制電路單元404包括記憶體管理電路502、主機介面504、記憶體介面506及錯誤檢查與校正電路508。Referring to FIG. 5, the memory control circuit unit 404 includes a memory management circuit 502, a host interface 504, a memory interface 506, and an error check and correction circuit 508.

記憶體管理電路502用以控制記憶體控制電路單元404的整體運作。具體來說,記憶體管理電路502具有多個控制指令,並且在記憶體儲存裝置10運作時,此些控制指令會被執行以進行資料的寫入、讀取與抹除等運作。以下說明記憶體管理電路502的操作時,等同於說明記憶體控制電路單元404的操作。The memory management circuit 502 is used to control the overall operation of the memory control circuit unit 404. Specifically, the memory management circuit 502 has a plurality of control commands, and when the memory storage device 10 operates, such control commands are executed to perform operations such as writing, reading, and erasing of data. The operation of the memory management circuit 502 will be described below, which is equivalent to the operation of the memory control circuit unit 404.

在本範例實施例中,記憶體管理電路502的控制指令是以韌體型式來實作。例如,記憶體管理電路502具有微處理器單元(未繪示)與唯讀記憶體(未繪示),並且此些控制指令是被燒錄至此唯讀記憶體中。當記憶體儲存裝置10運作時,此些控制指令會由微處理器單元來執行以進行資料的寫入、讀取與抹除等運作。In the present exemplary embodiment, the control instructions of the memory management circuit 502 are implemented in a firmware version. For example, the memory management circuit 502 has a microprocessor unit (not shown) and a read-only memory (not shown), and such control instructions are programmed into the read-only memory. When the memory storage device 10 is in operation, such control commands are executed by the microprocessor unit to perform operations such as writing, reading, and erasing data.

在另一範例實施例中,記憶體管理電路502的控制指令亦可以程式碼型式儲存於可複寫式非揮發性記憶體模組406的特定區域(例如,記憶體模組中專用於存放系統資料的系統區)中。此外,記憶體管理電路502具有微處理器單元(未繪示)、唯讀記憶體(未繪示)及隨機存取記憶體(未繪示)。特別是,此唯讀記憶體具有開機碼(boot code),並且當記憶體控制電路單元404被致能時,微處理器單元會先執行此開機碼來將儲存於可複寫式非揮發性記憶體模組406中之控制指令載入至記憶體管理電路502的隨機存取記憶體中。之後,微處理器單元會運轉此些控制指令以進行資料的寫入、讀取與抹除等運作。In another exemplary embodiment, the control command of the memory management circuit 502 can also be stored in a specific area of the rewritable non-volatile memory module 406 (for example, the memory module is dedicated to storing system data). In the system area). In addition, the memory management circuit 502 has a microprocessor unit (not shown), a read-only memory (not shown), and a random access memory (not shown). In particular, the read-only memory has a boot code, and when the memory control circuit unit 404 is enabled, the microprocessor unit first executes the boot code to store the rewritable non-volatile memory. The control commands in the body module 406 are loaded into the random access memory of the memory management circuit 502. After that, the microprocessor unit will run these control commands to perform data writing, reading and erasing operations.

此外,在另一範例實施例中,記憶體管理電路502的控制指令亦可以一硬體型式來實作。例如,記憶體管理電路502包括微控制器、記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路。記憶胞管理電路、記憶體寫入電路、記憶體讀取電路、記憶體抹除電路與資料處理電路是耦接至微控制器。記憶胞管理電路用以管理可複寫式非揮發性記憶體模組406的記憶胞或其群組。記憶體寫入電路用以對可複寫式非揮發性記憶體模組406下達寫入指令序列以將資料寫入至可複寫式非揮發性記憶體模組406中。記憶體讀取電路用以對可複寫式非揮發性記憶體模組406下達讀取指令序列以從可複寫式非揮發性記憶體模組406中目標資料。記憶體抹除電路用以對可複寫式非揮發性記憶體模組406下達抹除指令序列以將資料從可複寫式非揮發性記憶體模組406中抹除。資料處理電路用以處理欲寫入至可複寫式非揮發性記憶體模組406的資料以及從可複寫式非揮發性記憶體模組406中讀取的資料。寫入指令序列、讀取指令序列及抹除指令序列可各別包括一或多個程式碼或指令碼並且用以指示可複寫式非揮發性記憶體模組406執行相對應的寫入、讀取及抹除等操作。在一範例實施例中,記憶體管理電路502還可以下達其他類型的指令序列給可複寫式非揮發性記憶體模組406以指示執行相對應的操作。In addition, in another exemplary embodiment, the control command of the memory management circuit 502 can also be implemented in a hardware format. For example, the memory management circuit 502 includes a microcontroller, a memory cell management circuit, a memory write circuit, a memory read circuit, a memory erase circuit, and a data processing circuit. The memory cell management circuit, the memory write circuit, the memory read circuit, the memory erase circuit and the data processing circuit are coupled to the microcontroller. The memory cell management circuit is used to manage the memory cells of the rewritable non-volatile memory module 406 or a group thereof. The memory write circuit is used to issue a write command sequence to the rewritable non-volatile memory module 406 to write data into the rewritable non-volatile memory module 406. The memory read circuit is configured to issue a read command sequence to the rewritable non-volatile memory module 406 to obtain target data from the rewritable non-volatile memory module 406. The memory erase circuit is used to issue an erase command sequence to the rewritable non-volatile memory module 406 to erase data from the rewritable non-volatile memory module 406. The data processing circuit is configured to process data to be written to the rewritable non-volatile memory module 406 and data read from the rewritable non-volatile memory module 406. The write command sequence, the read command sequence, and the erase command sequence may each include one or more code codes or instruction codes and are used to instruct the rewritable non-volatile memory module 406 to perform corresponding writes and reads. Take the erase and other operations. In an exemplary embodiment, the memory management circuit 502 can also provide other types of instruction sequences to the rewritable non-volatile memory module 406 to indicate that the corresponding operations are performed.

主機介面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標準或其他適合的資料傳輸標準。The host interface 504 is coupled to the memory management circuit 502 and is configured to receive and identify instructions and data transmitted by the host system 11. That is to say, the instructions and data transmitted by the host system 11 are transmitted to the memory management circuit 502 through the host interface 504. In the present exemplary embodiment, host interface 504 is compatible with the SATA standard. However, it must be understood that the present invention is not limited thereto, and the host interface 504 may be compatible with the PATA standard, the IEEE 1394 standard, the PCI Express standard, the USB standard, the SD standard, the UHS-I standard, the UHS-II standard, and the MS standard. , MMC standard, eMMC standard, UFS standard, CF standard, IDE standard or other suitable data transmission standard.

記憶體介面506是耦接至記憶體管理電路502並且用以存取可複寫式非揮發性記憶體模組406。也就是說,欲寫入至可複寫式非揮發性記憶體模組406的資料會經由記憶體介面506轉換為可複寫式非揮發性記憶體模組406所能接受的格式。具體來說,若記憶體管理電路502要存取可複寫式非揮發性記憶體模組406,記憶體介面506會傳送對應的指令序列。例如,這些指令序列可包括指示寫入資料的寫入指令序列、指示目標資料的讀取指令序列、指示抹除資料的抹除指令序列、以及用以指示各種記憶體操作(例如,改變讀取電壓準位或執行垃圾回收程序等等)的相對應的指令序列。這些指令序列例如是由記憶體管理電路502產生並且透過記憶體介面506傳送至可複寫式非揮發性記憶體模組406。這些指令序列可包括一或多個訊號,或是在匯流排上的資料。這些訊號或資料可包括指令碼或程式碼。例如,在讀取指令序列中,會包括讀取的辨識碼、記憶體位址等資訊。The memory interface 506 is coupled to the memory management circuit 502 and is used to access the rewritable non-volatile memory module 406. That is, the data to be written to the rewritable non-volatile memory module 406 is converted to a format acceptable to the rewritable non-volatile memory module 406 via the memory interface 506. Specifically, if the memory management circuit 502 is to access the rewritable non-volatile memory module 406, the memory interface 506 will transmit a corresponding sequence of instructions. For example, the sequences of instructions may include a sequence of write instructions indicating write data, a sequence of read instructions indicating target data, a sequence of erase instructions indicating erased material, and instructions for indicating various memory operations (eg, changing reads) The corresponding instruction sequence of the voltage level or the garbage collection procedure, etc.). These sequences of instructions are generated, for example, by the memory management circuit 502 and transmitted to the rewritable non-volatile memory module 406 via the memory interface 506. These sequences of instructions may include one or more signals or data on the bus. These signals or materials may include instruction codes or code. For example, in the read command sequence, information such as the read identification code, the memory address, and the like are included.

錯誤檢查與校正電路508是耦接至記憶體管理電路502並且用以執行錯誤檢查與校正程序以確保資料的正確性。具體來說,當記憶體管理電路502從主機系統11中接收到寫入指令時,錯誤檢查與校正電路508會為對應此寫入指令的資料產生對應的錯誤更正碼(error correcting code, ECC)及/或錯誤檢查碼(error detecting code,EDC),並且記憶體管理電路502會將對應此寫入指令的資料與對應的錯誤更正碼及/或錯誤檢查碼寫入至可複寫式非揮發性記憶體模組406中。之後,當記憶體管理電路502從可複寫式非揮發性記憶體模組406中目標資料時會同時讀取此資料對應的錯誤更正碼及/或錯誤檢查碼,並且錯誤檢查與校正電路508會依據此錯誤更正碼及/或錯誤檢查碼對所讀取的資料執行錯誤檢查與校正程序。The error checking and correction circuit 508 is coupled to the memory management circuit 502 and is used to perform error checking and correction procedures to ensure the correctness of the data. Specifically, when the memory management circuit 502 receives a write command from the host system 11, the error check and correction circuit 508 generates a corresponding error correcting code (ECC) for the data corresponding to the write command. And/or error detecting code (EDC), and the memory management circuit 502 writes the data corresponding to the write command and the corresponding error correction code and/or error check code to the rewritable non-volatile In the memory module 406. Thereafter, when the memory management circuit 502 reads the target data from the rewritable non-volatile memory module 406, the error correction code and/or the error check code corresponding to the data are simultaneously read, and the error check and correction circuit 508 An error check and correction procedure is performed on the read data based on the error correction code and/or the error check code.

在本範例實施例中,錯誤檢查與校正電路508是使用低密度奇偶檢查碼(low density parity code,LDPC)來執行資料的編碼與解碼。然而,在另一範例實施例中,錯誤檢查與校正電路508也可以是使用BCH碼、迴旋碼(convolutional code)或渦輪碼(turbo code)等各種碼來執行資料的編碼與解碼。對於本領域的技術人員來說,使用上述任一種碼來執行資料的編碼與解碼是屬於公知常識,故在此便不贅述。In the present exemplary embodiment, the error checking and correction circuit 508 performs encoding and decoding of data using a low density parity code (LDPC). However, in another exemplary embodiment, the error checking and correction circuit 508 may also perform encoding and decoding of data using various codes such as a BCH code, a convolutional code, or a turbo code. It is common knowledge for those skilled in the art to perform encoding and decoding of data using any of the above codes, and thus will not be described herein.

在一範例實施例中,記憶體控制電路單元404還包括緩衝記憶體510與電源管理電路512。In an exemplary embodiment, the memory control circuit unit 404 further includes a buffer memory 510 and a power management circuit 512.

緩衝記憶體510是耦接至記憶體管理電路502並且用以暫存來自於主機系統11的資料與指令或來自於可複寫式非揮發性記憶體模組406的資料。電源管理電路512是耦接至記憶體管理電路502並且用以控制記憶體儲存裝置10的電源。The buffer memory 510 is coupled to the memory management circuit 502 and is used to temporarily store data and instructions from the host system 11 or data from the rewritable non-volatile memory module 406. The power management circuit 512 is coupled to the memory management circuit 502 and is used to control the power of the memory storage device 10.

圖6是根據本發明的一範例實施例所繪示之管理可複寫式非揮發性記憶體模組的示意圖。必須瞭解的是,在此描述可複寫式非揮發性記憶體模組406之實體單元的運作時,以“選擇”與“分組”等詞來操作實體單元是邏輯上的概念。也就是說,可複寫式非揮發性記憶體模組406之實體單元的實際位置並未更動,而是邏輯上對可複寫式非揮發性記憶體模組406的實體單元進行操作。FIG. 6 is a schematic diagram of managing a rewritable non-volatile memory module according to an exemplary embodiment of the invention. It must be understood that when describing the operation of the physical unit of the rewritable non-volatile memory module 406, the operation of the physical unit with the words "select" and "group" is a logical concept. That is, the actual location of the physical unit of the rewritable non-volatile memory module 406 is not changed, but the physical unit of the rewritable non-volatile memory module 406 is logically operated.

在本範例實施例中,可複寫式非揮發性記憶體模組406的記憶胞會構成多個實體程式化單元,並且此些實體程式化單元會構成多個實體抹除單元。具體來說,同一條字元線上的記憶胞會組成一或多個實體程式化單元。若每一個記憶胞可儲存2個以上的位元,則同一條字元線上的實體程式化單元至少可被分類為下實體程式化單元與上實體程式化單元。例如,一記憶胞的最低有效位元(Least Significant Bit,LSB)是屬於下實體程式化單元,並且一記憶胞的最高有效位元(Most Significant Bit,MSB)是屬於上實體程式化單元。一般來說,在MLC NAND型快閃記憶體中,下實體程式化單元的寫入速度會大於上實體程式化單元的寫入速度,及/或下實體程式化單元的可靠度是高於上實體程式化單元的可靠度。In the present exemplary embodiment, the memory cells of the rewritable non-volatile memory module 406 constitute a plurality of physical stylized units, and the physical stylized units constitute a plurality of physical erasing units. Specifically, the memory cells on the same word line form one or more entity stylized units. If each memory cell can store more than 2 bits, the entity stylized units on the same word line can be classified into at least a lower entity stylized unit and an upper physical stylized unit. For example, a Least Significant Bit (LSB) of a memory cell belongs to a lower entity stylized unit, and a Most Significant Bit (MSB) of a memory cell belongs to an upper entity stylized unit. In general, in MLC NAND flash memory, the write speed of the lower stylized unit will be greater than the write speed of the upper stylized unit, and / or the reliability of the lower stylized unit is higher than the upper The reliability of the entity stylized unit.

在本範例實施例中,實體程式化單元為程式化的最小單元。即,實體程式化單元為寫入資料的最小單元。例如,實體程式化單元為實體頁面(page)或是實體扇(sector)。若實體程式化單元為實體頁面,則此些實體程式化單元通常包括資料位元區與冗餘(redundancy)位元區。資料位元區包含多個實體扇,用以儲存使用者資料,而冗餘位元區用以儲存系統資料(例如,錯誤更正碼)。在本範例實施例中,資料位元區包含32個實體扇,且一個實體扇的大小為512位元組(byte, B)。然而,在其他範例實施例中,資料位元區中也可包含8個、16個或數目更多或更少的實體扇,並且每一個實體扇的大小也可以是更大或更小。另一方面,實體抹除單元為抹除之最小單位。亦即,每一實體抹除單元含有最小數目之一併被抹除之記憶胞。例如,實體抹除單元為實體區塊(block)。In this exemplary embodiment, the physical stylized unit is the smallest unit that is stylized. That is, the entity stylized unit is the smallest unit that writes data. For example, an entity stylized unit is a physical page or a sector. If the entity stylized unit is a physical page, then the entity stylized units typically include a data bit area and a redundancy bit field. The data bit area contains a plurality of physical fans for storing user data, and the redundant bit area is used for storing system data (for example, error correction codes). In this exemplary embodiment, the data bit area includes 32 physical fans, and one physical fan has a size of 512 bytes (byte, B). However, in other exemplary embodiments, the data bit area may also contain 8, 16, or a greater or lesser number of solid fans, and the size of each of the physical fans may also be larger or smaller. On the other hand, the physical erase unit is the smallest unit of erase. That is, each physical erase unit contains one of the smallest number of erased memory cells. For example, the physical erase unit is a physical 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)中的每一者亦可以包含任意數目之記憶胞。Referring to FIG. 6, the memory management circuit 502 logically groups the physical units 610(0)-610(B) of the rewritable non-volatile memory module 406 into a storage area 601 and a replacement area 602. The physical units 610(0)-610(A) in the storage area 601 are used to store data, and the physical units 610(A+1)~610(B) in the replacement area 602 are used to replace the damage in the storage area 601. Physical unit. For example, the replacement of a physical unit is in units of one physical erase unit. In the present exemplary embodiment, each of the physical units 610(0)-610(B) refers to at least one physical stylized unit. Alternatively, in another exemplary embodiment, each of the physical units 610(0)-610(B) may also include any number of memory cells.

記憶體管理電路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)中的每一者可被映射至一或多個實體單元。The memory management circuit 502 configures the logic units 612(0)-612(C) to map at least a portion of the physical units 610(0)-610(A) in the storage area 601. In the present exemplary embodiment, the host system 11 accesses the data in the storage area 601 through a logical address (LA). Therefore, each of the logical units 612(0) to 612(C) is Refers to a logical address. However, in another exemplary embodiment, each of the logic units 612(0)-612(C) may also refer to a logical stylized unit, a logical erase unit, or a plurality of consecutive or discontinuous The logical address is composed, depending on the actual needs. Moreover, each of logic units 612(0)-612(C) can be mapped to one or more physical units.

在本範例實施例中,記憶體管理電路502會將邏輯單元與實體單元之間的映射關係(亦稱為邏輯-實體映射關係)記錄於至少一邏輯-實體映射表。當主機系統11欲從記憶體儲存裝置10讀取資料或寫入資料至記憶體儲存裝置10時,記憶體管理電路502可根據此邏輯-實體映射表來執行對於記憶體儲存裝置10的資料存取。In the present exemplary embodiment, the memory management circuit 502 records the mapping relationship (also referred to as a logical-entity mapping relationship) between the logical unit and the physical unit in at least one logical-entity mapping table. When the host system 11 wants to read data from the memory storage device 10 or write data to the memory storage device 10, the memory management circuit 502 can perform data storage for the memory storage device 10 according to the logical-entity mapping table. take.

圖7是根據本發明的一範例實施例所繪示的讀取硬位元資訊之示意圖。本範例實施例是以SLC NAND型快閃記憶體為例,其中橫軸代表記憶胞的臨界電壓,而縱軸代表記憶胞個數。然而,在另一範例實施例中,圖7亦可以用來表示MLC NAND或TLC NAND型快閃記憶體中一部份的臨界電壓分布。FIG. 7 is a schematic diagram of reading hard bit information according to an exemplary embodiment of the invention. This exemplary embodiment is an example of a SLC NAND type flash memory in which the horizontal axis represents the threshold voltage of the memory cell and the vertical axis represents the number of memory cells. However, in another exemplary embodiment, FIG. 7 can also be used to represent a threshold voltage distribution of a portion of an MLC NAND or TLC NAND type flash memory.

請參照圖7,在程式化可複寫式非揮發性記憶體模組406中的多個記憶胞(以下亦稱為第一記憶胞)之後,被程式化的每一個記憶胞的臨界電壓會屬於分佈710與720的其中之一。例如,若某一個記憶胞被用來儲存位元“1”,則此記憶胞的臨界電壓會落在分佈710;而若某一個記憶胞被用來儲存位元“0”,則此記憶胞的臨界電壓會落在分佈720。Referring to FIG. 7, after a plurality of memory cells (hereinafter also referred to as first memory cells) in the programmable rewritable non-volatile memory module 406, the threshold voltage of each memory cell to be programmed belongs to One of the distributions 710 and 720. For example, if a memory cell is used to store the bit "1", the threshold voltage of the memory cell will fall in the distribution 710; and if a memory cell is used to store the bit "0", the memory cell The threshold voltage will fall on the distribution 720.

值得一提的是,在本範例實施例中,每一個記憶胞是用以儲存一個位元,故此些記憶胞的臨界電壓之分佈有兩種可能(例如,分佈710與720)。然而,在其他範例實施例中,若一個記憶胞是用以儲存多個位元,則對應的臨界電壓之分佈則可能有四種(例如,MLC NAND型快閃記憶體)、八種(例如,TLC NAND型快閃記憶體)或其他任意個可能。此外,本發明也不限制每一個分佈所代表的位元。例如,在圖7的另一範例實施例中,分佈710是代表位元“0”,並且分佈720是代表位元“1”。It is worth mentioning that in the present exemplary embodiment, each memory cell is used to store one bit, so there are two possibilities for the distribution of threshold voltages of such memory cells (for example, distributions 710 and 720). However, in other exemplary embodiments, if a memory cell is used to store a plurality of bits, there may be four corresponding threshold voltage distributions (for example, MLC NAND type flash memory) and eight types (for example, , TLC NAND type flash memory) or any other possibility. Moreover, the invention does not limit the bits represented by each of the distributions. For example, in another exemplary embodiment of FIG. 7, distribution 710 is representative of bit "0" and distribution 720 is representative of bit "1."

一般來說,若要讀取此些第一記憶胞所儲存的資料,記憶體管理電路502會發送一個讀取指令序列(以下亦稱為第一讀取指令序列)至可複寫式非揮發性記憶體模組406。此第一讀取指令序列用以指示基於一個電壓準位來從此些第一記憶胞的實體位址讀取資料。在一範例實施例中,此電壓準位亦稱為預設硬決策電壓準位。根據此讀取指令序列,可複寫式非揮發性記憶體模組406會施加一個讀取電壓(例如,電壓準位V H1)至第一記憶胞並且將所獲得的資料傳送給記憶體管理電路502。例如,電壓準位V H1即為預設硬決策電壓準位。若某一個記憶胞的臨界電壓小於所施予的電壓準位V H1(例如,臨界電壓屬於分布710的記憶胞),則記憶體管理電路502會讀到位元“1”;若某一個記憶胞的臨界電壓大於所施予的電壓準位V H1(例如,臨界電壓屬於分布720的記憶胞),則記憶體管理電路502會讀到位元“0”。 Generally, in order to read the data stored by the first memory cells, the memory management circuit 502 sends a read command sequence (hereinafter also referred to as a first read command sequence) to a rewritable non-volatile Memory module 406. The first sequence of read instructions is used to indicate that data is read from the physical addresses of the first memory cells based on a voltage level. In an exemplary embodiment, this voltage level is also referred to as a preset hard decision voltage level. In accordance with this reading instruction sequence, rewritable non-volatile memory module 406 will apply a read voltage (e.g., voltage level V H1) to the first memory cell and transmits the obtained data to the memory management circuitry 502. For example, the voltage level V H1 is the preset hard decision voltage level. If the threshold voltage of a certain memory cell is less than the applied voltage level V H1 (for example, the threshold voltage belongs to the memory cell of the distribution 710), the memory management circuit 502 reads the bit "1"; if a memory cell The threshold voltage is greater than the applied voltage level V H1 (eg, the threshold voltage belongs to the memory cell of the distribution 720), and the memory management circuit 502 reads the bit "0".

然而,隨著可複寫式非揮發性記憶體模組406的使用時間及/或損耗程度增加,可複寫式非揮發性記憶體模組406中的記憶胞可能會發生性能衰退(degradation)。例如,在屬於分佈710與720的記憶胞發生性能衰退後,分佈710與720可能會逐漸相互靠近甚至相互重疊。例如,圖7中的分佈711與721分別用來表示性能衰退後的分佈710與720。在發生性能衰退後,若持續使用此些第一記憶胞來儲存資料並使用相同的預設硬決策電壓準位(例如,電壓準位V H1)來讀取此些第一記憶胞,讀取到的資料可能會包含許多錯誤。以圖7中的分佈711與721為例,斜線區域內之記憶胞仍屬於分布711,但其臨界電壓已高於電壓準位V H1。因此,若持續使用電壓準位V H1來讀取此些第一記憶胞,部分實際上儲存位元“1”的記憶胞(例如,分布711中的斜線區域內的記憶胞)會被誤判為儲存位元“0”。 However, as the time and/or loss of usage of the rewritable non-volatile memory module 406 increases, memory cells in the rewritable non-volatile memory module 406 may experience degradation. For example, after the memory cells belonging to the distributions 710 and 720 have a performance degradation, the distributions 710 and 720 may gradually approach each other or even overlap each other. For example, distributions 711 and 721 in FIG. 7 are used to represent distributions 710 and 720 after performance degradation, respectively. After the performance degradation occurs, if the first memory cells are continuously used to store data and the same preset hard decision voltage level (for example, voltage level V H1 ) is used to read the first memory cells, read The information you arrive may contain many errors. Taking the distributions 711 and 721 in FIG. 7 as an example, the memory cells in the oblique line region still belong to the distribution 711, but the threshold voltage thereof is higher than the voltage level V H1 . Therefore, if the first memory cells are continuously read using the voltage level V H1 , some of the memory cells that actually store the bit "1" (for example, the memory cells in the oblique region in the distribution 711) are misjudged as The bit "0" is stored.

因此,在藉由預設硬決策電壓準位(例如,電壓準位V H1)讀取到資料之後,錯誤檢查與校正電路508會解碼此資料,以嘗試更正此資料中可能存在的錯誤。在此,藉由硬決策電壓準位所讀取之資料亦稱為硬位元資訊(例如,圖7的硬位元HB 1),並且解碼硬位元資訊之操作亦稱為硬解碼操作。本領域技術人員應當可以明瞭錯誤檢查與校正電路508如何使用低密度奇偶檢查碼等來執行硬解碼操作,以及錯誤檢查與校正電路508需要具備怎樣的硬體結構來完成所需執行的硬解碼操作。例如,硬解碼操作可能包含用於產生校驗子(syndrome)的奇偶(parity)檢查操作以及用於決定錯誤位元的位元翻轉(bit flipping)演算法、最小總合(min-sum)演算法及/或總和乘積(sum-product)演算法等。然後,錯誤檢查與校正電路508會判斷所執行的硬解碼操作是否成功(或失敗)。若此硬解碼操作成功(例如,資料中所有的錯誤皆被更正),錯誤檢查與校正電路508會輸出解碼成功的資料。若此硬解碼操作失敗(例如,資料中的錯誤無法被完全更正),錯誤檢查與校正電路508會進入軟解碼模式。 Therefore, after reading the data by presetting the hard decision voltage level (eg, voltage level V H1 ), the error checking and correction circuit 508 decodes the data to attempt to correct errors that may exist in the data. Here, the data read by the hard decision voltage level is also referred to as hard bit information (for example, the hard bit HB 1 of FIG. 7), and the operation of decoding the hard bit information is also referred to as a hard decoding operation. Those skilled in the art will appreciate how the error checking and correction circuit 508 can perform hard decoding operations using low density parity check codes or the like, and what hardware structure the error checking and correction circuit 508 needs to accomplish to perform the hard decoding operations required to perform. . For example, a hard decoding operation may include a parity check operation for generating a syndrome and a bit flipping algorithm for determining error bits, a minimum sum-sum calculation. Method and/or sum-product algorithm, etc. Error checking and correction circuit 508 then determines if the hard decoding operation performed was successful (or failed). If the hard decoding operation is successful (e.g., all errors in the data are corrected), the error checking and correction circuit 508 outputs the decoded data. If the hard decoding operation fails (e.g., the error in the material cannot be completely corrected), the error checking and correction circuit 508 enters the soft decoding mode.

在軟解碼模式中,記憶體管理電路502會發送另一讀取指令序列(以下亦稱為第二讀取指令序列),以指示基於多個電壓準位來從此些第一記憶胞中讀取資料。在一範例實施例中,此些電壓準位亦稱為預設軟決策電壓準位。例如,此些預設軟決策電壓準位會對應於在先前使用的預設硬決策電壓準位。根據第二讀取指令序列,可複寫式非揮發性記憶體模組406會依序將多個讀取電壓施加至此些第一記憶胞並將所獲得的資料回傳給記憶體管理電路502。In the soft decoding mode, the memory management circuit 502 transmits another read command sequence (hereinafter also referred to as a second read command sequence) to indicate reading from the first memory cells based on the plurality of voltage levels. data. In an exemplary embodiment, the voltage levels are also referred to as preset soft decision voltage levels. For example, such preset soft decision voltage levels may correspond to preset hard decision voltage levels previously used. According to the second read command sequence, the rewritable non-volatile memory module 406 sequentially applies a plurality of read voltages to the first memory cells and returns the obtained data to the memory management circuit 502.

圖8是根據本發明的一範例實施例所繪示的讀取軟位元資訊之示意圖。FIG. 8 is a schematic diagram of reading soft bit information according to an exemplary embodiment of the invention.

請參照圖8,接續於圖7的範例實施例,在軟解碼模式中,可複寫式非揮發性記憶體模組406會基於多個預設軟決策電壓準位(例如,電壓準位V S1~V S5)來依序地讀取此些第一記憶胞並回傳所獲得的資料。電壓準位V S1~V S5可以是依照任意順序被使用。在基於電壓準位V S1~V S5來讀取第一記憶胞中的某一者之後,若此記憶胞的臨界電壓小於電壓值最小的電壓準位V S4(即位於區域801),資料“11111”或“100”會被回傳;若此記憶胞的臨界電壓介於電壓準位V S4與電壓準位V S2之間(即位於區域802),資料“01111”或“101”會被回傳;若此記憶胞的臨界電壓介於電壓準位V S2與電壓準位V S1之間(即位於區域803),資料“00111”或“111”會被回傳;若此記憶胞的臨界電壓介於電壓準位V S1與電壓準位V S3之間(即位於區域804),資料“00011”或“011”會被回傳;若此記憶胞的臨界電壓介於電壓準位V S3與電壓準位V S5之間(即位於區域805),資料“00001”或“001”會被回傳;並且若此記憶胞的臨界電壓高於電壓值最高的電壓準位V S5(即位於區域806),資料“00000”或“000”會被回傳。 Referring to FIG. 8 , following the example embodiment of FIG. 7 , in the soft decoding mode, the rewritable non-volatile memory module 406 is based on a plurality of preset soft decision voltage levels (eg, voltage level V S1 ). ~V S5 ) to sequentially read the first memory cells and return the obtained data. The voltage levels V S1 ~V S5 can be used in any order. After reading the first memory cell to a certain person based on the voltage level V S1 ~ V S5, if this threshold voltage of the memory cell is less than the voltage value of the minimum voltage level V S4 (i.e., in the region of 801), data "11111" or "100" will be returned; if the threshold voltage of the memory cell is between the voltage level V S4 and the voltage level V S2 (ie located in the area 802), the data "01111" or "101" will be If the threshold voltage of the memory cell is between the voltage level V S2 and the voltage level V S1 (ie, located in the area 803), the data "00111" or "111" will be returned; if the memory cell The threshold voltage is between the voltage level V S1 and the voltage level V S3 (ie, located in the region 804), and the data "00011" or "011" is returned; if the threshold voltage of the memory cell is between the voltage level V Between S3 and the voltage level V S5 (ie, in the region 805), the data "00001" or "001" is returned; and if the threshold voltage of the memory cell is higher than the voltage level V S5 having the highest voltage value (ie, Located in area 806), the data "00000" or "000" will be returned.

在一範例實施例中,預設軟決策電壓準位中的某一者(例如,圖8中的電壓準位V S3)可能會等於或相近於預設硬決策電壓準位(例如,圖7中的電壓準位V H1)。任兩個相鄰的預設軟決策電壓準位之間的電壓差距可能是同一個預設值。此外,預設軟決策電壓準位之總數也可以更多(例如,7個或9個等)或更少(例如,3個)。 In an exemplary embodiment, one of the preset soft decision voltage levels (eg, voltage level V S3 in FIG. 8 ) may be equal to or close to a predetermined hard decision voltage level (eg, FIG. 7 ) The voltage level in V H1 ). The voltage difference between any two adjacent preset soft decision voltage levels may be the same preset value. In addition, the total number of preset soft decision voltage levels may also be more (eg, 7 or 9 etc.) or less (eg, 3).

在藉由預設軟決策電壓準位(例如,電壓準位V S1~V S5)讀取到資料之後,錯誤檢查與校正電路508會解碼此資料,以嘗試更正此資料中可能存在的錯誤。在此,藉由多個軟決策電壓準位所讀取之資料亦稱為軟位元資訊(例如,圖8中包含軟位元SB 1~SB 5的軟位元資訊831或將部分軟位元進行邏輯運算而產生的軟位元資訊832),並且解碼軟位元資訊之操作亦稱為軟解碼操作。本領域技術人員應當可以明瞭錯誤檢查與校正電路508如何使用低密度奇偶檢查碼等來執行軟解碼操作,以及錯誤檢查與校正電路508需要具備怎樣的硬體結構來完成所需執行的軟解碼操作。例如,軟解碼操作可能進一步包含更新對數相似性比值(log likelihood ratio, LLR)等通道資訊之操作。此外,軟解碼操作可能包含與硬解碼操作的至少一部分相同或相異的解碼操作。 After reading the data by preset soft decision voltage levels (eg, voltage levels V S1 ~V S5 ), error checking and correction circuit 508 decodes the data to attempt to correct possible errors in the data. Here, the data read by the plurality of soft decision voltage levels is also referred to as soft bit information (for example, the soft bit information 831 including the soft bits SB 1 to SB 5 in FIG. 8 or a partial soft bit) The soft bit information 832) generated by the logical operation of the element, and the operation of decoding the soft bit information is also referred to as a soft decoding operation. Those skilled in the art will appreciate how the error checking and correction circuit 508 can perform soft decoding operations using low density parity check codes or the like, and what hardware structure the error checking and correction circuit 508 needs to have to perform the soft decoding operations required to perform. . For example, the soft decoding operation may further include operations to update channel information such as log likelihood ratio (LRR). Moreover, the soft decoding operation may include decoding operations that are the same or different from at least a portion of the hard decoding operation.

特別是,相對於硬位元資訊,由於對應於每一個記憶胞的軟位元資訊可提供更多的通道資訊,軟解碼操作的錯誤更正能力往往會高於硬解碼操作的錯誤更正能力。然後,錯誤檢查與校正電路508會判斷所執行的軟解碼操作是否成功(或失敗)。若此軟解碼操作成功(例如,資料中所有的錯誤皆被更正),錯誤檢查與校正電路508會輸出解碼成功的資料。In particular, relative to the hard bit information, since the soft bit information corresponding to each memory cell can provide more channel information, the error correction capability of the soft decoding operation tends to be higher than the error correction capability of the hard decoding operation. Error checking and correction circuit 508 then determines if the executed soft decoding operation was successful (or failed). If the soft decoding operation is successful (e.g., all errors in the data are corrected), the error checking and correction circuit 508 outputs the decoded data.

若此軟解碼操作仍然失敗(例如,資料中的錯誤仍無法完全更正),記憶體管理電路502會發送多個測試指令序列以指示基於多個測試電壓群組來讀取第一記憶胞以獲得相應的軟位元資訊。每一個測試電壓群組包含多個測試電壓準位,且每一個測試電壓群組(或其中的測試電壓準位)皆對應於一個偏移值(offset value)。此偏移值例如是記錄於一查找表並且用於移動(shift)預設硬決策電壓準位(或預設軟決策電壓準位)來產生一個相應的測試電壓群組。此外,每一個測試電壓群組中的測試電壓準位之總數皆相同。If the soft decoding operation still fails (eg, the error in the data still cannot be completely corrected), the memory management circuit 502 sends a plurality of test instruction sequences to indicate that the first memory cell is read based on the plurality of test voltage groups. Corresponding soft bit information. Each test voltage group includes a plurality of test voltage levels, and each test voltage group (or test voltage level therein) corresponds to an offset value. This offset value is, for example, recorded in a lookup table and used to shift the preset hard decision voltage level (or preset soft decision voltage level) to generate a corresponding test voltage group. In addition, the total number of test voltage levels in each test voltage group is the same.

根據所獲得的軟位元資訊,記憶體管理電路502會獲得多個評估參數。每一個評估參數對應於第一記憶胞中符合一特定狀態條件之記憶胞的總數。根據此些評估參數,記憶體管理電路502會更新預設硬決策電壓準位。例如,在圖7的範例實施例中,根據此些評估參數,預設硬決策電壓準位可能會被從電壓準位V H1更新至電壓準位V H2。從圖7可以看出,基於電壓準位V H2所讀取之資料所包含的錯誤(例如,錯誤位元之總數)有相當高的機率會顯著地少於基於電壓準位V H1所讀取之資料所包含的錯誤。此外,將預設硬決策電壓準位從電壓準位V H1更新至電壓準位V H2之操作亦可視為追蹤(track)最佳讀取電壓準位之操作。此外,對應於更新預設硬決策電壓準位,預設軟決策電壓準位也可以被更新。例如,根據所獲得的多個評估參數,對應於某一個偏移值的測試電壓群組中的多個測試電壓準位可能會被設為新的預設軟決策電壓準位。 Based on the obtained soft bit information, the memory management circuit 502 obtains a plurality of evaluation parameters. Each evaluation parameter corresponds to the total number of memory cells in the first memory cell that meet a particular state condition. Based on such evaluation parameters, the memory management circuit 502 updates the preset hard decision voltage level. For example, in the exemplary embodiment of FIG. 7, according to such evaluation parameters, the preset hard decision voltage level may be updated from the voltage level V H1 to the voltage level V H2 . It can be seen from Fig. 7 that the error contained in the data read based on the voltage level V H2 (for example, the total number of error bits) has a relatively high probability that it is significantly less than that read based on the voltage level V H1 . The error contained in the data. In addition, the operation of updating the preset hard decision voltage level from the voltage level V H1 to the voltage level V H2 can also be regarded as an operation of tracking the optimal read voltage level. In addition, the preset soft decision voltage level can also be updated corresponding to updating the preset hard decision voltage level. For example, based on the plurality of evaluation parameters obtained, a plurality of test voltage levels in a test voltage group corresponding to an offset value may be set to a new preset soft decision voltage level.

圖9A至9C是根據本發明的一範例實施例所繪示的追蹤最佳讀取電壓準位的示意圖。9A-9C are schematic diagrams of tracking an optimal read voltage level, according to an exemplary embodiment of the invention.

請參照圖9A,在軟解碼操作失敗後,記憶體管理電路502會根據查找表獲得一個偏移值並根據此偏移值獲得屬於某一測試電壓群組的多個測試電壓準位(例如,電壓準位V C1_1~V C1_5)。相對於預設測試電壓準位(例如,電壓準位V S1~V S5),根據此偏移值所獲得的測試電壓準位(例如,電壓準位V C1_1~V C1_5)在橫軸上分別向右移+Δ。例如,電壓準位V C1_1~V C1_5相對於電壓準位V S1~V S5分別增加了Δ(mV)的電壓值。記憶體管理電路502會發送一個測試指令序列以指示基於電壓準位V C1_1~V C1_5來讀取第一記憶胞。然後,記憶體管理電路502會獲得相應的軟位元資訊931(或軟位元資訊932)。 Referring to FIG. 9A, after the soft decoding operation fails, the memory management circuit 502 obtains an offset value according to the lookup table and obtains a plurality of test voltage levels belonging to a certain test voltage group according to the offset value (for example, Voltage level V C1_1 ~V C1_5 ). Relative to the preset test voltage level (eg, voltage levels V S1 ~ V S5 ), the test voltage levels (eg, voltage levels V C1_1 ~ V C1_5 ) obtained from the offset values are respectively on the horizontal axis. Shift + Δ to the right. For example, the voltage levels V C1_1 VV C1_5 are increased by a voltage value of Δ(mV) with respect to the voltage levels V S1 VV S5 , respectively. The memory management circuit 502 sends a sequence of test instructions to indicate that the first memory cell is read based on the voltage levels V C1_1 ~ V C1_5 . The memory management circuit 502 then obtains the corresponding soft bit information 931 (or soft bit information 932).

根據軟位元資訊931(或軟位元資訊932),記憶體管理電路502會統計此些第一記憶胞中臨界電壓屬於一轉態(transition state)區域之記憶胞的總數。其中,此轉態區域包含電壓準位V C1_1~V C1_5中任兩者之間的區域。在本範例實施例中,轉態區域是指此測試電壓群組中電壓最大者(即電壓準位V C1_5)與電壓最小者(即電壓準位V C1_4)之間的區域R T1。或者,在另一範例實施例中,此轉態區域亦可以是指電壓準位V C1_2與V C1_3之間的區域R T1’。例如,記憶體管理電路502可統計對應於軟位元資訊“101”、“111”、“011”及“001”之記憶胞的總數來獲得臨界電壓屬於區域R T1之記憶胞的總數。或者,記憶體管理電路502也可以統計對應於軟位元資訊“111”與“011”之記憶胞的總數來獲得臨界電壓屬於區域R T1’之記憶胞的總數。然後,記憶體管理電路502會記錄下所計算之總數或一個對應值作為對應於此測試電壓群組(或偏移值+Δ)的評估參數。 Based on the soft bit information 931 (or soft bit information 932), the memory management circuit 502 counts the total number of memory cells in the first memory cell whose threshold voltage belongs to a transition state region. Wherein, the transition region includes a region between any two of the voltage levels V C1_1 VV C1_5 . In the present exemplary embodiment, the transition region refers to the region R T1 between the voltage of the test voltage group (ie, the voltage level V C1_5 ) and the voltage minimum (ie, the voltage level V C1_4 ). Alternatively, in another exemplary embodiment, the transition region may also refer to a region R T1 ' between the voltage levels V C1_2 and V C1_3 . For example, the memory management circuit 502 can count the total number of memory cells corresponding to the soft bit information "101", "111", "011", and "001" to obtain the total number of memory cells whose threshold voltage belongs to the region R T1 . Alternatively, the memory management circuit 502 may also count the total number of memory cells corresponding to the soft bit information "111" and "011" to obtain the total number of memory cells whose threshold voltage belongs to the region R T1 ' . The memory management circuit 502 then records the calculated total or a corresponding value as an evaluation parameter corresponding to the test voltage group (or offset value + Δ).

請參照圖9B,記憶體管理電路502會根據查找表獲得另一個偏移值並根據此偏移值獲得屬於某一測試電壓群組的多個測試電壓準位(例如,電壓準位V C2_1~V C2_5)。相對於電壓準位V S1~V S5,電壓準位V C2_1~V C2_5在橫軸上分別向右移+2Δ。例如,電壓準位V C2_1~V C2_5相對於電壓準位V S1~V S5分別增加了2Δ(mV)的電壓值。記憶體管理電路502會發送一個測試指令序列以指示基於電壓準位V C2_1~V C2_5來讀取第一記憶胞。然後,記憶體管理電路502會獲得相應的軟位元資訊941(或軟位元資訊942)。 Referring to FIG. 9B, the memory management circuit 502 obtains another offset value according to the lookup table and obtains a plurality of test voltage levels belonging to a certain test voltage group according to the offset value (for example, the voltage level V C2_1 ~ V C2_5 ). With respect to the voltage levels V S1 VV S5 , the voltage levels V C2_1 VV C2_5 are shifted to the right by +2 Δ on the horizontal axis. For example, the voltage levels V C2_1 VV C2_5 are increased by a voltage value of 2 Δ (mV) with respect to the voltage levels V S1 VV S5 , respectively. The memory management circuit 502 sends a sequence of test instructions to indicate that the first memory cell is read based on the voltage levels V C2_1 ~ V C2_5 . The memory management circuit 502 then obtains the corresponding soft bit information 941 (or soft bit information 942).

根據軟位元資訊941(或軟位元資訊942),記憶體管理電路502會統計此些第一記憶胞中臨界電壓屬於一轉態區域之記憶胞的總數。其中,此轉態區域包含電壓準位V C2_1~V C2_5中任兩者之間的區域。在本範例實施例中,記憶體管理電路502會統計對應於軟位元資訊“101”、“111”、“011”及“001”之記憶胞的總數來獲得臨界電壓屬於區域R T2(即電壓準位V C2_4與V C2_5之間)的記憶胞之總數。或者,在另一範例實施例中,記憶體管理電路502會統計對應於軟位元資訊“111”與“011”之記憶胞的總數來獲得臨界電壓落於電壓準位V C2_2與V C2_3之間的記憶胞之總數。然後,記憶體管理電路502會記錄下所計算之總數或一個對應值作為對應於此測試電壓群組(或偏移值+2Δ)的評估參數。 Based on the soft bit information 941 (or soft bit information 942), the memory management circuit 502 counts the total number of memory cells in the first memory cell whose threshold voltage belongs to a transition region. Wherein, the transition region includes a region between any two of the voltage levels V C2_1 ~ V C2_5 . In the present exemplary embodiment, the memory management circuit 502 counts the total number of memory cells corresponding to the soft bit information "101", "111", "011", and "001" to obtain the threshold voltage belonging to the region R T2 (ie, The total number of memory cells between voltage levels V C2_4 and V C2_5 ). Alternatively, in another exemplary embodiment, the memory management circuit 502 counts the total number of memory cells corresponding to the soft bit information "111" and "011" to obtain a threshold voltage falling at the voltage levels V C2_2 and V C2_3 . The total number of memory cells between. The memory management circuit 502 then records the calculated total or a corresponding value as an evaluation parameter corresponding to the test voltage group (or offset value +2 Δ).

請參照圖9C,記憶體管理電路502還可以根據查找表獲得另一個偏移值並根據此偏移值獲得屬於某一測試電壓群組的多個測試電壓準位(例如,電壓準位V C3_1~V C3_5)。相對於電壓準位V S1~V S5,電壓準位V C3_1~V C3_5在橫軸上分別向右移+3Δ。例如,電壓準位V C3_1~V C3_5相對於電壓準位V S1~V S5分別增加了3Δ(mV)的電壓值。記憶體管理電路502會發送一個測試指令序列以指示基於電壓準位V C3_1~V C3_5來讀取第一記憶胞並且獲得相應的軟位元資訊951(或軟位元資訊952)。 Referring to FIG. 9C, the memory management circuit 502 can further obtain another offset value according to the lookup table and obtain a plurality of test voltage levels belonging to a certain test voltage group according to the offset value (for example, the voltage level V C3_1 ~V C3_5 ). With respect to the voltage levels V S1 VV S5 , the voltage levels V C3_1 VV C3_5 are shifted to the right by +3 Δ on the horizontal axis. For example, the voltage levels V C3_1 VV C3_5 are increased by a voltage value of 3 Δ (mV) with respect to the voltage levels V S1 VV S5 , respectively. The memory management circuit 502 sends a sequence of test instructions to indicate that the first memory cell is read based on the voltage levels V C3_1 ~ V C3_5 and the corresponding soft bit information 951 (or soft bit information 952) is obtained.

根據軟位元資訊951(或軟位元資訊952),記憶體管理電路502會再次統計此些第一記憶胞中臨界電壓屬於一轉態區域之記憶胞的總數。其中,此轉態區域包含電壓準位V C3_1~V C3_5中任兩者之間的區域。在本範例實施例中,記憶體管理電路502會統計對應於軟位元資訊“101”、“111”、“011”及“001”之記憶胞的總數來獲得臨界電壓屬於區域R T3(即電壓準位V C3_4與V C3_5之間的區域)的記憶胞之總數。或者,在另一範例實施例中,記憶體管理電路502會統計對應於軟位元資訊“111”與“011”之記憶胞的總數來獲得臨界電壓落於電壓準位V C3_2與V C3_3之間的記憶胞之總數。然後,記憶體管理電路502會記錄下所計算之總數或一個對應值作為對應於此測試電壓群組(或偏移值+3Δ)的評估參數。依此類推,對應於更多的測試電壓群組(或偏移值+4Δ、-Δ、-2Δ等等),更多的評估參數亦可被決定。 Based on the soft bit information 951 (or soft bit information 952), the memory management circuit 502 again counts the total number of memory cells in the first memory cell whose threshold voltage belongs to a transition region. Wherein, the transition region includes a region between any two of the voltage levels V C3_1 VV C3_5 . In the present exemplary embodiment, the memory management circuit 502 counts the total number of memory cells corresponding to the soft bit information "101", "111", "011", and "001" to obtain the threshold voltage belonging to the region R T3 (ie, the total number of memory cells of the region between the voltage level V C3_4 V C3_5) a. Alternatively, in another exemplary embodiment, the memory management circuit 502 counts the total number of memory cells corresponding to the soft bit information "111" and "011" to obtain a threshold voltage falling at the voltage levels V C3_2 and V C3_3 . The total number of memory cells between. The memory management circuit 502 then records the calculated total or a corresponding value as an evaluation parameter corresponding to the test voltage group (or offset value +3 Δ). And so on, corresponding to more test voltage groups (or offset values +4 Δ, -Δ, -2 Δ, etc.), more evaluation parameters can also be determined.

記憶體管理電路502會根據所獲得的評估參數之間的數值關係來更新預設硬決策電壓準位。例如,若評估參數的值正相關於相應之總數,記憶體管理電路502會比較所獲得的多個評估參數並且選擇此些評估參數中的最小者所對應的偏移值。然後,記憶體管理電路502會根據所選定的偏移值來更新預設硬決策電壓準位。The memory management circuit 502 updates the preset hard decision voltage level based on the numerical relationship between the obtained evaluation parameters. For example, if the values of the evaluation parameters are positively correlated to the respective totals, the memory management circuit 502 compares the plurality of evaluation parameters obtained and selects the offset values corresponding to the smallest of the evaluation parameters. The memory management circuit 502 then updates the preset hard decision voltage level based on the selected offset value.

圖10A是根據本發明的一範例實施例所繪示的記憶胞數目與偏移值之對應關係的示意圖。FIG. 10A is a schematic diagram showing the correspondence between the number of memory cells and an offset value according to an exemplary embodiment of the invention.

請參照圖10A,在圖7至圖9C的範例實施例中,臨界電壓屬於轉態區域R T1的記憶胞之總數為N 1,臨界電壓屬於轉態區域R T2的記憶胞之總數為N 2,並且臨界電壓屬於轉態區域R T3的記憶胞之總數為N 3。N 1對應於偏移值+Δ,N 2對應於偏移值+2Δ,並且N 3對應於偏移值+3Δ。根據圖9A、圖9B及圖9C可知,N 1會大於N 2,並且N 2會大於N 3。因此,記憶體管理電路502可以將電壓準位V H1加上3Δ而獲得電壓準位V H2。此外,在一範例實施例中,記憶體管理電路502亦可以直接將電壓準位V C3_1設為電壓準位V H2Referring to FIG. 10A, in the exemplary embodiment of FIG. 7 to FIG. 9C, the total number of memory cells whose threshold voltage belongs to the transition region R T1 is N 1 , and the total number of memory cells whose threshold voltage belongs to the transition region R T2 is N 2 . And the total number of memory cells whose threshold voltage belongs to the transition region R T3 is N 3 . N 1 corresponds to the offset value + Δ, N 2 corresponds to the offset value + 2 Δ, and N 3 corresponds to the offset value + 3 Δ. 9A, 9B, and 9C, N 1 will be greater than N 2 and N 2 will be greater than N 3 . Thus, the memory management circuit 502 may be voltage level V H1 plus 3Δ obtained voltage level V H2. In addition, in an exemplary embodiment, the memory management circuit 502 can also directly set the voltage level V C3_1 to the voltage level V H2 .

在一範例實施例中,記憶體管理電路502亦可以統計第一記憶胞中臨界電壓屬於穩態(stable state)區域之記憶胞的總數。其中,此穩態區域包含某一測試電壓群組中電壓最大者與電壓最小者之間的區域之外的區域。特別是,在同一個測試電壓群組中的測試電壓準位所劃分的多個區域中,穩態區域與轉態區域不重疊。例如,在圖9A的一範例實施例中,穩態區域是指區域R T1之外的區域R S1。或者,在圖9A的另一範例實施例中,穩態區域是指區域R T1’之外的區域R S1’。此外,在圖9A的另一範例實施例中,同一測試電壓群組所劃分的轉態區域與穩態區域亦可以分別是區域R T1’與區域R S1。其中,區域R T1’與其左右的區域R S1之間分別具有一個間隙(gap)而並非是連續的。記憶體管理電路502可以統計臨界電壓屬於區域R S1(或者區域R S1’)之記憶胞的總數並決定相應的評估參數。例如,在圖9B的一範例實施例中,穩態區域是指區域R T2之外的區域R S2。記憶體管理電路502可以統計臨界電壓屬於區域R S2之記憶胞的總數並決定相應的評估參數。例如,在圖9C的一範例實施例中,穩態區域是指區域R T3之外的區域R S3。記憶體管理電路502可以統計臨界電壓屬於區域R S3之記憶胞的總數並決定相應的評估參數。然後,記憶體管理電路502可以根據此些評估參數之間的數值關係來更新預設硬決策電壓準位。例如,若評估參數的值正相關於相應之總數,記憶體管理電路502會比較所獲得的多個評估參數並且選擇此些評估參數中的最大者所對應的偏移值。然後,記憶體管理電路502會根據所選定的偏移值來更新預設硬決策電壓準位。此外,圖9A的區域劃分方式亦可以應用至圖9B與圖9C,本發明不加以限制。 In an exemplary embodiment, the memory management circuit 502 can also count the total number of memory cells in the first memory cell whose threshold voltage belongs to a stable state region. Wherein, the steady state region includes an area outside the region between the largest voltage group and the lowest voltage group in a certain test voltage group. In particular, in a plurality of regions divided by test voltage levels in the same test voltage group, the steady state region does not overlap with the transition region. For example, in an exemplary embodiment of FIG. 9A, the steady state region refers to a region R S1 other than region R T1 . Alternatively, in another exemplary embodiment of FIG. 9A, the steady state region refers to a region R S1 ' other than the region R T1 . In addition, in another exemplary embodiment of FIG. 9A, the transition region and the steady state region divided by the same test voltage group may also be the region R T1 ′ and the region R S1 , respectively . Therein, there is a gap between the region R T1′ and its left and right regions R S1 , respectively, rather than being continuous. The memory management circuit 502 can count the total number of memory cells whose threshold voltage belongs to the region R S1 (or the region R S1 ' ) and determine the corresponding evaluation parameters. For example, in an exemplary embodiment of FIG. 9B, the steady state region refers to region R S2 other than region R T2 . The memory management circuit 502 can count the total number of memory cells whose threshold voltage belongs to the region R S2 and determine the corresponding evaluation parameters. For example, in an exemplary embodiment of FIG. 9C, the steady state region refers to region R S3 other than region R T3 . The memory management circuit 502 can count the total number of memory cells whose threshold voltage belongs to the region R S3 and determine the corresponding evaluation parameters. The memory management circuit 502 can then update the preset hard decision voltage level based on the numerical relationship between the evaluation parameters. For example, if the values of the evaluation parameters are positively correlated with the respective totals, the memory management circuit 502 compares the obtained plurality of evaluation parameters and selects an offset value corresponding to the largest of the evaluation parameters. The memory management circuit 502 then updates the preset hard decision voltage level based on the selected offset value. In addition, the area division manner of FIG. 9A can also be applied to FIGS. 9B and 9C, and the present invention is not limited thereto.

圖10B是根據本發明的另一範例實施例所繪示的記憶胞數目與偏移值之對應關係的示意圖。FIG. 10B is a schematic diagram showing the correspondence between the number of memory cells and an offset value according to another exemplary embodiment of the present invention.

請參照圖10B,在圖7至圖9C的另一範例實施例中,臨界電壓屬於穩態區域R S1的記憶胞之總數為N 1’,臨界電壓屬於穩態區域R S2的記憶胞之總數為N 2’,並且臨界電壓屬於穩態區域R S3的記憶胞之總數為N 3’。N 1’對應於偏移值+Δ,N 2’對應於偏移值+2Δ,並且N 3’對應於偏移值+3Δ。由於N 1’負相關於N 1,N 2’負相關於N 2,並且N 3’負相關於N 3,故N 3’會大於N 2’,並且N 2’會大於N 1’。因此,記憶體管理電路502同樣可將電壓準位V H1加上3Δ而獲得電壓準位V H2Referring to FIG. 10B, in another exemplary embodiment of FIG. 7 to FIG. 9C, the total number of memory cells whose threshold voltage belongs to the steady-state region R S1 is N 1 ′ , and the threshold voltage belongs to the total number of memory cells of the steady-state region R S2 . The total number of memory cells that are N 2 ' and whose threshold voltage belongs to the steady-state region R S3 is N 3 ' . N 1 ' corresponds to the offset value + Δ, N 2 ' corresponds to the offset value + 2 Δ, and N 3 ' corresponds to the offset value + 3 Δ. Since N 1 ' is negatively related to N 1 , N 2 ' is negatively related to N 2 , and N 3 ' is negatively related to N 3 , N 3 ' is greater than N 2 ' and N 2 ' is greater than N 1 ' . Thus, the memory management circuit 502 may be the same voltage level V H1 plus 3Δ obtained voltage level V H2.

在更新預設硬決策電壓準位之後,記憶體管理電路502會發送一讀取指令序列以指示基於更新後的預設硬決策電壓準位來讀取第一記憶胞以獲得相應的硬位元資訊。例如,請再次參照圖7,可複寫式非揮發性記憶體模組406會基於電壓準位V H2來讀取第一記憶胞並回傳包含硬位元HB 2的硬位元資訊。相較於基於電壓準位V H1所讀取的硬位元資訊,基於電壓準位V H2所讀取的硬位元資訊中的錯誤可顯著地減少。然後,錯誤檢查與校正電路508會對此硬位元資訊執行硬解碼操作並判斷是否解碼成功。若解碼成功,錯誤檢查與校正電路508會輸出解碼成功的資料。若解碼失敗,錯誤檢查與校正電路508會再次進入軟解碼模式。 After updating the preset hard decision voltage level, the memory management circuit 502 sends a read command sequence to instruct to read the first memory cell based on the updated preset hard decision voltage level to obtain the corresponding hard bit. News. For example, referring again to FIG. 7, the rewritable non-volatile memory module 406 reads the first memory cell based on the voltage level V H2 and returns the hard bit information including the hard bit HB 2 . The error in the hard bit information read based on the voltage level V H2 can be significantly reduced compared to the hard bit information read based on the voltage level V H1 . The error checking and correction circuit 508 then performs a hard decoding operation on the hard bit information and determines whether the decoding was successful. If the decoding is successful, the error checking and correction circuit 508 outputs the decoded data. If the decoding fails, the error checking and correction circuit 508 will enter the soft decoding mode again.

在軟解碼模式中,記憶體管理電路502會發送一讀取指令序列以指示基於更新後的多個預設軟決策電壓準位來讀取第一記憶胞以獲得相應的軟位元資訊。例如,在圖9A至圖9C的範例實施例中,更新後的預設軟決策電壓準位可能會包含圖9C中的電壓準位V C3_1~V C3_5中的全部或至少一者。可複寫式非揮發性記憶體模組406會基於更新後的多個預設軟決策電壓準位來讀取第一記憶胞並回傳相應的軟位元資訊。然後,錯誤檢查與校正電路508會對此軟位元資訊執行軟解碼操作並判斷是否解碼成功。若此軟解碼操作成功,錯誤檢查與校正電路508會輸出解碼成功的資料。若此軟解碼操作失敗,錯誤檢查與校正電路508會判定解碼失敗。 In the soft decoding mode, the memory management circuit 502 sends a read command sequence to instruct to read the first memory cell based on the updated plurality of preset soft decision voltage levels to obtain corresponding soft bit information. For example, in the exemplary embodiment of FIGS. 9A-9C, the updated preset soft decision voltage level may include all or at least one of the voltage levels V C3_1 VV C3_5 in FIG. 9C. The rewritable non-volatile memory module 406 reads the first memory cell and returns the corresponding soft bit information based on the updated plurality of preset soft decision voltage levels. Error checking and correction circuit 508 then performs a soft decoding operation on this soft bit information and determines if the decoding was successful. If the soft decoding operation is successful, the error checking and correction circuit 508 outputs the decoded data. If the soft decoding operation fails, the error checking and correction circuit 508 determines that the decoding has failed.

圖11是根據本發明的一範例實施例所繪示的轉態區域與穩態區域的示意圖。FIG. 11 is a schematic diagram of a transition region and a steady state region according to an exemplary embodiment of the invention.

請參照圖11,對於TLC NAND型快閃記憶體來說,第一記憶胞的臨界電壓分布可能會包含分布1101~1108。屬於分布1101~1108的記憶胞分別用以儲存位元組“111”、“011”、“001”、“000”、“010”、“110”、“100”及“101”。對於包含此些記憶胞的下實體程式化單元1110(即被視為儲存位元組中的第一個位元的實體單元)來說,轉態區域包括區域R T11與R T12,而穩態區域則包括區域R S11與R S12。對於包含此些記憶胞的上實體程式化單元1120(即被視為儲存位元組中的第二個位元的實體單元)來說,轉態區域包括區域R T13、R T14及R T15,而穩態區域則包括區域R S13、R S14及R S15。對於包含此些記憶胞的額外(extra)實體程式化單元1130(即被視為儲存位元組中的第三個位元的實體單元)來說,轉態區域包括區域R T16與R T17,而穩態區域則包括區域R S16與R S17Referring to FIG. 11, for the TLC NAND type flash memory, the threshold voltage distribution of the first memory cell may include the distributions 1101 to 1108. The memory cells belonging to the distributions 1101 to 1108 are used to store the bytes "111", "011", "001", "000", "010", "110", "100", and "101", respectively. For the lower entity stylized unit 1110 containing such memory cells (ie, the physical unit considered to be the first bit in the stored byte), the transition region includes regions R T11 and R T12 , and the steady state The area includes areas R S11 and R S12 . For the upper physical stylization unit 1120 (ie, the physical unit considered to be the second bit in the storage byte) including the memory cells, the transition region includes regions R T13 , R T14 , and R T15 . The steady state region includes regions R S13 , R S14 , and R S15 . For an extra entity stylization unit 1130 (ie, a physical unit considered to be the third bit in the storage byte) containing such memory cells, the transition region includes regions R T16 and R T17 , The steady state region includes regions R S16 and R S17 .

在圖11的範例實施例中,每一個轉態區域(例如,區域R T11)與相應的穩態區域(例如,區域R S11)皆可能具有臨界電壓的上限與下限。值得一提的是,圖7至圖9C中的分布711與721亦可以視為是圖11中任意兩個相鄰的分布(例如,分布1101與1102或者1102與1103等等)。另外,由於每一個轉態區域與相應的穩態區域都是基於所施予的測試電壓準位而劃分的,根據不同的測試電壓群組,圖11中劃分的各個轉態區域與相應的穩態區域可能會向左移動、向右移動、變寬或變窄等等。此外,根據圖11的範例實施例中,本領域的通常知識者也可以明瞭如何在其他類型的快閃記憶體(例如,MLC NAND型快閃記憶體)的臨界電壓分布中基於特定的測試電壓群組劃分相應的轉態區域與穩態區域,在此便不贅述。 In the exemplary embodiment of FIG. 11, each of the transition regions (eg, region R T11 ) and the corresponding steady state region (eg, region R S11 ) may have upper and lower limits of the threshold voltage. It is worth mentioning that the distributions 711 and 721 in FIGS. 7 to 9C can also be regarded as any two adjacent distributions in FIG. 11 (for example, distributions 1101 and 1102 or 1102 and 1103, etc.). In addition, since each transition region and the corresponding steady-state region are divided based on the applied test voltage level, according to different test voltage groups, each transition region divided in FIG. 11 and corresponding stable The state area may move to the left, move to the right, widen or narrow, and so on. Moreover, in accordance with the exemplary embodiment of FIG. 11, those of ordinary skill in the art will also be aware of how to base a particular test voltage in the threshold voltage distribution of other types of flash memory (eg, MLC NAND type flash memory). The group divides the corresponding transition region and steady state region, and will not be described here.

圖12是根據本發明的一範例實施例所繪示的解碼方法的流程圖。FIG. 12 is a flowchart of a decoding method according to an exemplary embodiment of the present invention.

請參照圖12,在步驟S1201中,基於一預設硬決策電壓準位讀取多個第一記憶胞以獲得硬位元資訊並對硬位元資訊執行硬解碼操作。在步驟S1202中,判斷硬解碼操作是否成功(或失敗)。若硬解碼操作成功,在步驟S1203中,輸出解碼成功的碼字。若硬解碼操作失敗,在步驟S1204中,基於多個預設軟決策電壓準位讀取第一記憶胞以獲得軟位元資訊並對軟位元資訊執行軟解碼操作。在步驟S1205中,判斷軟解碼操作是否成功(或失敗)。若軟解碼操作成功,在步驟S1203中,輸出解碼成功的碼字。若軟解碼操作失敗,在步驟S1206中,基於多個第一測試電壓準位讀取第一記憶胞以獲得第一軟位元資訊並基於多個第二測試電壓準位讀取第一記憶胞以獲得第二軟位元資訊。在步驟S1207中,根據第一軟位元資訊獲得第一評估參數並根據第二軟位元資訊獲得第二評估參數。在步驟S1208中,根據第一評估參數與第二評估參數更新預設硬決策電壓準位。Referring to FIG. 12, in step S1201, a plurality of first memory cells are read based on a preset hard decision voltage level to obtain hard bit information and perform a hard decoding operation on the hard bit information. In step S1202, it is determined whether the hard decoding operation is successful (or failed). If the hard decoding operation is successful, in step S1203, the decoded codeword is output. If the hard decoding operation fails, in step S1204, the first memory cell is read based on the plurality of preset soft decision voltage levels to obtain soft bit information and perform soft decoding operation on the soft bit information. In step S1205, it is determined whether the soft decoding operation is successful (or failed). If the soft decoding operation is successful, in step S1203, the decoded codeword is output. If the soft decoding operation fails, in step S1206, the first memory cell is read based on the plurality of first test voltage levels to obtain the first soft bit information, and the first memory cell is read based on the plurality of second test voltage levels. Obtain the second soft bit information. In step S1207, a first evaluation parameter is obtained according to the first soft bit information and a second evaluation parameter is obtained according to the second soft bit information. In step S1208, the preset hard decision voltage level is updated according to the first evaluation parameter and the second evaluation parameter.

圖13是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。FIG. 13 is a flowchart of a decoding method according to another exemplary embodiment of the present invention.

請參照圖13,在步驟S1301中,基於一預設硬決策電壓準位讀取多個第一記憶胞以獲得硬位元資訊並對硬位元資訊執行硬解碼操作。在步驟S1302中,判斷硬解碼操作是否成功(或失敗)。若硬解碼操作成功,在步驟S1303中,輸出解碼成功的碼字。若硬解碼操作失敗,在步驟S1304中,基於多個預設軟決策電壓準位讀取第一記憶胞以獲得軟位元資訊並對軟位元資訊執行軟解碼操作。在步驟S1305中,判斷軟解碼操作是否成功(或失敗)。若軟解碼操作成功,在步驟S1303中,輸出解碼成功的碼字。若軟解碼操作失敗,在步驟S1306中,判斷是否還有未檢查的偏移值。若還有未檢查的偏移值,在步驟S1307中,基於多個測試電壓準位讀取第一記憶胞以獲得軟位元資訊。例如,此些測試電壓準位是對應於某一個被選定來檢查的偏移值。Referring to FIG. 13, in step S1301, a plurality of first memory cells are read based on a preset hard decision voltage level to obtain hard bit information and perform a hard decoding operation on the hard bit information. In step S1302, it is determined whether the hard decoding operation is successful (or failed). If the hard decoding operation is successful, in step S1303, the decoded codeword is output. If the hard decoding operation fails, in step S1304, the first memory cell is read based on the plurality of preset soft decision voltage levels to obtain soft bit information and perform soft decoding operation on the soft bit information. In step S1305, it is determined whether the soft decoding operation is successful (or failed). If the soft decoding operation is successful, in step S1303, the decoded codeword is output. If the soft decoding operation fails, it is determined in step S1306 whether there is an unchecked offset value. If there is still an unchecked offset value, in step S1307, the first memory cell is read based on a plurality of test voltage levels to obtain soft bit information. For example, such test voltage levels are corresponding to an offset value selected to be checked.

在步驟S1308中,根據步驟S1307中獲得的軟位元資訊獲得一評估參數。在步驟S1309中,判斷步驟S1308中獲得的評估參數是否優於一預設評估參數。例如,若評估參數的值正相關於臨界電壓屬於一轉態區域之記憶胞的總數,且所獲得的評估參數小於預設評估參數,步驟S1309可判定為是並且進入步驟S1310以將所獲得的評估參數設定為預設評估參數。反之,若評估參數的值正相關於臨界電壓屬於轉態區域之記憶胞的總數,且所獲得的評估參數大於預設評估參數,步驟S1309可判定為否並且回到步驟S1306。回到步驟S1306之後,下一個偏移值可被檢查(例如,根據下一個偏移值決定多個測試電壓準位)。值得一提的是,若步驟S1307是第一次執行(即尚未設定過預設評估參數),步驟S1308獲得的評估參數會被直接在步驟S1310中被設定為預設評估參數。In step S1308, an evaluation parameter is obtained based on the soft bit information obtained in step S1307. In step S1309, it is determined whether the evaluation parameter obtained in step S1308 is better than a predetermined evaluation parameter. For example, if the value of the evaluation parameter is positively correlated with the total number of memory cells whose threshold voltage belongs to a transition region, and the obtained evaluation parameter is smaller than the preset evaluation parameter, step S1309 may determine YES and proceed to step S1310 to obtain the obtained The evaluation parameters are set to preset evaluation parameters. On the other hand, if the value of the evaluation parameter is positively correlated with the total number of memory cells whose threshold voltage belongs to the transition region, and the obtained evaluation parameter is greater than the preset evaluation parameter, step S1309 may determine NO and return to step S1306. Returning to step S1306, the next offset value can be checked (eg, a plurality of test voltage levels are determined based on the next offset value). It is worth mentioning that if the step S1307 is the first execution (that is, the preset evaluation parameters have not been set), the evaluation parameters obtained in step S1308 are directly set as the preset evaluation parameters in step S1310.

在步驟S1311中,根據預設評估參數更新預設硬決策電壓準位。例如,根據對應於此預設評估參數的偏移值將預設硬決策電壓準位設定為最佳讀取電壓準位。然後,步驟S1301等會被重複執行,在此便不贅述。此外,在檢查更多的偏移值之後,若再次執行到步驟S1306時,所有的偏移值都已經被檢查過了(即對應於每一個可用之偏移值的評估參數皆已被獲得),在步驟S1306中,判定解碼失敗。例如,若錯誤檢查與校正電路508判定解碼失敗,記憶體管理電路502會發送一個讀取錯誤的訊息給主機系統11。In step S1311, the preset hard decision voltage level is updated according to the preset evaluation parameter. For example, the preset hard decision voltage level is set to the optimal read voltage level according to the offset value corresponding to the preset evaluation parameter. Then, step S1301 and the like are repeatedly executed, and will not be described here. In addition, after checking for more offset values, if the process proceeds to step S1306 again, all the offset values have been checked (ie, the evaluation parameters corresponding to each of the available offset values have been obtained). In step S1306, it is determined that the decoding has failed. For example, if the error checking and correction circuit 508 determines that the decoding has failed, the memory management circuit 502 sends a read error message to the host system 11.

圖14是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。FIG. 14 is a flowchart of a decoding method according to another exemplary embodiment of the present invention.

請參照圖14,在步驟S1401中,基於一預設硬決策電壓準位讀取多個第一記憶胞以獲得硬位元資訊並對硬位元資訊執行硬解碼操作。在步驟S1402中,判斷硬解碼操作是否成功(或失敗)。若硬解碼操作成功,在步驟S1403中,輸出解碼成功的碼字。若硬解碼操作失敗,在步驟S1404中,基於多個預設軟決策電壓準位讀取第一記憶胞以獲得軟位元資訊並對軟位元資訊執行軟解碼操作。在步驟S1405中,判斷軟解碼操作是否成功(或失敗)。若軟解碼操作成功,在步驟S1403中,輸出解碼成功的碼字。若軟解碼操作失敗,在步驟S1406中,判斷是否已找到最佳讀取電壓準位。若否,在步驟S1407中,判斷是否還有未檢查的偏移值。Referring to FIG. 14, in step S1401, a plurality of first memory cells are read based on a preset hard decision voltage level to obtain hard bit information and a hard decoding operation is performed on the hard bit information. In step S1402, it is determined whether the hard decoding operation is successful (or failed). If the hard decoding operation is successful, in step S1403, the decoded codeword is output. If the hard decoding operation fails, in step S1404, the first memory cell is read based on the plurality of preset soft decision voltage levels to obtain soft bit information and perform soft decoding operation on the soft bit information. In step S1405, it is determined whether the soft decoding operation is successful (or failed). If the soft decoding operation is successful, in step S1403, the decoded codeword is output. If the soft decoding operation fails, it is determined in step S1406 whether the optimum read voltage level has been found. If not, in step S1407, it is determined whether or not there is an unchecked offset value.

若還有未檢查的偏移值,在步驟S1408中,基於多個測試電壓準位讀取第一記憶胞以獲得軟位元資訊。例如,此些測試電壓準位是對應於某一個被選定來檢查的偏移值。在步驟S1409中,根據步驟S1408中獲得的軟位元資訊獲得一評估參數並且回到步驟S1407中再次檢查是否有未檢查的偏移值。若是,步驟S1408與S1409會被重複執行。若在步驟S1407中判定所有的偏移值皆已被檢查(即對應於每一個可用之偏移值的評估參數皆已被獲得),在步驟S1410中,根據所獲得的多個評估參數來更新預設硬決策電壓準位。例如,可根據此些評估參數之間的數值關係來選擇一個偏移值,並根據此偏移值來設定最佳讀取電壓準位。關於根據多個評估參數之間的數值關係來選擇偏移值與設定最佳讀取電壓準位之操作已詳述於上,在此便不贅述。在步驟S1410之後,步驟S1401等會被重複執行。此外,若再次執行到步驟S1406時,由於最佳讀取電壓準位已經在重覆執行的步驟S1401中被使用,步驟S1411會被執行以判定解碼失敗。If there is still an unchecked offset value, in step S1408, the first memory cell is read based on the plurality of test voltage levels to obtain soft bit information. For example, such test voltage levels are corresponding to an offset value selected to be checked. In step S1409, an evaluation parameter is obtained based on the soft bit information obtained in step S1408 and returns to step S1407 to check again whether there is an unchecked offset value. If so, steps S1408 and S1409 are repeatedly executed. If it is determined in step S1407 that all the offset values have been checked (ie, the evaluation parameters corresponding to each of the available offset values have been obtained), in step S1410, the updated plurality of evaluation parameters are updated. Preset hard decision voltage levels. For example, an offset value can be selected based on the numerical relationship between the evaluation parameters, and an optimal read voltage level can be set according to the offset value. The operation of selecting the offset value and setting the optimum read voltage level based on the numerical relationship between the plurality of evaluation parameters has been described in detail above, and will not be described herein. After step S1410, step S1401 and the like are repeatedly executed. Further, if it is executed again to step S1406, since the optimum read voltage level has been used in step S1401 of repeated execution, step S1411 is executed to determine that the decoding has failed.

然而,圖12至圖14中各步驟已詳細說明如上,在此便不再贅述。值得注意的是,圖12至圖14中各步驟可以實作為多個程式碼或是電路,本發明不加以限制。此外,圖12至圖14的方法可以搭配以上範例實施例使用,也可以單獨使用,本發明不加以限制。However, the steps in FIGS. 12 to 14 have been described in detail above, and will not be described again herein. It should be noted that the steps in FIG. 12 to FIG. 14 can be implemented as a plurality of codes or circuits, and the present invention is not limited thereto. In addition, the methods of FIG. 12 to FIG. 14 may be used in combination with the above exemplary embodiments, or may be used alone, and the invention is not limited thereto.

綜上所述,在軟解碼程序失敗之後,至少兩組的測試電壓準位會被用來讀取相同的記憶胞。然後,相應的多個評估參數會被獲得,其中每一個評估參數對應於記憶胞中符合特定狀態條件之記憶胞的總數。根據此些評估參數,預設硬決策電壓準位即可被更新。藉此,可提升在解碼操作中尋找最佳讀取電壓準位之效率,進而提升解碼效率。In summary, after the soft decoding process fails, at least two sets of test voltage levels are used to read the same memory cell. A corresponding plurality of evaluation parameters are then obtained, wherein each of the evaluation parameters corresponds to the total number of memory cells in the memory cell that meet certain state conditions. Based on these evaluation parameters, the preset hard decision voltage level can be updated. Thereby, the efficiency of finding the optimal read voltage level in the decoding operation can be improved, thereby improving the decoding efficiency.

雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明的精神和範圍內,當可作些許的更動與潤飾,故本發明的保護範圍當視後附的申請專利範圍所界定者為準。Although the present invention has been disclosed in the above embodiments, it is not intended to limit the present invention, and any one of ordinary skill in the art can make some changes and refinements without departing from the spirit and scope of the present invention. The scope of the invention is defined by the scope of the appended claims.

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、711、720、721、1101~1108‧‧‧分布 801~806、RT1、RS1、RT1’、RS1’、RT2、RS2、RT3、RS3、RT11、RS11、RT12、RS12、RT13、RS13、RT14、RS14、RT15、RS15、RT16、RS16、RT17、RS17‧‧‧區域 831、832、931、932、941、942、951、952‧‧‧軟位元資訊 RT1、RS1、RT1’、RS1’、RT2、RS2、RT3、RS3‧‧‧ 1110‧‧‧上實體程式化單元 1120‧‧‧下實體程式化單元 1130‧‧‧額外實體程式化單元 S1201‧‧‧步驟(基於一預設硬決策電壓準位讀取多個第一記憶胞以獲得硬位元資訊並對硬位元資訊執行硬解碼操作) S1202‧‧‧步驟(硬解碼操作是否成功) S1203‧‧‧步驟(輸出解碼成功的碼字) S1204‧‧‧步驟(基於多個預設軟決策電壓準位讀取第一記憶胞以獲得軟位元資訊並對軟位元資訊執行軟解碼操作) S1205‧‧‧步驟(軟解碼操作是否成功) S1206‧‧‧步驟(基於多個第一測試電壓準位讀取第一記憶胞以獲得第一軟位元資訊並基於多個第二測試電壓準位讀取第一記憶胞以獲得第二軟位元資訊) S1207‧‧‧步驟(根據第一軟位元資訊計算第一評估參數並根據第二軟位元資訊計算第二評估參數) S1208‧‧‧步驟(根據第一評估參數與第二評估參數更新預設硬決策電壓準位) S1301‧‧‧步驟(基於一預設硬決策電壓準位讀取多個第一記憶胞以獲得硬位元資訊並對硬位元資訊執行硬解碼操作) S1302‧‧‧步驟(硬解碼操作是否成功) S1303‧‧‧步驟(輸出解碼成功的碼字) S1304‧‧‧步驟(基於多個預設軟決策電壓準位讀取第一記憶胞以獲得軟位元資訊並對軟位元資訊執行軟解碼操作) S1305‧‧‧步驟(軟解碼操作是否成功) S1306‧‧‧步驟(是否還有未檢查的偏移值) S1307‧‧‧步驟(基於多個測試電壓準位讀取第一記憶胞以獲得軟位元資訊) S1308‧‧‧步驟(根據獲得的軟位元資訊計算一評估參數) S1309‧‧‧步驟(判斷計算的評估參數是否優於一預設評估參數) S1310‧‧‧步驟(將所計算的評估參數設定為預設評估參數) S1311‧‧‧步驟(根據預設評估參數更新預設硬決策電壓準位) S1312‧‧‧步驟(基於一預設硬決策電壓準位讀取多個第一記憶胞以獲得硬位元資訊並對硬位元資訊執行硬解碼操作) S1401‧‧‧步驟(判定解碼失敗) S1402‧‧‧步驟(硬解碼操作是否成功) S1403‧‧‧步驟(輸出解碼成功的碼字) S1404‧‧‧步驟(基於多個預設軟決策電壓準位讀取第一記憶胞以獲得軟位元資訊並對軟位元資訊執行軟解碼操作) S1405‧‧‧步驟(軟解碼操作是否成功) S1406‧‧‧步驟(是否已找到最佳讀取電壓準位) S1407‧‧‧步驟(是否還有未檢查的偏移值) S1408‧‧‧步驟(基於多個測試電壓準位讀取第一記憶胞以獲得軟位元資訊) S1409‧‧‧步驟(據獲得的軟位元資訊計算一評估參數) S1410‧‧‧步驟(根據所計算的多個評估參數來更新預設硬決策電壓準位) S1411‧‧‧步驟(判定解碼失敗)10‧‧‧ Memory storage device 11‧‧‧ Host system 110‧‧‧System bus 111‧‧‧Processor 112‧‧‧ Random access memory 113‧‧‧Reading memory 114‧‧‧ Data transmission Interface 12‧‧‧ Input/Output (I/O) device 20‧‧‧ Motherboard 201‧‧‧Visconet 202‧‧ Memory Card 203‧‧‧Solid Hard Disk 204‧‧‧Wireless Memory Storage Device 205‧ ‧‧Global Positioning System Module 206‧‧‧Network Interface Card 207‧‧‧Wireless Transmission 208‧‧‧Keyboard 209‧‧‧Screen 210‧‧‧ Speaker 32‧‧‧SD Card 33‧‧‧CF Card 34 ‧‧‧Embedded storage device 341‧‧‧Embedded multimedia card 342‧‧ Embedded multi-chip package storage device 402‧‧‧Connecting interface unit 404‧‧‧Memory control circuit unit 406‧‧‧Rewritable Volatile memory module 502‧‧‧ memory management circuit 504‧‧‧ host interface 506‧‧‧ memory interface 508‧‧‧ error checking and correction circuit 510‧‧‧ buffer memory 512‧‧‧ power management circuit 601‧‧‧Storage Area 602‧‧‧Replacement Area 610(0)~610(B) ‧‧‧Solid units 612(0)~612(C)‧‧‧Logical units 710, 711, 720, 721, 1101~1108‧‧‧Distribution 801~806, R T1 , R S1 , R T1 ' , R S1 ' , R T2 , R S2 , R T3 , R S3 , R T11 , R S11 , R T12 , R S12 , R T13 , R S13 , R T14 , R S14 , R T15 , R S15 , R T16 , R S16 , R T17 , R S17 ‧‧‧Area 831, 832, 931, 932, 941, 942, 951, 952‧‧‧soft bit information R T1 , R S1 , R T1 ' , R S1 ' , R T2 , R S2 , R T3 , R S3 ‧ ‧ ‧ 1110 ‧ ‧ Entity stylized unit 1120 ‧ ‧ entity stylized unit 1130 ‧ ‧ additional entity stylized unit S1201 ‧ ‧ steps (based on a preset hard decision voltage The bit reads a plurality of first memory cells to obtain hard bit information and performs a hard decoding operation on the hard bit information.) S1202‧‧‧Step (whether the hard decoding operation is successful) S1203‧‧‧Steps (output decoding successful codewords) S1204‧‧‧ steps (reading the first memory cell based on multiple preset soft decision voltage levels to obtain soft bit information and performing soft decoding operation on the soft bit information) S1205‧‧ steps (soft Whether the code operation is successful) S1206‧‧‧ steps (reading the first memory cell based on the plurality of first test voltage levels to obtain the first soft bit information and reading the first memory cell based on the plurality of second test voltage levels Obtaining the second soft bit information) S1207‧‧ steps (calculating the first evaluation parameter according to the first soft bit information and calculating the second evaluation parameter according to the second soft bit information) S1208‧‧‧ steps (according to the first The evaluation parameter and the second evaluation parameter update the preset hard decision voltage level. S1301‧‧‧ steps (reading a plurality of first memory cells based on a preset hard decision voltage level to obtain hard bit information and hard bits Information execution hard decoding operation) S1302‧‧‧Step (whether the hard decoding operation is successful) S1303‧‧‧Step (output decoded successful codeword) S1304‧‧‧Steps (based on multiple preset soft decision voltage levels read A memory cell obtains soft bit information and performs soft decoding operations on soft bit information.) S1305‧‧‧Step (whether the soft decoding operation is successful) S1306‧‧‧Steps (whether there are unchecked offset values) S1307‧ ‧ ‧ steps (based on multiple tests Pressing the first memory cell to obtain soft bit information) S1308‧‧‧Steps (calculating an evaluation parameter based on the obtained soft bit information) S1309‧‧‧Steps (determining whether the calculated evaluation parameters are better than one Set the evaluation parameters) S1310‧‧‧ steps (set the calculated evaluation parameters as preset evaluation parameters) S1311‧‧‧ steps (update the preset hard decision voltage level according to the preset evaluation parameters) S1312‧‧ steps (based on A preset hard decision voltage level reads a plurality of first memory cells to obtain hard bit information and performs a hard decoding operation on the hard bit information.) S1401‧‧‧Step (Decision decoding failure) S1402‧‧ steps (hard S1403‧‧‧Step (output decoded successful codeword) S1404‧‧‧Steps (Reading the first memory cell based on multiple preset soft decision voltage levels to obtain soft bit information and soft bits Meta-information performs soft decoding operation) S1405‧‧‧Step (whether the soft decoding operation is successful) S1406‧‧‧Step (whether the best read voltage level has been found) S1407‧‧‧Steps (Is there still an unchecked offset? Value) S1408‧‧ steps (Reading the first memory cell based on multiple test voltage levels to obtain soft bit information) S1409‧‧‧Steps (calculate an evaluation parameter based on the obtained soft bit information) S1410‧‧‧ steps (according to the calculated Evaluation parameters to update the preset hard decision voltage level) S1411‧‧‧ steps (decision decoding failure)

圖1是根據本發明的一範例實施例所繪示的主機系統、記憶體儲存裝置及輸入/輸出(I/O)裝置的示意圖。 圖2是根據本發明的另一範例實施例所繪示的主機系統、記憶體儲存裝置及I/O裝置的示意圖。 圖3是根據本發明的另一範例實施例所繪示的主機系統與記憶體儲存裝置的示意圖。 圖4是根據本發明的一範例實施例所繪示的記憶體儲存裝置的概要方塊圖。 圖5是根據本發明的一範例實施例所繪示的記憶體控制電路單元的概要方塊圖。 圖6是根據本發明的一範例實施例所繪示之管理可複寫式非揮發性記憶體模組的示意圖。 圖7是根據本發明的一範例實施例所繪示的讀取硬位元資訊之示意圖。 圖8是根據本發明的一範例實施例所繪示的讀取軟位元資訊之示意圖。 圖9A至9C是根據本發明的一範例實施例所繪示的追蹤最佳讀取電壓準位的示意圖。 圖10A是根據本發明的一範例實施例所繪示的記憶胞數目與偏移值之對應關係的示意圖。 圖10B是根據本發明的另一範例實施例所繪示的記憶胞數目與偏移值之對應關係的示意圖。 圖11是根據本發明的一範例實施例所繪示的轉態區域與穩態區域的示意圖。 圖12是根據本發明的一範例實施例所繪示的解碼方法的流程圖。 圖13是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。 圖14是根據本發明的另一範例實施例所繪示的解碼方法的流程圖。FIG. 1 is a schematic diagram of a host system, a memory storage device, and an input/output (I/O) device according to an exemplary embodiment of the invention. FIG. 2 is a schematic diagram of a host system, a memory storage device, and an I/O device according to another exemplary embodiment of the present invention. FIG. 3 is a schematic diagram of a host system and a memory storage device according to another exemplary embodiment of the invention. FIG. 4 is a schematic block diagram of a memory storage device according to an exemplary embodiment of the invention. FIG. 5 is a schematic block diagram of a memory control circuit unit according to an exemplary embodiment of the invention. FIG. 6 is a schematic diagram of managing a rewritable non-volatile memory module according to an exemplary embodiment of the invention. FIG. 7 is a schematic diagram of reading hard bit information according to an exemplary embodiment of the invention. FIG. 8 is a schematic diagram of reading soft bit information according to an exemplary embodiment of the invention. 9A-9C are schematic diagrams of tracking an optimal read voltage level, according to an exemplary embodiment of the invention. FIG. 10A is a schematic diagram showing the correspondence between the number of memory cells and an offset value according to an exemplary embodiment of the invention. FIG. 10B is a schematic diagram showing the correspondence between the number of memory cells and an offset value according to another exemplary embodiment of the present invention. FIG. 11 is a schematic diagram of a transition region and a steady state region according to an exemplary embodiment of the invention. FIG. 12 is a flowchart of a decoding method according to an exemplary embodiment of the present invention. FIG. 13 is a flowchart of a decoding method according to another exemplary embodiment of the present invention. FIG. 14 is a flowchart of a decoding method according to another exemplary embodiment of the present invention.

S1201‧‧‧步驟(基於一預設硬決策電壓準位讀取多個第一記憶胞以獲得硬位元資訊並對硬位元資訊執行硬解碼操作) S1201‧‧‧ steps (reading a plurality of first memory cells based on a preset hard decision voltage level to obtain hard bit information and performing hard decoding operations on hard bit information)

S1202‧‧‧步驟(硬解碼操作是否成功) S1202‧‧‧Steps (whether the hard decoding operation is successful)

S1203‧‧‧步驟(輸出解碼成功的碼字) S1203‧‧‧Steps (outputting decoded codewords successfully)

S1204‧‧‧步驟(基於多個預設軟決策電壓準位讀取第一記憶胞以獲得軟位元資訊並對軟位元資訊執行軟解碼操作) S1204‧‧‧ steps (reading the first memory cell based on a plurality of preset soft decision voltage levels to obtain soft bit information and performing soft decoding operation on the soft bit information)

S1205‧‧‧步驟(軟解碼操作是否成功) S1205‧‧‧Step (whether the soft decoding operation is successful)

S1206‧‧‧步驟(基於多個第一測試電壓準位讀取第一記憶胞以獲得第一軟位元資訊並基於多個第二測試電壓準位讀取第一記憶胞以獲得第二軟位元資訊) S1206‧ ‧ steps (reading the first memory cell based on the plurality of first test voltage levels to obtain the first soft bit information and reading the first memory cell based on the plurality of second test voltage levels to obtain the second soft Bit information)

S1207‧‧‧步驟(根據第一軟位元資訊獲得第一評估參數並根據第二軟位元資訊獲得第二評估參數) S1207‧‧‧ steps (acquiring the first evaluation parameter according to the first soft bit information and obtaining the second evaluation parameter according to the second soft bit information)

S1208‧‧‧步驟(根據第一評估參數與第二評估參數更新預設硬決策電壓準位) S1208‧‧‧ steps (update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter)

Claims (21)

一種解碼方法,用於包括多個記憶胞的一可複寫式非揮發性記憶體模組,該解碼方法包括: 基於一預設硬決策電壓準位讀取該些記憶胞中的多個第一記憶胞以獲得一硬位元資訊; 對該硬位元資訊執行一硬解碼操作; 若該硬解碼操作失敗,基於多個預設軟決策電壓準位讀取該些第一記憶胞以獲得一軟位元資訊; 對該軟位元資訊執行一軟解碼操作; 若該軟解碼操作失敗,基於多個第一測試電壓準位讀取該些第一記憶胞以獲得一第一軟位元資訊並基於多個第二測試電壓準位讀取該些第一記憶胞以獲得一第二軟位元資訊; 根據該第一軟位元資訊獲得一第一評估參數並根據該第二軟位元資訊獲得一第二評估參數,其中該第一評估參數對應於該些第一記憶胞中符合一第一狀態條件之記憶胞的一第一總數,其中該第二評估參數對應於該些第一記憶胞中符合一第二狀態條件之記憶胞的一第二總數;以及 根據該第一評估參數與該第二評估參數更新該預設硬決策電壓準位。A decoding method for a rewritable non-volatile memory module including a plurality of memory cells, the decoding method comprising: reading a plurality of first of the memory cells based on a predetermined hard decision voltage level The memory cell obtains a hard bit information; performs a hard decoding operation on the hard bit information; if the hard decoding operation fails, reads the first memory cells based on a plurality of preset soft decision voltage levels to obtain a Soft bit information; performing a soft decoding operation on the soft bit information; if the soft decoding operation fails, reading the first memory cells based on the plurality of first test voltage levels to obtain a first soft bit information And reading the first memory cells to obtain a second soft bit information based on the plurality of second test voltage levels; obtaining a first evaluation parameter according to the first soft bit information and according to the second soft bit Obtaining a second evaluation parameter, wherein the first evaluation parameter corresponds to a first total number of memory cells of the first memory cells that meet a first state condition, wherein the second evaluation parameter corresponds to the first Memory cell matches one A second two-state conditions the total number of memory cells; and updating based on the first evaluation parameter and the evaluation parameter of the second predetermined voltage level hard decision. 如申請專利範圍第1項所述的解碼方法,其中根據該第一軟位元資訊獲得該第一評估參數並根據該第二軟位元資訊獲得該第二評估參數之步驟包括: 根據該第一軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第一轉態區域之記憶胞的一總數,其中該第一轉態區域包含該些第一測試電壓準位中任兩個電壓準位之間的區域;以及 根據該第二軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第二轉態區域之記憶胞的一總數,其中該第二轉態區域包含該些第二測試電壓準位中任兩個電壓準位之間的區域。The decoding method of claim 1, wherein the obtaining the first evaluation parameter according to the first soft bit information and obtaining the second evaluation parameter according to the second soft bit information comprises: according to the first A soft bit information is used to count a total number of memory cells in the first memory cell that belong to a first transition region, wherein the first transition region includes any two of the first test voltage levels An area between the levels; and counting, according to the second soft bit information, a total number of memory cells in the first memory cell that belong to a second transition region, wherein the second transition region includes the The area between any two of the voltage levels in the second test voltage level. 如申請專利範圍第2項所述的解碼方法,其中該第一轉態區域是該些第一測試電壓準位中電壓最大之電壓準位與該些第一測試電壓準位中電壓最小之電壓準位之間的區域, 其中該第二轉態區域是該些第二測試電壓準位中電壓最大之電壓準位與該些第二測試電壓準位中電壓最小之電壓準位之間的區域。The decoding method of claim 2, wherein the first transition region is a voltage level at which the voltage of the first test voltage level is the highest and a voltage at which the voltage of the first test voltage level is the smallest. An area between the levels, wherein the second transition area is an area between a voltage level at a voltage of the second test voltage level and a voltage level at which the voltage of the second test voltage level is the smallest . 如申請專利範圍第1項所述的解碼方法,其中根據該第一軟位元資訊獲得該第一評估參數並根據該第二軟位元資訊獲得該第二評估參數之步驟包括: 根據該第一軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第一穩態區域之記憶胞的一總數,其中該第一穩態區域包含該些第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域;以及 根據該第二軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第二穩態區域之記憶胞的一總數,其中該第二穩態區域包含該些第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域。The decoding method of claim 1, wherein the obtaining the first evaluation parameter according to the first soft bit information and obtaining the second evaluation parameter according to the second soft bit information comprises: according to the first A soft bit information is used to count a total number of memory cells in the first memory cell belonging to a first steady state region, wherein the first steady state region includes a voltage having a maximum voltage among the first test voltage levels An area outside the area between the level and the voltage level at which the voltage is the smallest; and a total number of memory cells in the first memory cell whose threshold voltage belongs to a second steady state area according to the second soft bit information The second steady-state region includes an area outside a region between a voltage level at which the voltage of the second test voltage level is the highest and a voltage level at which the voltage is the smallest. 如申請專利範圍第4項所述的解碼方法,其中該第一穩態區域位於該些第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外, 其中該第二穩態區域位於該些第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外。The decoding method of claim 4, wherein the first steady-state region is located outside a region between a voltage level at which the voltage of the first test voltage level is the highest and a voltage level at which the voltage is the smallest. The second steady-state region is located outside the region between the voltage level at which the voltage is the highest and the voltage level at which the voltage is the smallest among the second test voltage levels. 如申請專利範圍第1項所述的解碼方法,其中該些第一測試電壓準位對應於一第一偏移值,其中該些第二測試電壓準位對應於一第二偏移值,其中該第一偏移值不同於該第二偏移值, 其中根據該第一評估參數與該第二評估參數更新該預設硬決策電壓準位之步驟包括: 根據該第一總數與該第二總數之間的一數值關係來更新該預設硬決策電壓準位,其中更新後的該預設硬決策電壓準位對應於該第一偏移值與該第二偏移值的其中之一。The decoding method of claim 1, wherein the first test voltage levels correspond to a first offset value, wherein the second test voltage levels correspond to a second offset value, wherein The first offset value is different from the second offset value, wherein the step of updating the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter comprises: according to the first total number and the second A predetermined value relationship between the totals is used to update the preset hard decision voltage level, wherein the updated preset hard decision voltage level corresponds to one of the first offset value and the second offset value. 如申請專利範圍第6項所述的解碼方法,更包括: 根據該第一總數與該第二總數之間的該數值關係來更新該些預設軟決策電壓準位,其中更新後的該些預設軟決策電壓準位對應於該第一偏移值與該第二偏移值的該其中之一。The decoding method of claim 6, further comprising: updating the preset soft decision voltage levels according to the numerical relationship between the first total number and the second total number, wherein the updated The preset soft decision voltage level corresponds to one of the first offset value and the second offset value. 一種記憶體儲存裝置,包括: 一連接介面單元,用以耦接至一主機系統; 一可複寫式非揮發性記憶體模組,包括多個記憶胞;以及 一記憶體控制電路單元,耦接至該連接介面單元與該可複寫式非揮發性記憶體模組, 其中該記憶體控制電路單元用以發送一第一讀取指令序列以指示基於一預設硬決策電壓準位讀取該些記憶胞中的多個第一記憶胞以獲得一硬位元資訊, 其中該記憶體控制電路單元更用以對該硬位元資訊執行一硬解碼操作, 其中若該硬解碼操作失敗,該記憶體控制電路單元更用以發送一第二讀取指令序列以指示基於多個預設軟決策電壓準位讀取該些第一記憶胞以獲得一軟位元資訊, 其中該記憶體控制電路單元更用以對該軟位元資訊執行一軟解碼操作, 其中若該軟解碼操作失敗,該記憶體控制電路單元更用以發送一第一測試指令序列以指示基於多個第一測試電壓準位讀取該些第一記憶胞以獲得一第一軟位元資訊並發送一第二測試指令序列以指示基於多個第二測試電壓準位讀取該些第一記憶胞以獲得一第二軟位元資訊, 其中該記憶體控制電路單元更用以根據該第一軟位元資訊獲得一第一評估參數並根據該第二軟位元資訊獲得一第二評估參數,其中該第一評估參數對應於該些第一記憶胞中符合一第一狀態條件之記憶胞的一第一總數,其中該第二評估參數對應於該些第一記憶胞中符合一第二狀態條件之記憶胞的一第二總數, 其中該記憶體控制電路單元更用以根據該第一評估參數與該第二評估參數更新該預設硬決策電壓準位。A memory storage device includes: a connection interface unit for coupling to a host system; a rewritable non-volatile memory module including a plurality of memory cells; and a memory control circuit unit coupled The connection control unit and the rewritable non-volatile memory module, wherein the memory control circuit unit is configured to send a first read command sequence to indicate that the read is based on a predetermined hard decision voltage level And storing, by the memory control circuit unit, a hard decoding operation, where the hard decoding operation fails, the memory is The body control circuit unit is further configured to send a second read command sequence to instruct to read the first memory cells based on the plurality of preset soft decision voltage levels to obtain a soft bit information, wherein the memory control circuit unit Further performing a soft decoding operation on the soft bit information, wherein if the soft decoding operation fails, the memory control circuit unit is further configured to send a first test instruction sequence to Reading the first memory cells based on the plurality of first test voltage levels to obtain a first soft bit information and transmitting a second test instruction sequence to indicate that the plurality of second test voltage levels are read based on the plurality of second test voltage levels The first memory cell obtains a second soft bit information, wherein the memory control circuit unit is further configured to obtain a first evaluation parameter according to the first soft bit information and obtain a first information according to the second soft bit information a second evaluation parameter, wherein the first evaluation parameter corresponds to a first total number of memory cells in the first memory cells that meet a first state condition, wherein the second evaluation parameter corresponds to the first memory cells a second total number of memory cells of the second state condition, wherein the memory control circuit unit is further configured to update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter. 如申請專利範圍第8項所述的記憶體儲存裝置,其中該記憶體控制電路單元根據該第一軟位元資訊獲得該第一評估參數並根據該第二軟位元資訊獲得該第二評估參數之操作包括: 根據該第一軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第一轉態區域之記憶胞的一總數,其中該第一轉態區域包含該些第一測試電壓準位中任兩個電壓準位之間的區域;以及 根據該第二軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第二轉態區域之記憶胞的一總數,其中該第二轉態區域包含該些第二測試電壓準位中任兩個電壓準位之間的區域。The memory storage device of claim 8, wherein the memory control circuit unit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation according to the second soft bit information. The operation of the parameter includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell that belong to a first transition region, wherein the first transition region includes the first test An area between any two voltage levels in the voltage level; and counting, according to the second soft bit information, a total number of memory cells in the first memory cell that belong to a second transition region, wherein the The second transition region includes an area between any two of the second test voltage levels. 如申請專利範圍第9項所述的記憶體儲存裝置,其中該第一轉態區域是該些第一測試電壓準位中電壓最大之電壓準位與該些第一測試電壓準位中電壓最小之電壓準位之間的區域, 其中該第二轉態區域是該些第二測試電壓準位中電壓最大之電壓準位與該些第二測試電壓準位中電壓最小之電壓準位之間的區域。The memory storage device of claim 9, wherein the first transition region is a voltage level at a maximum voltage among the first test voltage levels and a minimum voltage among the first test voltage levels a region between the voltage levels, wherein the second transition region is between a voltage level at which the voltage of the second test voltage level is the highest and a voltage level at which the voltage of the second test voltage level is the smallest Area. 如申請專利範圍第8項所述的記憶體儲存裝置,其中該記憶體控制電路單元根據該第一軟位元資訊獲得該第一評估參數並根據該第二軟位元資訊獲得該第二評估參數之操作包括: 根據該第一軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第一穩態區域之記憶胞的一總數,其中該第一穩態區域包含該些第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域;以及 根據該第二軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第二穩態區域之記憶胞的一總數,其中該第二穩態區域包含該些第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域。The memory storage device of claim 8, wherein the memory control circuit unit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation according to the second soft bit information. The operation of the parameter includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell that belong to a first steady state region, wherein the first steady state region includes the first test An area outside the region between the voltage level at which the voltage is the highest and the voltage level at which the voltage is the smallest; and the threshold voltage in the first memory cells according to the second soft bit information belongs to a second stable a total number of memory cells of the state region, wherein the second steady state region includes an area outside a region between a voltage level at which the voltage of the second test voltage level is the highest and a voltage level at which the voltage is the smallest. 如申請專利範圍第11項所述的記憶體儲存裝置,其中該第一穩態區域位於該些第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外, 其中該第二穩態區域位於該些第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外。The memory storage device of claim 11, wherein the first steady-state region is located between a voltage level at which the voltage of the first test voltage level is the highest and a voltage level at which the voltage is the smallest. In addition, the second steady-state region is located outside the region between the voltage level at which the voltage is the largest and the voltage level at which the voltage is the smallest among the second test voltage levels. 如申請專利範圍第8項所述的記憶體儲存裝置,其中該些第一測試電壓準位對應於一第一偏移值,其中該些第二測試電壓準位對應於一第二偏移值,其中該第一偏移值不同於該第二偏移值, 其中該記憶體控制電路單元根據該第一評估參數與該第二評估參數更新該預設硬決策電壓準位之操作包括: 根據該第一總數與該第二總數之間的一數值關係來更新該預設硬決策電壓準位,其中更新後的該預設硬決策電壓準位對應於該第一偏移值與該第二偏移值的其中之一。The memory storage device of claim 8, wherein the first test voltage levels correspond to a first offset value, wherein the second test voltage levels correspond to a second offset value The first offset value is different from the second offset value, wherein the operation of the memory control circuit unit to update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter includes: Updating the preset hard decision voltage level by a numerical relationship between the first total number and the second total number, wherein the updated preset hard decision voltage level corresponds to the first offset value and the second One of the offset values. 如申請專利範圍第13項所述的記憶體儲存裝置,其中該記憶體控制電路單元更用以根據該第一總數與該第二總數之間的該數值關係來更新該些預設軟決策電壓準位,其中更新後的該些預設軟決策電壓準位對應於該第一偏移值與該第二偏移值的該其中之一。The memory storage device of claim 13, wherein the memory control circuit unit is further configured to update the preset soft decision voltages according to the numerical relationship between the first total number and the second total number. a level, wherein the updated preset soft decision voltage levels correspond to one of the first offset value and the second offset value. 一種記憶體控制電路單元,用於控制包括多個記憶胞的一可複寫式非揮發性記憶體模組,其中該記憶體控制電路單元包括: 一主機介面,用以耦接至一主機系統; 一記憶體介面,用以耦接至該可複寫式非揮發性記憶體模組; 一錯誤檢查與校正電路;以及 一記憶體管理電路,耦接至該主機介面、該記憶體介面及該錯誤檢查與校正電路, 其中該記憶體管理電路用以發送一第一讀取指令序列以指示基於一預設硬決策電壓準位讀取該些記憶胞中的多個第一記憶胞以獲得一硬位元資訊, 其中該錯誤檢查與校正電路用以對該硬位元資訊執行一硬解碼操作, 其中若該硬解碼操作失敗,該記憶體管理電路更用以發送一第二讀取指令序列以指示基於多個預設軟決策電壓準位讀取該些第一記憶胞以獲得一軟位元資訊, 其中該錯誤檢查與校正電路更用以對該軟位元資訊執行一軟解碼操作, 其中若該軟解碼操作失敗,該記憶體管理電路更用以發送一第一測試指令序列以指示基於多個第一測試電壓準位讀取該些第一記憶胞以獲得一第一軟位元資訊並發送一第二測試指令序列以指示基於多個第二軟決策電壓準位讀取該些第一記憶胞以獲得一第二軟位元資訊, 其中該記憶體管理電路更用以根據該第一軟位元資訊獲得一第一評估參數並根據該第二軟位元資訊獲得一第二評估參數,其中該第一評估參數對應於該些第一記憶胞中符合一第一狀態條件之記憶胞的一第一總數,其中該第二評估參數對應於該些第一記憶胞中符合一第二狀態條件之記憶胞的一第二總數, 其中該記憶體管理電路更用以根據該第一評估參數與該第二評估參數更新該預設硬決策電壓準位。A memory control circuit unit for controlling a rewritable non-volatile memory module including a plurality of memory cells, wherein the memory control circuit unit comprises: a host interface for coupling to a host system; a memory interface for coupling to the rewritable non-volatile memory module; an error checking and correcting circuit; and a memory management circuit coupled to the host interface, the memory interface, and the error a check and correction circuit, wherein the memory management circuit is configured to send a first read command sequence to instruct to read a plurality of first memory cells in the memory cells to obtain a hard based on a predetermined hard decision voltage level Bit information, wherein the error checking and correcting circuit is configured to perform a hard decoding operation on the hard bit information, wherein if the hard decoding operation fails, the memory management circuit is further configured to send a second read command sequence to Instructing to read the first memory cells based on the plurality of preset soft decision voltage levels to obtain a soft bit information, wherein the error checking and correction circuit is further used to the soft bit Executing a soft decoding operation, wherein if the soft decoding operation fails, the memory management circuit is further configured to send a first test instruction sequence to indicate that the first memory cells are read based on the plurality of first test voltage levels Obtaining a first soft bit information and sending a second test instruction sequence to indicate that the first memory cells are read based on the plurality of second soft decision voltage levels to obtain a second soft bit information, wherein the memory The management circuit is further configured to obtain a first evaluation parameter according to the first soft bit information and obtain a second evaluation parameter according to the second soft bit information, wherein the first evaluation parameter corresponds to the first memory cells a first total number of memory cells that meet a first state condition, wherein the second evaluation parameter corresponds to a second total of the first memory cells that meet a second state condition, wherein the memory management The circuit is further configured to update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter. 如申請專利範圍第15項所述的記憶體控制電路單元,其中該記憶體管理電路根據該第一軟位元資訊獲得該第一評估參數並根據該第二軟位元資訊獲得該第二評估參數之操作包括: 根據該第一軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第一轉態區域之記憶胞的一總數,其中該第一轉態區域包含該些第一測試電壓準位中任兩個電壓準位之間的區域;以及 根據該第二軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第二轉態區域之記憶胞的一總數,其中該第二轉態區域包含該些第二測試電壓準位中任兩個電壓準位之間的區域。The memory control circuit unit of claim 15, wherein the memory management circuit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation according to the second soft bit information. The operation of the parameter includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell that belong to a first transition region, wherein the first transition region includes the first test An area between any two voltage levels in the voltage level; and counting, according to the second soft bit information, a total number of memory cells in the first memory cell that belong to a second transition region, wherein the The second transition region includes an area between any two of the second test voltage levels. 如申請專利範圍第16項所述的記憶體控制電路單元,其中該第一轉態區域是該些第一測試電壓準位中電壓最大之電壓準位與該些第一測試電壓準位中電壓最小之電壓準位之間的區域, 其中該第二轉態區域是該些第二測試電壓準位中電壓最大之電壓準位與該些第二測試電壓準位中電壓最小之電壓準位之間的區域。The memory control circuit unit of claim 16, wherein the first transition region is a voltage level at a voltage of the first test voltage level and a voltage in the first test voltage levels. An area between the minimum voltage levels, wherein the second transition region is a voltage level at which the voltage of the second test voltage level is the highest and a voltage level at which the voltage of the second test voltage level is the smallest. The area between. 如申請專利範圍第15項所述的記憶體控制電路單元,其中該記憶體管理電路根據該第一軟位元資訊獲得該第一評估參數並根據該第二軟位元資訊獲得該第二評估參數之操作包括: 根據該第一軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第一穩態區域之記憶胞的一總數,其中該第一穩態區域包含該些第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域;以及 根據該第二軟位元資訊統計該些第一記憶胞中臨界電壓屬於一第二穩態區域之記憶胞的一總數,其中該第二穩態區域包含該些第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外的區域。The memory control circuit unit of claim 15, wherein the memory management circuit obtains the first evaluation parameter according to the first soft bit information and obtains the second evaluation according to the second soft bit information. The operation of the parameter includes: counting, according to the first soft bit information, a total number of memory cells in the first memory cell that belong to a first steady state region, wherein the first steady state region includes the first test An area outside the region between the voltage level at which the voltage is the highest and the voltage level at which the voltage is the smallest; and the threshold voltage in the first memory cells according to the second soft bit information belongs to a second stable a total number of memory cells of the state region, wherein the second steady state region includes an area outside a region between a voltage level at which the voltage of the second test voltage level is the highest and a voltage level at which the voltage is the smallest. 如申請專利範圍第18項所述的記憶體控制電路單元,其中該第一穩態區域位於該些第一測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外, 其中該第二穩態區域位於該些第二測試電壓準位中電壓最大之電壓準位與電壓最小之電壓準位之間的區域之外。The memory control circuit unit of claim 18, wherein the first steady-state region is located between the voltage level at which the voltage of the first test voltage level is the highest and the voltage level at which the voltage is the smallest. In addition, the second steady-state region is located outside the region between the voltage level at which the voltage is the largest and the voltage level at which the voltage is the smallest among the second test voltage levels. 如申請專利範圍第15項所述的記憶體控制電路單元,其中該些第一測試電壓準位對應於一第一偏移值,其中該些第二測試電壓準位對應於一第二偏移值,其中該第一偏移值不同於該第二偏移值, 其中該記憶體管理電路根據該第一評估參數與該第二評估參數更新該預設硬決策電壓準位之操作包括: 根據該第一總數與該第二總數之間的一數值關係來更新該預設硬決策電壓準位,其中更新後的該預設硬決策電壓準位對應於該第一偏移值與該第二偏移值的其中之一。The memory control circuit unit of claim 15, wherein the first test voltage levels correspond to a first offset value, wherein the second test voltage levels correspond to a second offset a value, wherein the first offset value is different from the second offset value, wherein the operation of the memory management circuit to update the preset hard decision voltage level according to the first evaluation parameter and the second evaluation parameter comprises: Updating the preset hard decision voltage level by a numerical relationship between the first total number and the second total number, wherein the updated preset hard decision voltage level corresponds to the first offset value and the second One of the offset values. 如申請專利範圍第20項所述的記憶體控制電路單元,其中該記憶體管理電路更用以根據該第一總數與該第二總數之間的該數值關係來更新該些預設軟決策電壓準位,其中更新後的該些預設軟決策電壓準位對應於該第一偏移值與該第二偏移值的該其中之一。The memory control circuit unit of claim 20, wherein the memory management circuit is further configured to update the preset soft decision voltages according to the numerical relationship between the first total number and the second total number. a level, wherein the updated preset soft decision voltage levels correspond to one of the first offset value and the second offset value.
TW105115957A 2016-05-23 2016-05-23 Decoding method, memory storage device and memory control circuit unit TWI584304B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW105115957A TWI584304B (en) 2016-05-23 2016-05-23 Decoding method, memory storage device and memory control circuit unit
US15/208,618 US9952926B2 (en) 2016-05-23 2016-07-13 Decoding method, memory storage device and memory control circuit unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW105115957A TWI584304B (en) 2016-05-23 2016-05-23 Decoding method, memory storage device and memory control circuit unit

Publications (2)

Publication Number Publication Date
TWI584304B true TWI584304B (en) 2017-05-21
TW201742067A TW201742067A (en) 2017-12-01

Family

ID=59367364

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105115957A TWI584304B (en) 2016-05-23 2016-05-23 Decoding method, memory storage device and memory control circuit unit

Country Status (2)

Country Link
US (1) US9952926B2 (en)
TW (1) TWI584304B (en)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10339324B2 (en) * 2016-12-22 2019-07-02 Apple Inc. Tamper-proof storage using signatures based on threshold voltage distributions
US10469103B1 (en) * 2017-04-19 2019-11-05 Seagate Technology Llc Adaptive read retry optimization
TWI640865B (en) * 2017-09-05 2018-11-11 群聯電子股份有限公司 Decoding method, memory storage device and memory control circuit unit
US10679718B2 (en) * 2017-10-04 2020-06-09 Western Digital Technologies, Inc. Error reducing matrix generation
US10558522B2 (en) 2017-10-20 2020-02-11 Western Digital Technologies, Inc. Dynamic multi-stage decoding
US10637511B2 (en) * 2017-12-18 2020-04-28 Western Digital Technologies, Inc Dynamic multi-stage decoding
CN111863099B (en) * 2020-07-31 2023-03-21 群联电子股份有限公司 Memory control method, memory storage device and memory control circuit unit
CN112230856B (en) * 2020-10-20 2022-09-23 北京得瑞领新科技有限公司 Configuration method and device of NAND hard decision reference level offset value and SSD device
CN113393883A (en) * 2021-06-22 2021-09-14 武汉理工大学 Data reading method and device of NAND flash memory and NAND flash memory system

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8145981B2 (en) * 2007-03-31 2012-03-27 Sandisk Technologies Inc. Soft bit data transmission for error correction control in non-volatile memory
TWI364763B (en) * 2006-12-21 2012-05-21 Univ Ramot Soft decoding of hard and soft bits read from a flash memory
TWI391940B (en) * 2007-03-31 2013-04-01 Sandisk Technologies Inc Non-volatile memory system with soft bit data transmission for error correction control and method of reading the same
TW201337926A (en) * 2011-12-09 2013-09-16 Sandisk Technologies Inc Systems and methods of updating read voltages in a memory
US8644067B2 (en) * 2011-11-30 2014-02-04 Sandisk Technologies Inc. Systems and methods of decoding data using soft bits at a non-binary decoder that uses probabilistic decoding
US9274891B2 (en) * 2013-12-31 2016-03-01 Phison Electronics Corp. Decoding method, memory storage device, and memory controlling circuit unit
US20160093372A1 (en) * 2014-09-26 2016-03-31 Sandisk Technologies Inc. Reading resistive random access memory based on leakage current

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7616509B2 (en) * 2007-07-13 2009-11-10 Freescale Semiconductor, Inc. Dynamic voltage adjustment for memory
JP5361603B2 (en) * 2009-08-13 2013-12-04 株式会社東芝 controller
KR101792868B1 (en) * 2010-11-25 2017-11-02 삼성전자주식회사 Flash memory device and reading method thereof
US9164828B2 (en) * 2013-09-26 2015-10-20 Seagate Technology Llc Systems and methods for enhanced data recovery in a solid state memory system
US20150205664A1 (en) * 2014-01-17 2015-07-23 Fusion-Io, Inc. Determining a configuration parameter using a soft read command
KR20160102740A (en) * 2015-02-23 2016-08-31 에스케이하이닉스 주식회사 Controller, semiconductor memory system and operating method thereof
KR20160102738A (en) * 2015-02-23 2016-08-31 에스케이하이닉스 주식회사 Controller, semiconductor memory system and operating method thereof
US10320429B2 (en) * 2015-03-04 2019-06-11 Toshiba Memory Corporation Memory controller, memory system and memory control method
KR102265220B1 (en) * 2015-03-09 2021-06-16 에스케이하이닉스 주식회사 Controller, semiconductor memory system and operating method thereof
KR20170000108A (en) * 2015-06-23 2017-01-02 에스케이하이닉스 주식회사 Controller, semiconductor memory system and operating method thereof

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI364763B (en) * 2006-12-21 2012-05-21 Univ Ramot Soft decoding of hard and soft bits read from a flash memory
US8145981B2 (en) * 2007-03-31 2012-03-27 Sandisk Technologies Inc. Soft bit data transmission for error correction control in non-volatile memory
TWI391940B (en) * 2007-03-31 2013-04-01 Sandisk Technologies Inc Non-volatile memory system with soft bit data transmission for error correction control and method of reading the same
US8644067B2 (en) * 2011-11-30 2014-02-04 Sandisk Technologies Inc. Systems and methods of decoding data using soft bits at a non-binary decoder that uses probabilistic decoding
TW201337926A (en) * 2011-12-09 2013-09-16 Sandisk Technologies Inc Systems and methods of updating read voltages in a memory
US9274891B2 (en) * 2013-12-31 2016-03-01 Phison Electronics Corp. Decoding method, memory storage device, and memory controlling circuit unit
US20160093372A1 (en) * 2014-09-26 2016-03-31 Sandisk Technologies Inc. Reading resistive random access memory based on leakage current

Also Published As

Publication number Publication date
TW201742067A (en) 2017-12-01
US9952926B2 (en) 2018-04-24
US20170337106A1 (en) 2017-11-23

Similar Documents

Publication Publication Date Title
TWI584304B (en) Decoding method, memory storage device and memory control circuit unit
TWI649754B (en) Memory management method, memory storage device, and memory control circuit unit
TWI592869B (en) Decoding method, memory storage device and memory control circuit unit
US10416902B2 (en) Memory management method for grouping physical erasing units to region corresponding to programming mode, and memory control circuit unit and memory storage device using the method
TWI614755B (en) Decoding method, memory storage device and memory control circuit unit
US10977116B2 (en) Data access method, memory control circuit unit and memory storage device
TWI731338B (en) Memory control method, memory storage device and memory control circuit unit
TW201913382A (en) Decoding method, memory storage device and memory control circuit unit
TWI634556B (en) Decoding method, memory storage device and memory control circuit unit
CN107436820B (en) Decoding method, memory storage device and memory control circuit unit
TWI628543B (en) Decoding method, memory storage device and memory control circuit unit
TWI670725B (en) Memory control method, memory storage device and memory control circuit unit
TWI691961B (en) Memory control method, memory storage device and memory control circuit unit
TWI607452B (en) Decoding method, memory storage device and memory control circuit unit
TWI662553B (en) Memory testing method and memory testing system
CN109697134B (en) Decoding method, memory storage device and memory control circuit unit
CN113724774B (en) Decoding method, memory storage device and memory control circuit unit
CN113140253B (en) Memory management method, memory storage device and memory control circuit unit
TWI597731B (en) Memory management method,memory storage device and memory control circuit unit
TWI751620B (en) Memory control method, memory storage device and memory control circuit unit
CN107025935B (en) Decoding method, memory storage device and memory control circuit unit
CN111459704B (en) Memory control method, memory storage device and memory control circuit unit
TWI777519B (en) Memory management method, memory storage device and memory control circuit unit
CN110400593B (en) Memory management method, memory storage device and memory control circuit unit
CN111863099B (en) Memory control method, memory storage device and memory control circuit unit