Voltage adjusting method, memory control circuit unit and memory storage device
阅读说明:本技术 电压调整方法、存储器控制电路单元以及存储器存储装置 (Voltage adjusting method, memory control circuit unit and memory storage device ) 是由 林纬 许佑诚 郭才豪 陈思玮 欧沥元 林晓宜 于 2018-08-01 设计创作,主要内容包括:本发明提供一种电压调整方法、存储器控制电路单元以及存储器存储装置。所述方法包括:读取第一物理程序化单元组中的第一物理程序化单元以获得第一数据;根据对应第一数据的第一错误检查与校正码对第一数据进行校正以获得第一校正后数据;读取第一物理程序化单元组中的第二物理程序化单元以获得第二数据;根据第一数据、第一校正后数据以及第二数据将用于读取第一存储单元的第一读取电压调整为第二读取电压。(The invention provides a voltage adjusting method, a memory control circuit unit and a memory storage device. The method comprises the following steps: reading a first physical programming unit in the first physical programming unit group to obtain first data; correcting the first data according to a first error check and correction code corresponding to the first data to obtain first corrected data; reading a second physical programming unit in the first physical programming unit group to obtain second data; and adjusting the first reading voltage for reading the first storage unit to be a second reading voltage according to the first data, the first corrected data and the second data.)
1. A voltage adjustment method for a rewritable nonvolatile memory module, wherein the rewritable nonvolatile memory module comprises a plurality of memory cells, the memory cells are arranged at the intersections of a plurality of word lines and a plurality of bit lines, the word lines comprise first word lines, and a plurality of first memory cells in the memory cells on the first word line form a first physical programming cell group, the voltage adjustment method comprises:
reading a first physical programming cell in the first physical programming cell group to obtain first data;
correcting the first data according to a first error check and correction code corresponding to the first data to obtain first corrected data;
reading at least one second physical programming unit in the first physical programming unit group to obtain second data; and
adjusting a first read voltage for reading the plurality of first memory cells to a second read voltage according to the first data, the first corrected data, and the second data.
2. The voltage adjustment method of claim 1, wherein each of the plurality of memory cells has one of a plurality of memory states, wherein adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage based on the first data, the first corrected data, and the second data comprises:
and performing exclusive-or operation on the first data and the first corrected data to obtain third data, wherein the third data has a plurality of bits, and each bit of the plurality of bits corresponds to one of the plurality of first storage units.
3. The voltage adjustment method according to claim 2, wherein the step of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data further comprises:
when at least one first bit in the bits of the third data is a first value and the storage state of at least one second storage unit in the first storage units corresponding to the first bit is a first storage state in the storage state subdistrict, judging that the second storage unit is positioned in a first error interval in the storage state subdistrict; and
when at least one second bit of the bits of the third data is the first value and the storage state of at least one third storage unit of the first storage units corresponding to the second bit is a second storage state of the storage states, determining that the third storage unit is located in a second error interval in the storage state subdivision diagram.
4. The voltage adjustment method of claim 3, wherein in the storage status distribution map, the first storage status is adjacent to the second storage status, the second storage unit located in the first error interval belongs to the second storage status and the second storage unit is identified as the first storage status according to the first read voltage, and
the third memory cell located in the second error interval belongs to the first memory state and is identified as the second memory state according to the first read voltage.
5. The voltage adjustment method of claim 4, wherein adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data further comprises:
calculating a first number of the second memory cells located in the first error interval;
calculating a second number of the third memory cells located in the second error interval;
when the first number is greater than the second number, adjusting the first read voltage to the second read voltage such that the second read voltage is less than the first read voltage; and
when the first number is smaller than the second number, the first reading voltage is adjusted to the second reading voltage so that the second reading voltage is larger than the first reading voltage.
6. The voltage adjustment method of claim 1, wherein after the step of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data, the method further comprises:
recording the second reading voltage; and
when reading the plurality of first memory cells, reading the first memory cells using the second read voltage.
7. The voltage adjustment method of claim 1, the method further comprising:
correcting the second data according to at least one second error check and correction code corresponding to the second data to obtain at least one second corrected data; and
and adjusting a third read voltage for reading the plurality of first memory cells to a fourth read voltage according to the first data, the second data and the second corrected data.
8. A memory control circuit unit for a rewritable and non-volatile memory module, the rewritable and non-volatile memory module comprising a plurality of memory cells, the memory cells being arranged at intersections of a plurality of word lines and a plurality of bit lines, wherein the plurality of word lines include a first word line, and a plurality of first memory cells of the memory cells on the first word line form a first physical programming cell group, the memory control circuit unit comprising:
a host interface for electrically connecting to a host system;
a memory interface for electrically connecting to the rewritable nonvolatile memory module; and
a memory management circuit electrically connected to the host interface and the memory interface,
wherein the memory management circuit is configured to read a first physical programming cell in the first set of physical programming cells to obtain first data,
wherein the memory management circuit is further configured to correct the first data according to a first error checking and correcting code corresponding to the first data to obtain first corrected data,
wherein the memory management circuit is further configured to read at least one second physical programming unit in the first set of physical programming units to obtain second data,
wherein the memory management circuit is further configured to adjust a first read voltage for reading the plurality of first memory cells to a second read voltage according to the first data, the first corrected data, and the second data.
9. The memory control circuit unit of claim 8, wherein each of the plurality of memory cells has one of a plurality of memory states, wherein in an operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data,
the memory management circuit is further configured to perform exclusive-or operation on the first data and the first corrected data to obtain third data, where the third data has a plurality of bits and each of the plurality of bits corresponds to one of the plurality of first storage units.
10. The memory control circuit unit of claim 9, wherein in an operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data,
when at least one first bit of the bits of the third data is a first value and the storage state of at least one second storage unit of the first storage units corresponding to the first bit is a first storage state of the storage states, the memory management circuit is further configured to determine that the second storage unit is located in a first error interval in the storage state subdivision diagram, and
when at least one second bit of the bits of the third data is the first value and the storage state of at least one third storage unit of the first storage units corresponding to the second bit is a second storage state of the storage states, the memory management circuit is further configured to determine that the third storage unit is located in a second error interval in the storage state subdivision diagram.
11. The memory control circuit unit of claim 10, wherein in the storage state distribution map, the first storage state is adjacent to the second storage state, the second storage cell located in the first error interval belongs to the second storage state and the second storage cell is identified as the first storage state according to the first read voltage, and
the third memory cell located in the second error interval belongs to the first memory state and is identified as the second memory state according to the first read voltage.
12. The memory control circuit unit of claim 11, wherein in an operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data,
the memory management circuit is further configured to calculate a first number of the second memory cells located in the first error interval,
the memory management circuit is further configured to calculate a second number of the third memory cells located in the second error interval,
when the first number is greater than the second number, the memory management circuit is further configured to adjust the first read voltage to the second read voltage such that the second read voltage is less than the first read voltage, an
When the first number is smaller than the second number, the memory management circuit is further configured to adjust the first read voltage to the second read voltage so that the second read voltage is greater than the first read voltage.
13. The memory control circuit unit of claim 8, wherein after the operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data,
the memory management circuit is further configured to record the second read voltage, an
When reading the plurality of first memory cells, the memory management circuit is further configured to read the first memory cells using the second read voltage.
14. The memory control circuit cell of claim 8, wherein
The memory management circuit is further configured to correct the second data according to at least one second error checking and correcting code corresponding to the second data to obtain at least one second corrected data,
the memory management circuit is further configured to adjust a third read voltage for reading the plurality of first memory cells to a fourth read voltage according to the first data, the second data, and the second corrected data.
15. A memory storage device, comprising:
the connection interface unit is used for electrically connecting to a host system;
the memory module comprises a plurality of memory units, wherein the memory units are arranged at the intersections of a plurality of word lines and a plurality of bit lines, the word lines comprise first word lines, and a plurality of first memory units in the memory units on the first word lines form a first physical programming unit group; and
a memory control circuit unit electrically connected to the connection interface unit and the rewritable nonvolatile memory module,
wherein the memory control circuit unit is used for reading a first physical programming unit in the first physical programming unit group to obtain first data,
wherein the memory control circuit unit is further configured to correct the first data according to a first error checking and correcting code corresponding to the first data to obtain first corrected data,
wherein the memory control circuit unit is further configured to read at least one second physical programming unit in the first physical programming unit group to obtain second data,
wherein the memory control circuit unit is further configured to adjust a first read voltage for reading the plurality of first memory cells to a second read voltage according to the first data, the first corrected data, and the second data.
16. The memory storage device of claim 15, wherein each of the plurality of memory cells has one of a plurality of memory states, wherein in an operation to adjust the first read voltage for reading the plurality of first memory cells to the second read voltage based on the first data, the first corrected data, and the second data,
the memory control circuit unit is further configured to perform an exclusive-or operation on the first data and the first corrected data to obtain third data, where the third data has a plurality of bits and each of the plurality of bits corresponds to one of the plurality of first storage units.
17. The memory storage device of claim 16, wherein in operation to adjust the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data,
when at least one first bit of the bits of the third data is a first value and the state of at least one second memory cell of the first memory cells corresponding to the first bit is a first memory state of the memory states, the memory control circuit unit is further configured to determine that the second memory cell is in a first error interval in a memory state subdivision diagram, and
when at least one second bit of the bits of the third data is the first value and the storage state of at least one third storage unit of the first storage units corresponding to the second bit is a second storage state of the storage states, the memory control circuit unit is further configured to determine that the third storage unit is located in a second error interval in the storage state subdivision diagram.
18. The memory storage device of claim 17, wherein in the storage status distribution map, the first storage status is adjacent to the second storage status, the second storage cell located in the first error interval belongs to the second storage status and the second storage cell is identified as the first storage status according to the first read voltage, and
the third memory cell located in the second error interval belongs to the first memory state and is identified as the second memory state according to the first read voltage.
19. The memory storage device of claim 18, wherein in operation to adjust the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data,
the memory control circuit unit is further used for calculating a first number of the second memory cells located in the first error interval,
the memory control circuit unit is further used for calculating a second number of the third memory cells located in the second error interval,
when the first number is greater than the second number, the memory control circuit unit is further configured to adjust the first read voltage to the second read voltage such that the second read voltage is less than the first read voltage, an
When the first number is smaller than the second number, the memory control circuit unit is further configured to adjust the first reading voltage to the second reading voltage so that the second reading voltage is larger than the first reading voltage.
20. The memory storage device of claim 15, wherein after an operation to adjust the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data,
the memory control circuit unit is further configured to record the second read voltage, an
When reading the plurality of first memory cells, the memory control circuit unit is further configured to read the first memory cells using the second read voltage.
21. The memory storage device of claim 15, wherein
The memory control circuit unit is further used for correcting the second data according to at least one second error checking and correcting code corresponding to the second data to obtain at least one second corrected data, an
The memory control circuit unit is further configured to adjust a third read voltage for reading the plurality of first memory cells to a fourth read voltage according to the first data, the second data, and the second corrected data.
Technical Field
The invention relates to a voltage adjusting method, a memory control circuit unit and a memory storage device.
Background
Digital cameras, mobile phones and MP3 players have grown rapidly over the years, resulting in a rapid increase in consumer demand for storage media. Since the rewritable non-volatile memory module (e.g., flash memory) has the characteristics of non-volatility, power saving, small volume, and no mechanical structure, it is very suitable for being built in various portable multimedia devices as described above.
Generally, when data is read from the rewritable nonvolatile memory module by using a read voltage, the memory management circuit can decode the read data to obtain the data to be read. However, when the decoding fails, the memory management circuit performs a re-Read (Retry-Read) mechanism to retrieve another Read voltage, and reads with the another Read voltage to retrieve the Read data and decode the Read data. The
In particular, through the above re-reading mechanism, an optimal read voltage for reading a plurality of memory cells on the same word line can be found, and the optimal read voltage can be used to read data of the plurality of memory cells and successfully decode the data. It is noted, however, that the optimum read voltage for reading memory cells located on one word line may not be suitable for reading memory cells located on another word line. In other words, the optimum read voltage for reading memory cells located on one word line may not be the optimum read voltage for reading memory cells located on another word line. The order of the re-read voltages used in determining the optimal read voltage for reading on one word line may not be suitable for determining the optimal read voltage for reading on another word line. Generally, therefore, the process of determining the optimum read voltage usually results in a reduction in the performance of the memory controller. Therefore, how to quickly find the optimum reading voltage for reading the memory cell is one of the problems to be solved by those skilled in the art.
Disclosure of Invention
The invention provides a voltage adjusting method, a memory control circuit unit and a memory storage device, which can effectively calculate the optimal reading voltage for reading a storage unit for subsequent reading, thereby improving the probability of successful decoding, reducing the times of re-reading and effectively improving the execution efficiency of a memory controller.
The invention provides a voltage adjusting method for a rewritable nonvolatile memory module, wherein the rewritable nonvolatile memory module comprises a plurality of memory cells, the memory cells are arranged at the intersections of a plurality of word lines and a plurality of bit lines, the word lines comprise a first word line, and a plurality of first memory cells in the memory cells on the first word line form a first physical programming cell group, the voltage adjusting method comprises the following steps: reading a first physical programming cell in the first physical programming cell group to obtain first data; correcting the first data according to a first error check and correction code corresponding to the first data to obtain first corrected data; reading at least one second physical programming unit in the first physical programming unit group to obtain second data; adjusting a first read voltage for reading the first memory cells to a second read voltage according to the first data, the first corrected data, and the second data.
In an embodiment of the invention, wherein each of the plurality of memory cells has one of a plurality of memory states, wherein the step of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data comprises: and performing exclusive-or operation on the first data and the first corrected data to obtain third data, wherein the third data has a plurality of bits, and each bit of the plurality of bits corresponds to one of the plurality of first storage units.
In an embodiment of the present invention, the adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data, and the second data further includes: when at least one first bit in the bits of the third data is a first value and the storage state of at least one second storage unit in the first storage units corresponding to the first bit is a first storage state in the storage state subdistrict, judging that the second storage unit is positioned in a first error interval in the storage state subdistrict; and when at least one second bit of the bits of the third data is the first numerical value and the storage state of at least one third storage unit of the first storage units corresponding to the second bit is a second storage state of the storage states, determining that the third storage unit is located in a second error interval in the storage state subdivision diagram.
In an embodiment of the invention, wherein in the storage status distribution map, the first storage status is adjacent to the second storage status, the second storage unit located in the first error interval belongs to the second storage status and is identified as the first storage status according to the first read voltage, and the third storage unit located in the second error interval belongs to the first storage status and is identified as the second storage status according to the first read voltage.
In an embodiment of the invention, the adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data further includes: calculating a first number of the second memory cells located in the first error interval; calculating a second number of the third memory cells located in the second error interval; when the first number is greater than the second number, adjusting the first read voltage to the second read voltage such that the second read voltage is less than the first read voltage; and when the first number is smaller than the second number, adjusting the first reading voltage to the second reading voltage so that the second reading voltage is larger than the first reading voltage.
In an embodiment of the invention, after the step of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the method further includes: recording the second reading voltage; and when reading the plurality of first memory cells, reading the first memory cells using the second read voltage.
In an embodiment of the present invention, the method further includes: correcting the second data according to at least one second error check and correction code corresponding to the second data to obtain at least one second corrected data; and adjusting a third read voltage for reading the plurality of first memory cells to a fourth read voltage according to the first data, the second data and the second corrected data.
The invention provides a memory control circuit unit, which is used for a rewritable nonvolatile memory module, wherein the rewritable nonvolatile memory module comprises a plurality of memory units, the memory units are arranged at the intersections of a plurality of word lines and a plurality of bit lines, the word lines comprise first word lines, and a plurality of first memory units in the memory units on the first word lines form a first physical programming unit group. The memory control circuit unit includes: a host interface, a memory interface, and memory management circuitry. The host interface is used for electrically connecting to a host system. The memory interface is electrically connected to the rewritable nonvolatile memory module. The memory management circuit is electrically connected to the host interface and the memory interface. The memory management circuit is used for executing the following operations: reading a first physical programming cell in the first physical programming cell group to obtain first data; correcting the first data according to a first error check and correction code corresponding to the first data to obtain first corrected data; reading at least one second physical programming unit in the first physical programming unit group to obtain second data; adjusting a first read voltage for reading the plurality of first memory cells to a second read voltage according to the first data, the first corrected data, and the second data.
In an embodiment of the invention, each of the plurality of memory cells has one of a plurality of memory states, wherein in an operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the memory management circuit is further configured to: performing an exclusive-or operation on the first data and the first corrected data to obtain third data, wherein the third data has a plurality of bits and each of the plurality of bits corresponds to one of the plurality of first storage units.
In an embodiment of the invention, in an operation of adjusting the first read voltage for reading the first memory cells to the second read voltage according to the first data, the first corrected data and the second data, when at least one first bit of the bits of the third data is a first value and a storage state of at least one second memory cell of the first memory cells corresponding to the first bit is a first storage state of the storage states, the memory management circuit is further configured to determine that the second memory cell is located in a first error interval in a storage state histogram, and when at least one second bit of the bits of the third data is the first value and a storage state of at least one third memory cell of the first memory cells corresponding to the second bit is a second storage state of the storage states The memory management circuit is further configured to determine that the third memory cell is in a second error interval in the memory status subdivision diagram.
In an embodiment of the invention, wherein in the storage status distribution map, the first storage status is adjacent to the second storage status, the second storage unit located in the first error interval belongs to the second storage status and is identified as the first storage status according to the first read voltage, and the third storage unit located in the second error interval belongs to the first storage status and is identified as the second storage status according to the first read voltage.
In an embodiment of the invention, in an operation of adjusting the first read voltage for reading the first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the memory management circuit is further configured to: calculating a first number of the second memory cells located in the first error interval; calculating a second number of the third memory cells located in the second error interval; when the first number is greater than the second number, adjusting the first read voltage to the second read voltage such that the second read voltage is less than the first read voltage; and when the first number is smaller than the second number, adjusting the first reading voltage to the second reading voltage so that the second reading voltage is larger than the first reading voltage.
In an embodiment of the invention, after the operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the memory management circuit is further configured to: recording the second read voltage, and reading the first memory cells using the second read voltage when reading the plurality of first memory cells.
In an embodiment of the invention, the memory management circuit is further configured to perform the following operations: correcting the second data according to at least one second error check and correction code corresponding to the second data to obtain at least one second corrected data; and adjusting a third read voltage for reading the plurality of first memory cells to a fourth read voltage according to the first data, the second data and the second corrected data.
The invention provides a memory storage device, which comprises a connection interface unit, a rewritable nonvolatile memory module and a memory control circuit unit. The connection interface unit is used for electrically connecting to a host system. The rewritable nonvolatile memory module comprises a plurality of memory cells, wherein the memory cells are arranged at the intersections of a plurality of word lines and a plurality of bit lines, the word lines comprise first word lines, and a plurality of first memory cells in the memory cells on the first word lines form a first physical programming unit group. The memory control circuit unit is electrically connected to the connection interface unit and the rewritable nonvolatile memory module. The memory control circuit unit is used for executing the following operations: reading a first physical programming cell in the first physical programming cell group to obtain first data; correcting the first data according to a first error check and correction code corresponding to the first data to obtain first corrected data; reading at least one second physical programming unit in the first physical programming unit group to obtain second data; adjusting a first read voltage for reading the plurality of first memory cells to a second read voltage according to the first data, the first corrected data, and the second data.
In an embodiment of the invention, each of the plurality of memory cells has one of a plurality of memory states, wherein in an operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the memory control circuit unit is further configured to perform the following operations: and performing exclusive-or operation on the first data and the first corrected data to obtain third data, wherein the third data has a plurality of bits, and each bit of the plurality of bits corresponds to one of the plurality of first storage units.
In an embodiment of the invention, in an operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the memory control circuit unit is further configured to: when at least one first bit in the bits of the third data is a first value and the storage state of at least one second storage unit in the first storage units corresponding to the first bit is a first storage state in the storage states, determining that the second storage unit is located in a first error interval in a storage state subdivision diagram; and when at least one second bit of the bits of the third data is the first numerical value and the storage state of at least one third storage unit of the first storage units corresponding to the second bit is a second storage state of the storage states, determining that the third storage unit is located in a second error interval in the storage state subdivision diagram.
In an embodiment of the invention, wherein in the storage status distribution map, the first storage status is adjacent to the second storage status, the second storage unit located in the first error interval belongs to the second storage status and is identified as the first storage status according to the first read voltage, and the third storage unit located in the second error interval belongs to the first storage status and is identified as the second storage status according to the first read voltage.
In an embodiment of the invention, in an operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the memory control circuit unit is further configured to: calculating a first number of the second memory cells located in the first error interval; calculating a second number of the third memory cells located in the second error interval; when the first number is greater than the second number, adjusting the first read voltage to the second read voltage such that the second read voltage is less than the first read voltage; and when the first number is smaller than the second number, adjusting the first reading voltage to the second reading voltage so that the second reading voltage is larger than the first reading voltage.
In an embodiment of the invention, after the operation of adjusting the first read voltage for reading the plurality of first memory cells to the second read voltage according to the first data, the first corrected data and the second data, the memory control circuit unit is further configured to perform the following operations: recording the second reading voltage; and when reading the plurality of first memory cells, reading the first memory cells using the second read voltage.
In an embodiment of the invention, the memory control circuit unit is further configured to perform the following operations: correcting the second data according to at least one second error check and correction code corresponding to the second data to obtain at least one second corrected data; and adjusting a third read voltage for reading the plurality of first memory cells to a fourth read voltage according to the first data, the second data and the second corrected data.
Based on the above, the voltage adjustment method, the memory control circuit unit and the memory storage device of the invention can efficiently calculate the optimal read voltage for reading the memory cell for subsequent reading, thereby increasing the probability of successful decoding and reducing the number of times of re-reading, and effectively improving the efficiency of the memory management circuit.
In order to make the aforementioned and other features and advantages of the invention more comprehensible, embodiments accompanied with figures are described in detail below.
Drawings
FIG. 1 is a diagram illustrating 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 diagram illustrating a host system, a memory storage device and an I/O device according to another example embodiment of the invention.
FIG. 3 is a diagram illustrating 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 present invention.
FIG. 5 is a schematic block diagram of a rewritable non-volatile memory module according to an example embodiment.
FIG. 6 is a schematic diagram of an array of memory cells according to an example embodiment.
FIG. 7 is a graph illustrating a statistical distribution of gate voltages corresponding to write data stored in an array of memory cells, according to an example embodiment.
FIG. 8 is a diagram illustrating reading data from a memory cell according to an example embodiment.
FIG. 9 is a schematic diagram illustrating reading data from a memory cell according to another example embodiment.
FIG. 10 is a diagram illustrating an example of a physically erased cell in accordance with the present example embodiment.
FIG. 11 is a schematic block diagram of a memory control circuit unit according to an exemplary embodiment of the present invention.
Fig. 12 is a diagram illustrating multi-frame coding according to an exemplary embodiment of the present invention.
FIG. 13 is a diagram illustrating a re-read mechanism, according to an example embodiment.
Fig. 14A to 14C are schematic diagrams illustrating adjusting a read voltage according to a first exemplary embodiment of the invention.
FIGS. 15A-15C are schematic diagrams illustrating adjusting a read voltage according to a second exemplary embodiment of the invention.
FIG. 16 is a flowchart illustrating a voltage regulation method according to an example embodiment.
FIG. 17 is a flowchart illustrating a method for adjusting a read voltage according to the number of memory cells in an error window according to an example embodiment.
Description of the reference numerals
10: memory storage device
11: host system
110: system bus
111: processor with a memory having a plurality of memory cells
112: random access memory
113: read-only memory
114: data transmission interface
12: input/output (I/O) device
20: main machine board
201: u disk
202: memory card
203: solid state disk
204: wireless memory storage device
205: global positioning system module
206: network interface card
207: wireless transmission device
208: keyboard with a keyboard body
209: screen
210: horn type loudspeaker
32: SD card
33: CF card
34: embedded memory device
341: embedded multimedia card
342: embedded multi-chip packaging storage device
402: connection interface unit
404: memory control circuit unit
406: rewritable nonvolatile memory module
2202: memory cell array
2204: word line control circuit
2206: bit line control circuit
2208: row decoder
2210: data input/output buffer
2212: control circuit
502. C1-C8: memory cell
504: bit line
506: word line
508: common source line
512: select gate drain transistor
514: selective gate source transistor
LSB: least significant bit
CSB: middle effective bit
MSB: most significant bit
VA, VA1, VB, VC, VD, VE, VF, VG, 1440-1444: read voltage
1301. 1303, 1305, 1307, 1309: physical programming unit group
702: memory management circuit
704: host interface
706: memory interface
708: error checking and correcting circuit
710: buffer memory
712: power management circuit
801(1) -801 (r): position of
820: encoding data
810(0) -810 (E): physical programming unit
1410. 1420: distribution of
1430: region(s)
G1: physical programming unit group
LP 1-LP 2: lower physical programming unit
MP 2: middle physical programming unit
UP 1-UP 2: physical programming unit
LX1, LX 2: exclusive or data
700. 701, a step of: interval(s)
T1, T2: table form
S1601: reading a first physical programming cell in a first physical programming cell group to obtain first data, wherein the first physical programming cell group is composed of a plurality of first memory cells
S1603: correcting the first data according to the first error check and correction code corresponding to the first data to obtain the first corrected data
S1605: reading a second physical programming cell in the first set of physical programming cells to obtain second data
S1607: adjusting a first read voltage for reading the first memory cell to a second read voltage according to the first data, the first corrected data and the second data
S1609: correcting the second data according to the second error check and correction code corresponding to the second data to obtain second corrected data
S1611: adjusting a third read voltage for reading the first memory cell to a fourth read voltage according to the first data, the second data and the second corrected data
S1701: a step of performing exclusive-or operation on the first data and the first corrected data to obtain third data, wherein the third data has a plurality of bits, and each bit of the plurality of bits corresponds to one of the plurality of first storage units
S1703: a step of determining that the second memory cell is located in the first error interval in the memory state subdivision diagram when at least one first bit of a plurality of bits of the third data is a first value and the memory state of at least one second memory cell of the plurality of first memory cells corresponding to the first bit is a first memory state
S1705: a step of determining that the third memory cell is located in the second error interval in the memory state subdivision diagram when at least one second bit of the bits of the third data is the first value and the memory state of at least one third memory cell of the first memory cells corresponding to the second bit is the second memory state
S1707: calculating a first number of second memory cells located in a first error interval
S1709: calculating a second number of third memory cells in a second error interval
S1711: judging whether the first number is larger or smaller than the second number
S1713: when the first number is larger than the second number, adjusting the first reading voltage to a second reading voltage so that the second reading voltage is smaller than the first reading voltage
S1715: when the first number is smaller than the second number, adjusting the first reading voltage to a second reading voltage so that the second reading voltage is larger than the first reading voltage
Detailed Description
Generally, a memory storage device (also referred to as a memory storage system) includes a rewritable non-volatile memory module (rewritable non-volatile memory module) and a controller (also referred to as a control circuit). Typically, memory storage devices are used with a host system so that the host system can write data to or read data from the memory storage devices.
FIG. 1 is a diagram illustrating 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 diagram illustrating a host system, a memory storage device and an I/O device according to another example embodiment of the invention.
Referring to fig. 1 and 2, the
In the present exemplary embodiment, the
In the present exemplary embodiment, the
In an exemplary embodiment, the host system referred to is substantially any system that can cooperate with a memory storage device to store data. Although the host system is described as a computer system in the above exemplary embodiment, fig. 3 is a schematic diagram of a host system and a memory storage device according to another exemplary embodiment of the invention. Referring to fig. 3, in another exemplary embodiment, the
FIG. 4 is a schematic block diagram of a memory storage device according to an exemplary embodiment of the present invention.
Referring to fig. 4, the
In the present exemplary embodiment,
The memory
The rewritable
The memory cells in the rewritable
FIG. 5 is a schematic block diagram of a rewritable non-volatile memory module according to an example embodiment. FIG. 6 is a schematic diagram of an array of memory cells according to an example embodiment.
Referring to fig. 5 and fig. 6, the rewritable
In the present exemplary embodiment, the
The memory cells in the rewritable
FIG. 7 is a graph illustrating a statistical distribution of gate voltages corresponding to write data stored in an array of memory cells, according to an example embodiment.
Referring to fig. 7, taking MLC NAND flash as an example, each memory cell has 4 memory states with different threshold voltages, and the memory states represent bits "11", "10", "00" and "01", respectively. In other words, each memory state includes a Least Significant Bit (LSB) and a Most Significant Bit (MSB). In the present exemplary embodiment, the 1 st bit from the left side in the memory states (i.e., "11", "10", "00", and "01") is the LSB, and the 2 nd bit from the left side is the MSB. Thus, in this example embodiment, each memory cell can store 2 bits. It should be understood that the threshold voltages and their corresponding memory states shown in FIG. 7 are only exemplary. In another exemplary embodiment of the present invention, the correspondence between the threshold voltage and the memory state may be arranged in "11", "10", "01" and "00" or other arrangements as the threshold voltage is larger. In addition, in another exemplary embodiment, it is also possible to define that the 1 st bit from the left side is the MSB and the 2 nd bit from the left side is the LSB.
In an example embodiment where a memory cell can store multiple bits (e.g., MLC or TLC NAND flash memory module), physical program cells belonging to the same word line can be classified into at least a lower physical program cell and an upper physical program cell. For example, in an MLC NAND flash memory module, the Least Significant Bit (LSB) of a cell belongs to the lower physical programming cell, and the Most Significant Bit (MSB) of the cell belongs to the upper physical programming cell. In an example embodiment, the lower physical program unit is also referred to as a fast page (fast page), and the upper physical program unit is also referred to as a slow page (slow page). In addition, in the TLC NAND flash memory module, the Least Significant Bit (LSB) of a cell belongs to the lower physical programming cell, the middle Significant Bit (CSB) of the cell belongs to the middle physical programming cell, and the Most Significant Bit (MSB) of the cell belongs to the upper physical programming cell.
Fig. 8 is a diagram illustrating reading data from a memory cell according to an example embodiment, which is an example of a mlc nand flash memory.
Referring to FIG. 8, a read operation of the memory cells of the
FIG. 9 is a schematic diagram illustrating reading data from a memory cell according to another example embodiment.
Referring to fig. 9, for an example of a TLC NAND type flash memory, each memory state includes a least significant Bit LSB of a1 st Bit from the left side, a middle significant Bit (CSB) of a 2 nd Bit from the left side, and a most significant Bit MSB of a 3 rd Bit from the left side. In this example, the memory cell has 8 memory states (i.e., "111", "110", "100", "101", "001", "000", "010", and "011") according to different threshold voltages. The bit stored in the memory cell can be identified by applying the read voltages VA-VG to the control gates.
It should be noted that the arrangement order of the 8 storage states in fig. 9 can be determined by the design of the manufacturer, but is not limited to the arrangement manner of the present example.
In addition, the memory cells of the rewritable
Alternatively, if the rewritable
In the exemplary embodiment, the physical program cell is a minimum cell to be programmed. That is, the physical programming unit is the smallest unit for writing data. For example, a physical program unit is a physical page (page) or a physical fan (sector). If the physical program units are physical pages, the physical program units usually include a data bit region and a redundancy (redundancy) bit region. The data bit area includes a plurality of physical sectors for storing user data, and the redundant bit area stores system data (e.g., error correction codes). In the present exemplary embodiment, the data bit area includes 32 physical fans, and the size of one physical fan is 512 bytes (B). However, in other example embodiments, 8, 16, or a greater or lesser number of physical fans may be included in the data bit region, and the size of each physical fan may also be greater or lesser. On the other hand, the physical erase cell is the minimum unit of erase. That is, each physically erased cell contains one of the minimum number of memory cells that are erased. For example, a physical erase unit is a physical block (block).
FIG. 10 is a diagram illustrating an example of a physically erased cell in accordance with the present example embodiment.
Referring to fig. 10, in the present exemplary embodiment, it is assumed that one physical erase cell is composed of a plurality of physical program cell groups, wherein each physical program cell group includes a lower physical program cell, a middle physical program cell and an upper physical program cell composed of a plurality of memory cells arranged on the same word line. For example, in the physically erased cell, the 0 th physically programmed cell belonging to the lower physically programmed cell, the 1 st physically programmed cell belonging to the middle physically programmed cell, and the 2 nd physically programmed cell belonging to the upper physically programmed cell are considered as one physically programmed cell group. Similarly, the 3 rd, 4 th, and 5 th physical programming cells are considered as a physical programming cell group, and so on, other physical programming cells are divided into a plurality of physical programming cell groups according to the same manner.
FIG. 11 is a schematic block diagram of a memory control circuit unit according to an exemplary embodiment of the present invention.
Referring to FIG. 11, the memory
The
In the exemplary embodiment, the control instructions of the
In another exemplary embodiment, the control instructions of the
In addition, in another exemplary embodiment, the control instructions of the
The
The
The error checking and correcting
In an exemplary embodiment, the memory
The
In the exemplary embodiment, the error checking and correcting
Fig. 12 is a diagram illustrating multi-frame coding according to an exemplary embodiment of the present invention.
Referring to fig. 12, taking the example of encoding the data stored in the physical programming units 810(0) to 810(E) to generate the corresponding encoded
In addition, in another exemplary embodiment of fig. 12, the data for generating the encoded
In particular, FIG. 13 is a diagram illustrating a re-read mechanism, according to an example embodiment.
Referring to FIG. 13, taking SLC flash memory as an example, the
In this example embodiment, when the memory cells are to be read, the
If the decoding fails, it indicates that the memory cells store uncorrectable error bits. If the decoding fails, in the re-reading mechanism, the
In other words, when there are uncorrectable error bits, some of the verification bits of the memory cells are changed by retrieving the read voltage, thereby giving an opportunity to change the decoding result of the decoding operation. Logically, the re-fetching of the read voltage is to flip (flip) bits of a codeword and re-decode the new codeword. In some cases, codewords that cannot be decoded before flipping (with uncorrectable erroneous bits), may be decoded after flipping. Also, in an exemplary embodiment, the
It is noted that fig. 13 illustrates an SLC flash memory, but the step of retrieving the read voltage may be applied to MLC or TLC flash memory. As shown in FIG. 8, changing the read voltage VA flips the LSB of a cell, while changing the read voltage VB or VC flips the MSB of a cell. Thus, changing the read voltage VA, VB or VC can change one codeword to another. The result of changing the code word is also applicable to the TLC flash memory of fig. 9. The present invention is not limited to SLC, MLC or TLC flash memory.
Through the above re-reading mechanism, an optimal read voltage for reading a plurality of memory cells on the same word line can be found, and the optimal read voltage can be used to read out data of the plurality of memory cells and successfully decode the data. In particular, the optimal read voltage, such as the
Based on the above, the voltage adjustment method provided by the present invention can efficiently calculate the optimal read voltage for reading the memory cell for subsequent reading, thereby increasing the probability of successful decoding and reducing the number of re-reading, and effectively improving the performance of the
The voltage adjustment method proposed by the present invention is described in several embodiments below.
[ first embodiment ]
The first exemplary embodiment is described by taking an MLC NAND type flash memory module as an example. Similar to FIG. 8, each memory cell has 4 memory states with different threshold voltages, and these memory states represent "11", "10", "00" and "01", respectively. In fig. 8, the
Fig. 14A to 14C are schematic diagrams illustrating adjusting a read voltage according to a first exemplary embodiment of the invention.
Referring to FIG. 14A and FIG. 14B, assume that the rewritable
In the present exemplary embodiment, the
The
In addition, the
In more detail, in the process of adjusting the read voltage VA to the read voltage VA1, first, the
In the exclusive-or data LX1, when a bit has a value of "1", the cell corresponding to the bit is in an error interval in the memory status subdivision diagram. More specifically, referring to fig. 14A and 14B, taking the 1 st bit of the exclusive or data LX1 as an example, since the value of the 1 st bit of the exclusive or data LX1 is "1", it indicates that the memory cell C1 actually belongs to the error interval 701 (also referred to as the first error interval) in fig. 14B. The memory cell C1 in the
In addition, since the values of the 2 nd and 5 th bits of the exclusive or data LX1 are "0", it means that the memory cell C2 and the memory cell C5 are not in the error interval. That is, the memory states of the memory cells not in the error interval are correctly recognized according to the read voltage. Since the value of the 3 rd bit of the exclusive OR data LX1 is "1", the representative memory cell C3 belongs to one of the error intervals in the memory status distribution diagram shown in FIG. 8.
Taking the example of adjusting the read voltage VA for distinguishing the memory states "10" and "00" to the optimal read voltage VA1, the
The
Then, the
It should be noted that the magnitude of the read voltage adjustment (i.e., the aforementioned X volts) is determined according to the ratio of the first number and the second number. For example, the
However, the present invention is not limited thereto, and in other embodiments, the
In addition, fig. 14C illustrates a case when the first number is larger than the second number, as another example.
In detail, referring to fig. 14C, if the first number (for example, the value is "3") calculated in the above manner is greater than the second number (for example, the value is "1"), the area of the
After determining the optimal read voltage VA1, the
In particular, although the foregoing example is for adjusting the read voltage VA as in FIG. 8. However, the invention is not limited thereto, and in other embodiments, the
[ second embodiment ]
The second exemplary embodiment is described by taking a TLC NAND type flash memory module as an example. Similar to fig. 9, each memory cell has 8 memory states with different threshold voltages, and these memory states represent "111", "110", "100", "101", "001", "000", "010", and "011", respectively. In fig. 9, the
FIGS. 15A-15C are schematic diagrams illustrating adjusting a read voltage according to a second exemplary embodiment of the invention.
Referring to FIG. 15A and FIG. 15B, assume that the rewritable
In the present exemplary embodiment, the
The
In addition, the
In more detail, in the process of adjusting the read voltage VA to the read voltage VA1, first, the
In the exclusive-or data LX2, when a bit has a value of "1", the cell corresponding to the bit is in an error interval in the memory status subdivision diagram. More specifically, referring to fig. 15A and fig. 15B, taking the 1 st bit of the exclusive or data LX2 as an example, since the value of the 1 st bit of the exclusive or data LX2 is "1", it indicates that the memory cell C1 actually belongs to the error interval 701 (also referred to as the first error interval) in fig. 15B. The memory cell C1 in the
In addition, since the values of the 2 nd and 5 th bits of the exclusive or data LX2 are "0", it means that the memory cell C2 and the memory cell C5 are not in the error interval. That is, the memory states of the memory cells not in the error interval are correctly recognized according to the read voltage. Since the value of the 3 rd bit of the exclusive OR data LX2 is "1", the representative memory cell C3 belongs to one of the error intervals in the memory status distribution diagram shown in FIG. 9.
Taking the example of adjusting the read voltage VA for distinguishing the memory states "101" and "001" to the optimal read voltage VA1, the
The
Then, the
It should be noted that the magnitude of the read voltage adjustment (i.e., the aforementioned X volts) is determined according to the ratio of the first number and the second number. For example, the
However, the present invention is not limited thereto, and in other embodiments, the
In addition, fig. 15C is another example of the case when the first number is larger than the second number.
In detail, referring to fig. 15C, if the first number (for example, the value is "3") calculated in the above manner is greater than the second number (for example, the value is "1"), the area of the
After determining the optimal read voltage VA1, the
In particular, although the foregoing example is for adjusting the read voltage VA as in FIG. 9. However, the invention is not limited thereto, and in other embodiments, the
FIG. 16 is a flowchart illustrating a voltage regulation method according to an example embodiment.
Referring to fig. 16, in step S1601, the
In addition, the
FIG. 17 is a flowchart illustrating a method for adjusting a read voltage according to the number of memory cells in an error window according to an example embodiment. The flow of fig. 17 is used to describe step S1607 in fig. 16 in detail.
Referring to fig. 17, in step S1701, the
When the first number is greater than the second number, in step S1713, the
When the first number is smaller than the second number, in step S1715, the
In summary, the voltage adjustment method, the memory control circuit unit and the memory storage device of the invention can efficiently calculate the optimal read voltage for reading the memory cell for subsequent reading, thereby increasing the probability of successful decoding and reducing the number of re-reading, and effectively improving the performance of the memory management circuit.
Although the present invention has been described with reference to the above embodiments, it should be understood that the invention is not limited to the embodiments, and various changes and modifications can be made by those skilled in the art without departing from the spirit and scope of the invention.
- 上一篇:一种医用注射器针头装配设备
- 下一篇:一种移位寄存器和显示面板