US20140056064A1 - Memory system and operating method thereof - Google Patents
Memory system and operating method thereof Download PDFInfo
- Publication number
- US20140056064A1 US20140056064A1 US14/068,143 US201314068143A US2014056064A1 US 20140056064 A1 US20140056064 A1 US 20140056064A1 US 201314068143 A US201314068143 A US 201314068143A US 2014056064 A1 US2014056064 A1 US 2014056064A1
- Authority
- US
- United States
- Prior art keywords
- memory cell
- read
- memory cells
- interference
- memory
- Prior art date
- Legal status (The legal status 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 status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/56—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency
- G11C11/5621—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using storage elements with more than two stable states represented by steps, e.g. of voltage, current, phase, frequency using charge storage in a floating gate
- G11C11/5642—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0483—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells having several storage transistors connected in series
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/26—Sensing or reading circuits; Data output circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/34—Determination of programming status, e.g. threshold voltage, overprogramming or underprogramming, retention
- G11C16/3418—Disturbance prevention or evaluation; Refreshing of disturbed memory data
- G11C16/3427—Circuits or methods to prevent or reduce disturbance of the state of a memory cell when neighbouring cells are read or written
Definitions
- the present general inventive concept disclosed herein relates to a semiconductor memory device, and more particularly, to a memory system including nonvolatile memory device and an operating method thereof.
- a semiconductor memory device is a micro electronic device most necessary for digital logic designs that include computers that have a microprocessor, with applications ranging from satellites to consumer electronic technologies.
- a semiconductor memory device is largely divided into a volatile semiconductor memory device and a nonvolatile semiconductor memory device.
- the nonvolatile semiconductor memory device may store data even when a power source is shut off. Data stored in nonvolatile memories may be semipermanent or reprogrammed according to memory manufacturing technologies.
- the nonvolatile semiconductor memory device is used for storing programs and micro codes in a wide range of applications such as computers, avionics, communication, and consumer electronic technologies.
- nonvolatile memory device As a representative example of a nonvolatile memory device, there is a flash memory device. Recently, as the high integration of memory devices is increasingly required, multi-bit memory devices are being generalized which store multi-bits in one memory cell. In the memory cells of a multi-bit flash memory device, the interval between threshold voltage distributions should be densely controlled. Also, technologies are being researched for improving a degree of integration for increasing the number of memory cells per unit area in order to meet high-capacity requirements.
- the above-described high capacity memory devices may have decreased reliability of data that are stored in memory cells.
- technology is urgently required to realize the high capacity of nonvolatile memory devices and enhance the reliability of the nonvolatile memory devices.
- Exemplary embodiments of the present general inventive concept provide a memory system and an operating method thereof to minimize prevent a read error due to the difference of interference the memory cells of a nonvolatile memory device receive from peripheral memory cells.
- Exemplary embodiments of the present general inventive concept may provide an operating method of a memory system, which includes a nonvolatile memory device, including reading an observation memory cell at least one time with different read voltages to configure a first read data symbol, reading a plurality of interference memory cells adjacent to the observation memory cell at least one time with different read voltages to configure a second read data symbol, and determining a logical value of the observation memory cell, based on the first and second read data symbols.
- the determining of a logical value may include changing the first read data symbol into a first bit symbol, changing the second read data symbol into a second bit symbol, and comparing the first and second bit symbols to determine the logical value of the observation memory cell.
- the comparing of the first and second bit symbols may include comparing the first and second bit symbols to calculate an interference that the observation memory cell receives, and determining the logical value of the observation memory cell according to at least the first bit symbol and the calculated interference.
- the determining of the logical value may include calculating a likelihood ratio according to at least the first bit symbol and the calculated interference, and determining the logical value of the observation memory cell according to at least the calculated likelihood ratio.
- the configuring of a second read data symbol may include reading interference memory cells, which share a word line with the observation memory cell, at least one time with different read voltages to configure the second read data symbols of the interference memory cells.
- the configuring of a first read data symbol and the configuring of a second read data symbol may be performed together.
- the configuring of a second read data symbol may include reading interference memory cells, which share an unselected word line adjacent to a word line of the observation memory cell, at least one time with different read voltages to configure the second read data symbols of the interference memory cells.
- a memory system can include a nonvolatile memory device including an observation memory cell and a plurality of interference memory cells adjacent to the observation memory cell, and a controller to control the nonvolatile memory device, where the nonvolatile memory device includes a reading/writing circuit to read the observation memory cell and the interference memory cells at least one time with different read voltages, and the controller includes a first data buffer unit to store a first read data symbol which is configured with data of the read observation memory cell, a second data buffer unit to store second read data symbols which are respectively configured with data of the read interference memory cells, and a determination unit to determine a logical value of the observation memory cell, based on the first and second read data symbols.
- the interference memory cells may include adjacent memory cells to share a word line with the observation memory cell.
- the interference memory cells may include adjacent memory cells to share a word line with the observation memory cell, and adjacent memory cells that do not share the word line with the observation memory cell.
- the determination unit may include a first bit symbol converter to receive the first read data symbol stored in the first data buffer unit, and to convert the first read data symbol into a first bit symbol, and a second bit symbol converter to receive the second read data symbol stored in the second data buffer unit, and to convert the second read data symbol into a second bit symbol, and the determination unit to compare the first and second bit symbols to determine the logical value of the observation memory cell.
- the determination unit may further include an interference calculation unit to compare the first and second bit symbols to calculate an interference that the observation memory cell receives, and the determination unit may determine the logical value of the observation memory cell according to at least the first bit symbol and the calculated interference.
- the determination unit may further include a likelihood ratio calculation unit to calculate a likelihood ratio of the observation memory cell on the basis of the first bit symbol and the calculated interference; and an Error Correction Code (ECC) decoder to receive the calculated likelihood ratio, and determining the logical value of the observation memory cell according to at least the calculated likelihood ratio.
- ECC Error Correction Code
- the nonvolatile memory device and the controller may configure a semiconductor drive (e.g., a Solid State Drive (SSD)).
- a semiconductor drive e.g., a Solid State Drive (SSD)
- the nonvolatile memory device and the controller may configure a memory card.
- Exemplary embodiments of the present general inventive concept also provide a method of operating a memory system including at least one nonvolatile memory device, the method including receiving data from at least one memory cell of a selected word line of the nonvolatile memory device, determining a first read data symbol, and storing the first read data symbol in a first data buffer, receiving data from memory cells of an unselected word line of the nonvolatile memory device that are adjacent to the at least one memory cell of the selected word line, and storing the received data in a second data buffer, and determining the interference that a first memory cell of the at least one memory cell of a selected word line receives from the memory cells of the unselected word line.
- the method may include where the interference is determined using threshold voltages, the directions, and the distances of the memory cells of the unselected word lines.
- the method may include determining a likelihood ratio according to at least the first read data symbol and the determined interference.
- the method may include determining a logical value stored in the first memory cell according to the determined likelihood ratio.
- the method may include providing the determined logical value as read data when it is requested by a host that is communicatively coupled to the memory system.
- FIG. 1 is a diagram illustrating a threshold voltage dispersion of a multi-bit nonvolatile memory device including an error according to exemplary embodiments of the present general inventive concept
- FIG. 2 is a block diagram illustrating a nonvolatile memory device according to exemplary embodiments of the present general inventive concept
- FIG. 3 is a diagram illustrating the threshold voltage dispersions of the memory cells of a memory cell array in FIG. 2 ;
- FIG. 4 illustrates a 3-bit symbol corresponding to a read data symbol when first to seventh read voltages are sequentially applied according to exemplary embodiments of the present general inventive concept
- FIG. 5 is a diagram exemplarily illustrating the threshold voltage dispersions of memory cells which have been changed by the interference of adjacent cells according to exemplary embodiments of the present general inventive concept
- FIG. 6 is a block diagram illustrating a memory system which includes a nonvolatile memory device, according to exemplary embodiments of the present general inventive concept
- FIG. 7 is a block diagram illustrating a soft decision logic in FIG. 6 , according to exemplary embodiments of the present general inventive concept
- FIG. 8 is a block diagram illustrating a soft decision logic in FIG. 6 , according to exemplary embodiments of the present general inventive concept
- FIG. 9 is a block diagram illustrating a memory cell array of FIG. 2 according to exemplary embodiments of the present general inventive concept
- FIG. 10 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in the soft decision logic of FIG. 8 according to exemplary embodiments of the present general inventive concept;
- FIG. 11 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in the soft decision logic of FIG. 8 according to exemplary embodiments of the present general inventive concept;
- FIG. 12 is a block diagram illustrating an application example of the memory system of FIG. 6 according to exemplary embodiments of the present general inventive concept.
- FIG. 13 is a block diagram illustrating a computing system 2000 including a memory system according to exemplary embodiments of the present general inventive concept.
- SSD Solid State Drive
- PRAM Phase-change Random Access Memory
- MRAM Magnetoresistive Random Access Memory
- ReRAM Resistive Random Access Memory
- FRAM Ferroelectric Random Access Memory
- NOR flash memory may be used as storage media.
- exemplary embodiments of the present general inventive concept may be applied to a memory system in which a plurality of memory devices may be included (e.g., a plurality of different memory devices may be mixed in a memory system).
- the present general inventive concept may be embodied or applied through other embodiments. Besides, the detailed descriptions may be amended or modified according to viewpoints and applications without departing from the scope, technical idea and other utilities of the present general inventive concept.
- FIG. 1 is a diagram illustrating a threshold voltage dispersion of a multi-bit nonvolatile memory device including an error.
- the threshold voltage dispersion of memory cells where 2 bits can be stored in one memory cell is exemplarily illustrated.
- the abscissa axis i.e., the horizontal axis and/or x-axis
- the ordinate axis i.e., the vertical and/or y-axis
- the number of memory cells can indicate the number of memory cells.
- memory cells can be programmed into reference dispersions 10 , 20 , 30 , and 40 .
- the reference dispersions 10 , 20 , 30 , and 40 may be spaced from one another, and may have different threshold voltages and number of cells.
- the reference dispersions 10 , 20 , 30 , and 40 may be part of at least one erasing state and/or programming states of the nonvolatile memory device, as discussed in detail below.
- the reference dispersion 10 may correspond with an erasing state E0, and the reference dispersions 20 , 30 , and 40 may correspond with programming states P1, P2, and P3, respectively, as illustrated in FIG. 1 .
- the threshold voltages of the memory cells may not maintain the shapes of the reference dispersions 10 , 20 , 30 , and 40 because of various causes, examples of which are discussed below, and include interference from adjacent memory cells.
- the changes of the threshold voltages of the memory cells can cause a read error.
- F-Poly coupling may be a widening of a threshold voltage distribution because of a coupling between adjacent memory cells in a nonvolatile memory.
- the threshold voltage of a memory cell may increase or decrease according to the threshold voltage of an adjacent memory cell like F-Poly coupling and lateral charge spreading.
- F-Poly coupling and lateral charge spreading can measurably occur between a memory cell programmed into an erasing state E0 and a memory cell programmed into a programming state P3 having the highest threshold voltage among memory cells.
- the threshold voltages of memory cells can form the reference dispersions 10 , 20 , 30 , and 40 that are illustrated in FIG. 1 as a solid line.
- the dispersion of memory cells corresponding to the reference dispersion 10 may move to a dispersion 15 according to F-Poly coupling or lateral charge spreading.
- Memory cells corresponding to the reference dispersion 40 may move to a dispersion 45 according to F-Poly coupling or lateral charge spreading. That is, the threshold voltages of memory cells programmed into the erasing state E0 may increase according to F-Poly coupling or lateral charge spreading.
- the threshold voltages of memory cells programmed into the programming state P3 may decrease by lateral charge spreading. As illustrated in FIG.
- the memory cells corresponding to the reference dispersion 20 may move to a dispersion 25
- the memory cells corresponding to the reference dispersion 30 may move to a dispersion 35 according to, for example, F-Poly coupling or lateral charge spreading.
- a read error may occur by various causes in nonvolatile memory devices and storages.
- the read error may occur from interference between adjacent cells, a process defect, a signal interference by various external noises, a distortion by a stable channel, the decrease of an amount of charge based on the elapse of time, a programming disturbance (i.e., a disturbance that occurs during a programming operation and/or programming state, such as during programming states P1, P2, and/or P3), and a read disturbance (i.e., a disturbance that occurs during a read operation).
- a programming disturbance i.e., a disturbance that occurs during a programming operation and/or programming state, such as during programming states P1, P2, and/or P3
- a read disturbance i.e., a disturbance that occurs during a read operation.
- FIG. 2 is a block diagram illustrating a nonvolatile memory device 200 according to exemplary embodiments of the present general inventive concept.
- a nonvolatile memory device 200 can include a memory cell array 210 , an address decoder 220 , a reading/writing circuit 230 , a data input/output (I/O) circuit 240 , a control logic 250 , and a fractional read control unit 260 .
- the memory cell array 210 can be communicatively connected to the address decoder 220 through word lines WL, and can be communicatively connected to the reading/writing circuit 230 through bit lines BL.
- the memory cell array 210 can include a plurality of memory cells. Exemplarily, memory cells arranged in the row direction can be communicatively connected to the word lines WL. Memory cells arranged in the column direction are connected to the bit lines BL. Exemplarily, the memory cell array 210 may store one or more bits in each cell.
- the memory cell array 210 may be a semiconductor memory device having a plurality of memory cells, or may be a plurality of semiconductor memory devices communicatively coupled to one another.
- the address decoder 220 can be communicatively connected to the memory cell array 210 through the word lines WL.
- the address decoder 220 can operate according to the control of the control logic 250 .
- the address decoder 220 can receive an address ADDR from the outside (e.g., a host device such as a controller and/or processor that is communicatively coupled to the address decoder 200 ).
- the address decoder may be a semiconductor device, a programmable logic device, a field programmable gate array, application specific integrated circuit, or any other suitable semiconductor logic device to carry out the exemplary embodiments of the present general inventive concept disclosed herein.
- the address decoder 220 can decode the block address of the received address ADDR.
- the address decoder 220 may activate one memory block or a plurality of memory blocks by using the decoded block address (e.g., the received address ADDR from the host device).
- the address decoder 220 can decode the row address of the received address ADDR.
- the address decoder 220 may select the word lines WL using the decoded row address.
- the address decoder 220 can decode the column address of the received address ADDR.
- the decoded column address can be transferred to the reading/writing circuit 230 .
- the address decoder may include a block decoder, a row decoder, a column decoder, and an address buffer.
- the reading/writing circuit 230 can be communicatively connected to the memory cell array 210 through the bit lines BL, and can be communicatively connected to the data input/output circuit 240 through data lines DL.
- the reading/writing circuit 230 can operate according to the control of the control logic 250 . That is, the reading/writing circuit 230 may receive one or more commands from the control logic 250 , and may operate according to the one or more received commands.
- the reading/writing circuit 230 can receive the decoded column address from the address decoder 220 .
- the reading/writing circuit 230 can select the bit lines BL using the decoded column address.
- the reading/writing circuit 230 may be a semiconductor device, a programmable logic device, a field programmable gate array, application specific integrated circuit, and/or any other suitable device to carry out the exemplary embodiments of the present general inventive concept disclosed herein.
- the reading/writing circuit 230 can receive one page-size data or any other predetermined amount of data from the data input/output circuit 240 , and the received data is programmed (e.g., simultaneously programmed) in a page selected in programming.
- the reading/writing circuit 230 can read page data selected in a reading operation, and can transfer the read data to the data input/output circuit 240 .
- the reading/writing circuit 230 may include a page buffer (and/or a page register, data buffer, and/or data register) and a column selecting circuit.
- the data input/output circuit 240 can be communicatively connected to the reading/writing circuit 230 through the data lines DL.
- the data input/output circuit 240 can operate according to the control of the control logic 250 .
- the data input/output circuit 240 can exchange data DATA with the outside (e.g., a host device, a controller, a microprocessor, and/or any other suitable device to carry out the exemplary embodiments of the present general inventive concept).
- the data input/output circuit 240 can transfer data, which is received from the outside (e.g., received from the host device), to the reading/writing circuit 230 through the data lines DL.
- the data input/output circuit 240 can output data, which may be transferred through the data lines DL from the reading/writing circuit 230 , to the outside (e.g., to the host device).
- the data input/output circuit 240 may include a data buffer.
- the data buffer may temporarily store data that is received by the data input/output circuit 240 from a host device before providing it to the reading/writing circuit 230 through the data lines DL, or that may temporarily store data that is received from the reading/writing circuit 230 to be output to the outside (e.g., to the host device).
- Data transferred from the reading/writing circuit 230 may be output to the outside (e.g., to the host device) by one page unit and/or by a predetermined data size.
- the data transferred from the reading/writing circuit 230 may be stored in a buffer circuit (not illustrated) and be transmitted to the outside in packet units.
- a packet can include a plurality of pages (for example, one packet includes three pages).
- the buffer circuit (not illustrated) may be the data input/output circuit 240 .
- the buffer circuit (not illustrated) may be a discrete circuit other than the data input/output circuit 240 .
- the control logic 250 can be communicatively connected to the address decoder 220 , the reading/writing circuit 230 , and the data input/output circuit 240 .
- the control logic 250 can control the operation of the flash memory device 200 .
- the control logic 250 may operate in response to a control signal CTRL transferred from the outside (e.g., from a host device, a controller, a microprocessor, etc.).
- the control logic 250 may be a programmable logic device, a field programmable gate array, application specific integrated circuit, a controller, a processor, or any other suitable device to carry out the exemplary embodiments of the present general inventive concept disclosed herein.
- the control logic 250 can include the fractional read control unit 260 .
- the fractional read control unit 260 can control the fractional reading operation of the nonvolatile memory device 200 . That is, a fractional read control unit 260 can control a fractional read operation to read a selected memory cell a predetermined number of times and can configure a read data symbol.
- the fractional read control unit 460 can control a voltage to be applied to a selected memory cell. The function and/or operations of the fractional read control unit 260 will be described below in more detail with reference to FIGS. 2 and 3 .
- the fractional read control unit 260 may be a digital circuit, an analog circuit, or the combined circuit of the digital and analog circuits.
- the fractional read control circuit 260 may be implemented in the type of software driven in the control logic 250 .
- the fractional read control unit 260 may be a combination of hardware and software.
- FIG. 3 is a diagram illustrating the threshold voltage dispersions of the memory cells of the memory cell array 210 of FIG. 2 .
- the abscissa axis e.g., the horizontal axis and/or the x-axis
- the threshold voltages e.g., threshold voltage V th
- the ordinate axis e.g., the vertical axis and/or y-axis
- the first and second states S1 and S2 of the memory cells are illustrated.
- the memory cells are not limited to have the first and second states S1 and S2.
- the memory cells can store at least one bit in each cell. That is, the memory cells may have at least two states.
- the threshold voltage dispersions e.g., the threshold voltage dispersions of the first state S1 and the second state S2
- the memory cells are not limited to storing data using a threshold voltage. If the memory cells store data using a resistance value, the abscissa axis of FIG. 3 may indicate the resistance values of the memory cells. That is, the resistance dispersion of the memory cells may be illustrated in FIG. 3 .
- cells having the first state S1 are dispersed around a first voltage V1.
- Memory cells having the second state S2 are dispersed around a second voltage V2.
- first and second states S1 and S2 may be applied to be in correspondence with 1 and 0, respectively.
- the fractional read control unit 260 can control a fractional reading operation.
- the fractional read control unit 260 can control the reading/writing circuit 230 to read a selected memory cell at least one times.
- the fractional read control unit 260 can control the reading/writing circuit 230 to perform i-bit fractional read.
- the reading/writing circuit 230 can read a selected memory cell a maximum of (2 ⁇ i) ⁇ 1 times. That is, the reading/writing circuit 230 can read a maximum of (2 ⁇ i) ⁇ 1 bits from one memory cell.
- a maximum of (2 ⁇ i) ⁇ 1 bits read from one memory cell can configure one symbol.
- a symbol read from a selected memory cell is referred to as a read data symbol.
- the fractional read control unit 260 is not limited to control the reading/writing circuit 230 for 3-bit fractional read to be performed. That is, 2-bit, 4-bit, 8-bit, 16-bit, and/or any other suitable number of bits may be used in a fractional read operation.
- the fractional read control unit 260 can control a read voltage applied to a selected memory cell to be controlled.
- the first to seventh read voltages Vr1 to Vr7 applied to a selected memory cell in fractional read are illustrated in FIG. 3 .
- the first to seventh read voltages Vr1 to Vr7 can be applied to a selected memory cell.
- Read data corresponding to the first to seventh read voltages Vr1 to Vr7 can configure a read data symbol.
- the first to seventh read voltages Vr1 to Vr7 may be sequentially applied to a selected memory cell.
- the first to seventh read voltages Vr1 to Vr7 may be applied to a selected memory cell in reverse order (that is, with voltage Vr7 being applied first, and with the voltages Vr6, Vr5, Vr4, Vr3, Vr2, and Vr1 subsequently applied to the selected memory cell).
- a read data symbol that is obtained by applying the first to seventh read voltages Vr1 to Vr7 may correspond to 3-bit symbol. That is, a 3-bit symbol may be 3 bits, as the fractional read may be selected to be a 3 bit fractional read.
- the symbol bit number may correspond to the i-bit value that may be selected for the fractional read, as discussed above.
- FIG. 4 illustrates a 3-bit symbol corresponding to a read data symbol when the first to seventh read voltages Vr1 to Vr7 are sequentially applied.
- FIG. 4 illustrates a 3-bit symbol corresponding to a read data symbol when the first to seventh read voltages Vr1 to Vr7 are sequentially applied.
- the ordinate axis indicates the threshold voltage of a selected memory cell
- the abscissa axis indicates a read data symbol and a 3-bit symbol when the first to seventh read voltages Vr1 to Vr7 are sequentially applied.
- a selected memory cell has a threshold voltage corresponding to a first voltage area VA1.
- the first voltage area VA1 corresponds to a lower level than the first read voltage Vr1. Therefore, when the first to seventh read voltages Vr1 to Vr7 are sequentially applied to a selected memory cell, the selected memory cell can be turned on. That is, as illustrated in FIG. 4 , the first to seventh bits of the read data symbol correspond to 1, respectively.
- a selected memory cell has a threshold voltage corresponding to a second voltage area VA2.
- the second voltage area VA2 corresponds to a level higher than the first read voltage Vr1 and lower than the second read voltage Vr2. Therefore, when the first read voltage Vr1 is applied to a selected memory cell, a selected memory cell is turned off.
- the second to seventh read voltages Vr2 to Vr7 are sequentially applied to the selected memory cell, the selected memory cell is turned on. That is, as illustrated in FIG. 4 , the first bit of the read data symbol corresponds to 0, and the second to seventh bits of the read data symbol correspond to 1 (e.g., the read data symbol illustrated in FIG. 4 for VA2 is 0111111, where the first bit of the read data symbol is 0, and the second through seventh bits are 1s).
- FIG. 3 illustrated the patterns of read data symbols when the threshold voltages of a selected memory cell respectively correspond to third to eighth voltage areas VA3 to VA8.
- Each read data symbol may correspond to a 3-bit symbol.
- the 3-bit symbol is represented according to the number of 1s (e.g., a read data symbol having seven 1's (“1111111”) may have the three bit symbol of 111, and the read data symbol having no 1's (“0000000”) may be 000).
- a selected memory cell has a threshold voltage corresponding to the first voltage area VA1.
- the read data symbol corresponds to “1111111”.
- the 3-bit symbol may be represented as “111”.
- a selected memory cell has a threshold voltage corresponding to the fourth voltage area VA4.
- the read data symbol corresponds to “0001111”.
- the 3-bit symbol may be represented as “100”.
- FIG. 3 illustrates exemplary 3-bit symbols respectively corresponding to read data symbols.
- a read data symbol that is obtained by reading a selected memory cell at least one time may correspond to a bit symbol.
- the threshold voltage information of the selected memory cell is represented in a bit symbol.
- the bit symbol may be used in a succeeding operation such as a soft decision.
- a soft decision may be determining a likelihood ratio of received data. For example, the likelihood ratios can be determined for the first and second states S1 and S2 (see FIG. 3 ) of a bit symbol of an observation memory cell (e.g., a memory cell that receives interference from adjacent memory cells), respectively. That is, the read data symbol may be used in a succeeding operation such as a soft decision.
- FIG. 5 is a diagram exemplarily illustrating the threshold voltage dispersions 500 of memory cells which have been changed by the interference of adjacent cells.
- the abscissa axis e.g., the horizontal axis
- the ordinate axis e.g., vertical axis
- the first and second states S1 and S2 of the memory cells are illustrated.
- the memory cells are not limited to have the first and second states S1 and S2.
- the memory cells may store at least one bit in each cell. That is, the memory cells may have at least two states.
- Dispersions 510 , 530 , and 550 may correspond to memory cells having the first state S1, respectively.
- Dispersions 520 , 540 , and 560 correspond to memory cells having the second state S2, respectively.
- the memory cells corresponding to the dispersions 510 and 520 may have a lower threshold voltage than the threshold voltages of peripheral memory cells, respectively.
- the threshold voltages of the memory cells corresponding to the dispersions 510 and 520 may increase by lateral charge spreading and F-Poly coupling.
- the threshold voltages of memory cells that receive less interference from peripheral cells among the dispersions 510 and 520 may be maintained at lower voltages (e.g., lower voltages than the memory cells having the dispersions 530 , 540 , 550 , and 560 ).
- the threshold voltages of memory cells that receive a large and/or increased interference from peripheral cells among the dispersions 510 and 520 may increase.
- the threshold voltages of memory cells which receive less interference from peripheral memory cells among memory cells corresponding to the dispersions 510 and 520 , can form the dispersions 530 and 540 .
- the threshold voltages of memory cells which may receive large interference from peripheral memory cells among memory cells corresponding to the dispersions 510 and 520 , form the dispersions 550 and 560 .
- the dispersion 510 can be formed by summing memory cells forming the dispersion 530 and memory cells forming the dispersion 550 .
- the dispersion 520 can be formed by summing memory cells forming the dispersion 540 and memory cells forming the dispersion 560 .
- a selected memory cell can have a threshold voltage corresponding to A.
- the selected memory cell may be in the first state S1 or the second state S2.
- a probability that the selected memory cell may be in the first state S1 may be expressed as the number of memory cells having a threshold voltage corresponding to A and the rate of the number of memory cells having the first state S1.
- a probability that the selected memory cell may be in the second state S2 may be expressed as the number of memory cells having a threshold voltage corresponding to A and the rate of the number of memory cells having the second state S2.
- a probability that a selected memory cell having a threshold voltage corresponding to A may be in the first state S1 may be expressed as “y/(x+y)”.
- a probability that a selected memory cell having a threshold voltage corresponding to A may be in the second state S2 may be expressed as “x/(x+y)”. “y/(x+y)” may be greater than “x/(x+y)”. That is, a probability that the selected memory cell having a threshold voltage corresponding to A may be a memory cell having the second state S2 is greater than a probability that the selected memory cell may be a memory cell having the first state S1.
- memory cells having a threshold voltage corresponding to the first voltage area VA1 may be memory cells having the first state S1.
- memory cells having a threshold voltage corresponding to the eighth voltage area VA8 may be memory cells having the second state S2.
- FIG. 4 exemplarily illustrates a 3-bit symbol corresponding to a read data symbol.
- the threshold voltage of a selected memory cell can be included in the first voltage area VA1. Therefore, there is a high probability and/or increased probability that the state of the selected memory cell may be the first state S1. That is, when the 3-bit symbol is “111”, this may correspond to a probability that the selected memory cell may be a memory cell having the first state S1.
- the threshold voltage of a selected memory cell can be included in the eighth voltage area VA8. Therefore, there is a low probability and/or decreased probability that the state of the selected memory cell may be a memory cell having the first state S1. That is, when the 3-bit symbol is “000”, this may correspond to a probability that the selected memory cell may be a memory cell having the first state S1 (e.g., where the corresponding probability that the state of the selected memory cell may be a memory cell having the first state S1 is a low probability and/or decreased probability). Likewise, when the 3-bit symbol is “001” or “110”, this may correspond to a probability that the selected memory cell may be a memory cell having the first state S1.
- the bit symbol may not be limited to correspond only to the probability that the selected memory cell may be the memory cell having the first state S1.
- the bit symbol may correspond to a probability of the memory cell having the second state S2.
- a probability of the first state S1 or a probability of the second state S2 may be expressed as a bit symbol.
- the bit symbol may be used in a succeeding operation such as a likelihood ratio calculation and a soft decision.
- a probability that a selected memory cell having a threshold voltage corresponding to A may be a memory cell having the second state S2 is calculated as higher than (i.e., greater than) a probability that the selected memory cell may be a memory cell having the first state S1.
- a probability that the selected memory cell having the threshold voltage corresponding to A may be a memory cell having the first state S1 can be calculated as higher than a probability that the selected memory cell may be a memory cell having the second state S2.
- a probability that the selected memory cell having the threshold voltage corresponding to A may be a memory cell having the first state S1 is calculated as higher than a probability that the selected memory cell may be a memory cell having the second state S2.
- a probability may be differently calculated according to the size of interference from adjacent cells.
- a probability that a selected memory cell having a threshold voltage corresponding to B may be a memory cell having the first state S1 can be calculated as higher than (e.g., calculated to be greater than) a probability that the selected memory cell may be a memory cell having the second state S2.
- a probability that the selected memory cell having the threshold voltage corresponding to B may be a memory cell having the second state S2 can be calculated as higher than (e.g., calculated to be greater than) a probability that the selected memory cell may be a memory cell having the first state S1.
- a probability that the selected memory cell having the threshold voltage corresponding to B may be a memory cell having the second state S2 is calculated as higher than (e.g., is calculated to be greater than) a probability that the selected memory cell may be a memory cell having the first state S1.
- a probability is differently calculated according to the size of interference from adjacent cells.
- FIG. 6 is a block diagram illustrating a memory system 600 which includes a nonvolatile memory device 610 , according to exemplary embodiments of the present general inventive concept.
- a memory system 600 can include a nonvolatile memory device 610 and a controller 620 .
- the nonvolatile memory device 610 can be the same as and/or similar to the nonvolatile memory device 210 that has been described above with reference to FIG. 2 .
- the controller 620 can be communicatively connected to a host and the nonvolatile memory device 610 .
- the controller 620 may be a processor, programmable logic device, application specific integrated circuit, field programmable gate array, and/or any other suitable controller to carry out the exemplary embodiments of the present general inventive concept as disclosed herein.
- the controller 620 can access the nonvolatile memory device 610 .
- the controller 620 can control the reading, writing, and erasing operations of the nonvolatile memory device 610 .
- the controller 620 may be an interface between the nonvolatile memory device 610 and the host.
- the controller 620 can control and/or drive a firmware (e.g., a firmware that is stored in the controller 620 and/or the nonvolatile memory device 610 ) to control the nonvolatile memory device 610 .
- a firmware e.g., a firmware that is stored in the controller 620 and/or the nonvolatile memory device 610
- the controller 620 can provide a control signal CTRL and an address ADDR to the nonvolatile memory device 610 .
- the controller 620 can exchange data DATA with the nonvolatile memory device 610 .
- the controller 620 can include a soft decision logic 630 .
- the soft decision logic 630 may be one or more electronic circuits, logic gates, fuzzy logic circuits, and/or any other suitable device (as discussed in the examples below) to carry out the exemplary embodiments of the present general inventive concept.
- the controller 620 can control the soft decision logic 630 .
- the soft decision logic 630 can receive data stored in a selected memory cell from the nonvolatile memory device 610 .
- the soft decision logic 630 can calculate the likelihood ratio of received data.
- the soft decision logic 630 can perform the soft decision (e.g., the determination of a likelihood ratio of an observation memory cell, such as the likelihood ratios can be determined for the first and second states S1 and S2 (see FIG.
- the soft decision logic 630 may be implemented as a digital circuit, an analog circuit, or a combined circuit of the digital and analog circuits.
- the soft decision logic 630 may be implemented in controller-readable and executable codes of software that may be driven in the controller 620 .
- the soft decision logic 630 may be a combination of hardware (e.g., electronic circuits, logic gates, etc.) and software (e.g., controller and/or computer readable code, that when executed, carry out the soft logic operations). The soft decision logic 630 will be described in more detail with reference to FIGS. 7 to 10 .
- the soft decision logic 630 may include an Error Correction Code (ECC) decoder that is the same as and/or similar to the ECC decoder 750 illustrated in FIG. 7 and described below.
- ECC decoder 750 can determine and correct a logical value stored in an observation memory cell on the basis of a likelihood ratio of the observation memory cell.
- An observation memory cell as discussed in detail below, may be a memory cell that receives interference from adjacent memory cells, and is included in memory cells sharing a selected word line. That is, the likelihood ratio of an observation memory cell can be determined on the basis of a bit symbol of the observation memory cell and interference that the observation memory cell receives. For example, the likelihood ratios can be determined for the first and second states S1 and S2 (see FIG. 3 ) of the bit symbol of the observation memory cell, respectively.
- a host interface of the controller 620 can include a protocol to perform data exchange between the host and the controller 620 .
- the controller 620 can communicate with the outside (for example, the host) through at least one of a plurality of interface protocols such as a Universal Serial Bus (USB) protocol, a Multimedia Card (MMC) protocol, a Peripheral Component Interconnection (PCI) protocol, a PCI-Express (PCI-E) protocol (i.e., a Peripheral Component Interconnect), an Advanced Technology Attachment (ATA) protocol, a Serial-ATA (SATA) protocol, a Parallel-ATA (PATA) protocol, a Small Component Small Interface (SCSI) protocol, an Enhanced Small Disk Interface (ESDI) protocol and a Integrated Drive Electronics (IDE) protocol.
- a memory interface of the controller 620 can interface with the nonvolatile memory device 610 .
- the memory interface can include a NAND interface or a NOR interface.
- the controller 620 and the nonvolatile memory device 610 may be integrated as one semiconductor device.
- the controller 620 and the nonvolatile memory device 610 can be integrated as one semiconductor device to configure a memory card.
- the controller 620 and the nonvolatile memory device 610 can be integrated as one semiconductor device to configure a memory card such as Personal Computer Memory Card International Association (PCMCIA), Compact Flash (CF), smart media card (SM, SMC), memory stick, multimedia card (MMC, RS-MMC (Reduced Size Multi Media Card), MMCmicro), SD card (SD (Secure Digital), miniSD, microSD, SDHC (Secure Digital High Capacity)) and universal flash memory device.
- PCMCIA Personal Computer Memory Card International Association
- CF Compact Flash
- SM smart media card
- MMCmicro multimedia card
- SD Secure Digital
- miniSD miniSD
- microSD microSD
- SDHC Secure Digital High Capacity
- the controller 620 and the nonvolatile memory device 610 can be integrated as one semiconductor device to configure a semiconductor drive (e.g., Solid State Drive (SSD)).
- the semiconductor drive (SSD) can include a storage device to store data in a semiconductor memory.
- the operation speed of a host connected to the memory system 600 can be significantly improved and/or the operation speed can be increased.
- the memory system 600 can be provided as one of a plurality of elements of electronic devices such as computers, Ultra Mobile PCs (UMPCs), workstations, net-books, Personal Digital Assistants (PDAs), portable computers, web tablets, wireless phones, mobile phones, smart phones, e-books, Portable Multimedia Players (PMPs), portable game machines, navigation devices, black boxes, digital cameras, Digital Multimedia Broadcasting (DMB) players, digital audio recorders, digital audio players, digital picture recorders, digital picture players, digital video recorders, digital video players, devices for transmitting/receiving information at a wireless environment, one of various electronic devices configuring a home network, one of various electronic devices configuring a computer network, one of various electronic devices configuring a telematics network, RFID (Radio Frequency Identification) devices and one of a plurality of elements configuring a computing system.
- UMPCs Ultra Mobile PCs
- PDAs Personal Digital Assistants
- PMPs Portable Multimedia Players
- DMB Digital Multimedia Broadcasting
- DMB Digital Multi
- the nonvolatile memory device 610 or the memory system 600 according to exemplary embodiments of the present general inventive concept may be mounted as various types of packages.
- the nonvolatile memory device 610 or the memory system 600 according to exemplary embodiments of the present general inventive concept may be packaged in a package type such as Package on Package (PoP), Ball Grid Arrays (BGAs), Chip Scale Packages (CSPs), Plastic Leaded Chip Carrier (PLCC), Plastic Dual In-Line Package (PDIP), Die In Waffle Pack (DIWP), Die In Wafer Form (DIWF), Chip On Board (COB), Ceramic Dual In-Line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), Thin Quad Flat Pack (TQFP), Small Outline Package (SOP), Shrink Small Outline Package (SSOP), Thin Small Outline Package (TSOP), Thin Quad Flat Pack (TQFP), System In Package (SIP), Multi Chip Package (MCP), Wafer Level Stack Package (WLSP), Die In Wafer Form (D
- FIG. 7 is a block diagram illustrating a soft decision logic in FIG. 6 , according to an exemplary embodiments of the inventive concept. That is, the soft decision logic 630 included in the controller 620 illustrated in FIG. 6 is renumbered as soft decision logic 700 as illustrated in FIG. 7 .
- a soft decision logic 700 includes a data buffer unit 710 , a bit symbol converter 720 , an interference calculation unit 730 , a Likelihood Ratio (LR) calculation unit 740 , and an Error Correction Code (ECC) decoder 750 .
- a data buffer unit 710 includes a bit symbol converter 720 , an interference calculation unit 730 , a Likelihood Ratio (LR) calculation unit 740 , and an Error Correction Code (ECC) decoder 750 .
- LR Likelihood Ratio
- ECC Error Correction Code
- the data buffer unit 710 can receive and store a read data symbol from the nonvolatile memory device 610 of FIG. 6 .
- the data buffer unit 710 can include first to jth data buffers 711 to 71 j.
- one read voltage can be applied to a word line and a reading operation can be performed in one page unit or in any other suitable unit.
- a j number of pages can be read.
- read data that are read by applying a first read voltage Vr1 to the memory cells of a selected word line can be stored in the first data buffer 711 .
- read data that are read by applying second to jth read voltages Vr2 to Vrj to the memory cells of a selected word line are respectively stored in the second to jth data buffers 712 to 71 j.
- the read data of one memory cell that are read using first to jth read voltages form one read data symbol.
- a memory cell (hereinafter referred to as an observation memory cell) receiving interference from adjacent memory cells can be included in memory cells sharing a selected word line.
- Memory cells (hereinafter referred to as interference memory cells) adjacent to the observation memory cell can be included in memory cells sharing the selected word line.
- the bit symbol converter 720 can convert the read data symbol of the data buffer unit 710 into a bit symbol.
- the bit symbol converter 720 can convert the read data symbol into an i-bit symbol.
- j may be “(2 ⁇ i) ⁇ 1”. That is, the value of j may be the same as the value of (2 ⁇ i) ⁇ 1. For example, when i is 3, j may be 7 (i.e., 2 ⁇ 3 ⁇ 1).
- the bit symbol converter 720 can convert a read data symbol into a 3-bit symbol when a 3-bit fractional reading operation is performed.
- the bit symbol converter 720 can convert a read bit symbol into a 3-bit symbol by counting the number of 1s in the read data symbol.
- the interference calculation unit 730 can receive the bit symbols of memory cells that have been converted through the bit symbol converter 720 .
- the converted bit symbols of the memory cells include threshold information.
- the interference calculation unit 730 can include first to nth interference calculators 731 to 73 n.
- the likelihood ratio of an observation memory cell can be calculated on the basis of the degree where the threshold voltage of the observation memory cell is changed by the interference of adjacent memory cells.
- the observation memory cell can be one of a plurality of memory cells sharing a selected word line.
- Interference memory cells may also be one or more memory cells sharing the selected word line.
- the first interference calculator 731 can calculate interference that the observation memory cell receives from the interference memory cells, on the basis of the bit symbols of interference memory cells.
- interference that a first observation memory cell receives can be calculated on the basis of the bit symbols of interference memory cells that share a word line with an observation memory cell.
- the second to nth interference calculators 732 to 73 n can calculate interferences the second to nth observation memory cells receive from interference memory cells, respectively.
- an observation memory cell is programmed from the erasing state E0 (see FIG. 1 ) into one or more programming states (e.g., P1, P2, P3, etc. as illustrated in FIG. 1 ) and/or back to the erasing state E0. It is assumed that an interference memory cell can be programmed from the erasing state E0 into the programming state P1 (see FIG. 1 ). In this case, F-Poly coupling can be noticeable in the observation memory cell.
- an observation memory cell is programmed from the erasing state E0 (see FIG. 1 ) into one or more programming states and the erasing state E0. It is assumed that an interference memory cell can be programmed from the erasing state E0 into the programming state P1 (see FIG. 1 ). In this case, interference that the observation memory cell receives can be less than interference that the observation memory cell receives when the interference memory cell is programmed into a programming state P3 (see FIG. 3 ).
- the likelihood ratio calculation unit 740 can calculate the likelihood ratio of an observation memory cell on the basis of the bit symbol of the observation memory cell and interference that the observation memory cell receives. For example, the likelihood ratio calculation unit 740 can calculate the logarithmic likelihood ratio of the observation memory cell. As an example, the likelihood ratio calculation unit 740 can calculate likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) of the bit symbol of the observation memory cell, respectively.
- the likelihood ratio calculation unit 740 can store information for the threshold voltage dispersions of memory cells.
- the likelihood ration calculation unit 740 can store information of threshold voltage dispersions based on interference. Based on the stored information, the likelihood ratio calculation unit 740 can calculate likelihood ratios for the first and second states S1 and S2 of the observation memory cell, respectively.
- a likelihood ratio can be calculated at the rate of two conditional probabilities. For example, as expressed in Equations (1) and (2) below, the likelihood ratio can be calculated at the rate of a probability that a memory cell corresponding to a received bit symbol is in the first state S1 to a probability that the memory cell corresponding to the received bit symbol is in the second state S2, where the rate of probability is rip in the equations below). For example, the probability that the memory cell corresponding to the received bit symbol is in the first state S1 or the second state S2 may be calculated on the basis of information for threshold voltage dispersions based on interference.
- a likelihood ratio may be calculated by dividing a probability that a memory cell corresponding to a bit symbol data received by the likelihood ratio calculation unit 740 is programmed into the first state S1 by a probability that the bit symbol data received by a probability that the likelihood ratio calculation unit 740 is programmed into the second state S2.
- a likelihood ratio may be calculated by dividing a probability that a memory cell corresponding to a bit symbol data received by the likelihood ratio calculation unit 740 is in the second state S2 by a probability of the first state S1.
- information of threshold voltage dispersions can be provided through measurement.
- the controller 620 can measure the threshold voltage dispersions of memory cells in the nonvolatile memory device 610 and store the measured dispersions in the likelihood ratio calculation unit 740 .
- the information of the threshold voltage dispersions stored in the likelihood ratio calculation unit 740 can be updated.
- the controller 620 can re-measure the threshold voltage dispersions of the memory cells of the nonvolatile memory device 610 .
- re-measurement can be performed based on the deterioration (for example, the number of programming and erasing times) of the memory cells of the nonvolatile memory device 610 .
- the measurement of threshold voltage dispersions can be performed through fractional read.
- threshold voltage information based on interference can be provided in a predetermined table type.
- the likelihood ratio calculation unit 740 can calculate the likelihood ratio of a bit symbol, based on the predetermined table.
- the ECC decoder 750 can receive the likelihood ratio of an observation memory cell that is calculated from the likelihood ratio calculation unit 740 .
- the ECC decoder 750 can determine a logical value stored in the observation memory cell on the basis of the likelihood ratio of the observation memory cell. For example, the ECC decoder 750 can compare likelihood ratios for the first and second states (see FIG. 3 ) to select a state corresponding to the maximum likelihood ratio.
- the logical value determined by the ECC decoder 750 may be provided as a read data that a host requests.
- FIG. 8 is a block diagram illustrating a soft decision logic in FIG. 6 , according to another embodiment of the inventive concept. That is, the soft decision logic 630 included in the controller 620 illustrated in FIG. 6 is renumbered as soft decision logic 800 as illustrated in FIG. 7 .
- a soft decision logic 800 can include first and second data buffer units 810 and 820 , first and second bit symbol converters 830 and 840 , an interference calculation unit 850 , a Likelihood Ratio (LR) calculation unit 860 , and an Error Correction Code (ECC) decoder 870 .
- first and second data buffer units 810 and 820 can include first and second bit symbol converters 830 and 840 , an interference calculation unit 850 , a Likelihood Ratio (LR) calculation unit 860 , and an Error Correction Code (ECC) decoder 870 .
- LR Likelihood Ratio
- ECC Error Correction Code
- the first data buffer unit 810 may be similar to and/or the same as the data buffer unit 710 illustrated in FIG. 7 and described above, and the first bit symbol converter 830 may be similar to and/or the same as the bit symbol converter 720 illustrated in FIG. 7 and described above.
- the second data buffer unit 820 can receive read data symbols from the memory cells of an unselected word line adjacent to a selected word line and can store the received symbols.
- the second data buffer unit 820 can include first to jth data buffers 821 to 82 j.
- one read voltage can be applied to a word line and a reading operation can be performed in one page unit.
- a reading operation can be performed in one page unit.
- first to jth read voltages are applied to the memory cells of a selected word line, a j number of pages can be read.
- read data that are read by applying a first read voltage Vr1 to the memory cells of a selected word line can be stored in the first data buffer 821 .
- read data that are read by applying second to jth read voltages Vr2 to Vrj to the memory cells of a selected word line can be respectively stored in second to jth data buffers 822 to 82 j.
- the read data of one memory cell that are read using first to jth read voltages can form one read data symbol.
- Read data symbols received from the memory cells of an unselected word line can be used to calculate interference that an observation memory cell receives from interference memory cells.
- the second bit symbol converter 840 can convert the read data symbol of the second data buffer unit 820 into a bit symbol.
- the second bit symbol converter 840 can be configured the same as and/or similar to where the first bit symbol converter 830 receives a read data symbol and converts it into an i-bit symbol.
- j may be “(2 ⁇ i) ⁇ 1”.
- the first bit symbol converter 830 can store information for the threshold voltages of the memory cells of a selected word line.
- the second bit symbol converter 840 can store information for the threshold voltages of the memory cells of an unselected word line adjacent to the selected word line.
- the observation memory cell can be included in memory cells sharing the selected word line.
- the interference memory cells can be included in memory cells that share a word line with the observation memory cell and memory cells that do not share a word line with the observation memory cell.
- the interference calculation unit 850 can receive the bit symbols of memory cells that have been converted through the first and second bit symbol converters 830 and 840 .
- the converted bit symbols of the memory cells can include threshold information.
- the interference calculation unit 850 can include first to nth interference calculators 851 to 85 n.
- the first to nth interference calculators 851 to 85 n can calculate interferences that first to nth observation memory cells receive from interference memory cells, respectively.
- the soft decision logic 700 according to exemplary embodiments of the present general inventive concept can calculate the interference of interference memory cells sharing a selected word line.
- the soft decision logic 800 according to exemplary embodiments of the present general inventive concept may also calculate the interference of interference memory cells sharing a selected word line and the interference of interference memory cells not sharing the selected word line.
- FIG. 9 is a block diagram illustrating memory cell array 900 , which may be similar to and/or the same as the memory cell array 210 illustrated in FIG. 2 and described above.
- Memory cell array 900 can include word lines (e.g., WL1, WL2, WLm), bit lines (e.g., BL1, BL2, BL3, BLn), and memory cells (MC11 to MC1n, MC11 to MCm1, and MC11 to MCmn).
- an observation memory cell is a memory cell MC12.
- Interference memory cells MC13 and MC11 that are disposed in x1 and x2 directions are memory cells that can share a word line with the observation memory cell MC12. Therefore, interference the observation memory cell MC12 receives from the interference memory cells MC13 and MC11 that are disposed in x1 and x2 directions can be calculated as described above with reference to FIG. 7 .
- the threshold voltage information of an interference memory cell MC22 can be stored in the second bit symbol converter 840 of FIG. 8 . Accordingly, interference that the observation memory cell MC12 receives from the interference memory cell MC22 that is disposed in a y direction may be calculated.
- the threshold voltage information of interference memory cells MC23 and MC21 can be stored in the second bit symbol converter 840 of FIG. 8 . Therefore, interference that the observation memory cell MC12 receives from the interference memory cells MC23 and MC21 that are disposed in xy1 and xy2 directions may be calculated.
- interference that the observation memory cell MC12 receives from the interference memory cells can be calculated.
- the likelihood ratio calculation unit 860 can be similar to and/or the same as the likelihood ratio calculation unit 740 illustrated in FIG. 7 and described above. That is, a likelihood ratio can be calculated on the basis of a bit symbol and a calculated interference. For example, the likelihood ratio calculation unit 860 can calculate and/or determine a logarithmic likelihood ratio on the basis of a bit symbol and a calculated interference. As an example, the likelihood ratio calculation unit 860 can calculate likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) of a bit symbol that is converted. Exemplarily, the likelihood ratio calculation unit 860 can store information for threshold voltage dispersions based on interference. Based on the stored information, the likelihood ratio calculation unit 860 can calculate likelihood ratios for the first and second states S1 and S2 of the bit symbol, respectively.
- threshold voltage information based on interference can be provided in a predetermined table type.
- the likelihood ratio calculation unit 860 can calculate the likelihood ratio of a bit symbol, based on the predetermined table.
- the ECC decoder 870 can receive the likelihood ratio of an observation memory cell that is calculated from the likelihood ratio calculation unit 860 .
- the ECC decoder 870 can be similar to and/or the same as the ECC decoder 750 illustrated in FIG. 7 and described above.
- the ECC decoder 870 can determine a logical value stored in the observation memory cell on the basis of the likelihood ratio of the observation memory cell. For example, the ECC decoder 870 can compare likelihood ratios for the first and second states (see FIG. 3 ) to select a state corresponding to the maximum likelihood ratio.
- the logical value determined by the ECC decoder 870 may be provided as a read data that a host requests.
- the first and second data buffer units 810 and 820 and the first and second bit symbol converters 830 and 840 may be included in the nonvolatile memory device 610 illustrated in FIG. 6 .
- the data buffer unit 710 and bit symbol converter 720 of FIG. 7 may be included in the nonvolatile memory device 610 illustrated in FIG. 6 .
- the data buffer unit 710 and bit symbol converter 720 of FIG. 7 can be configured and/or operate as described above with reference to FIG. 7 .
- the data buffer unit 710 and bit symbol converter 720 can operate according to the control of the control logic 250 of FIG. 2 .
- first and second data buffer units 810 and 820 and the first and second bit symbol converters 830 and 840 can be configured and/or operate as described above with reference to FIG. 8 .
- first and second data buffer units 810 and 820 and the first and second bit symbol converters 830 and 840 operate according to the control of the control logic 250 of FIG. 2 .
- the first data buffer unit 810 included in the nonvolatile memory device 610 can store the data of the memory cells of a selected word line that are read a maximum of (2 ⁇ i) ⁇ 1 times.
- the first bit symbol converter 830 included in the nonvolatile memory device 610 can convert the data of the memory cells of the selected word line into i-bit symbols.
- the converted i-bit symbols can be transmitted to the interference calculation unit 850 and likelihood ratio calculation unit 860 of the controller 620 , respectively.
- the bit symbol data of the memory cells of the selected word line may be transmitted to the controller 620 .
- the i-bit symbol may be transmitted to the controller 620 i times.
- the second data buffer unit 820 can be configured and/or operate like the first data buffer unit 810 .
- the second data buffer 820 can store the data of the memory cells of an unselected word line adjacent to a selected word line.
- the second bit symbol converter 840 can convert the data of the memory cells of the unselected word line adjacent to the selected word line into i-bit symbol data.
- the respective converted bit symbol data can be transmitted to the interference calculation unit 850 of the controller 620 .
- the first bit symbol converter 830 and the second bit symbol converter 840 may be included in the controller 620 .
- the controller 620 may include an analog-to-digital converter (ADC, not illustrated).
- ADC analog-to-digital converter
- the controller 620 can receive the analog values of the data of a selected word line that are read (e.g., read during one time period).
- the controller 620 can convert the received analog values into digital data through the analog-to-digital converter (ADC, not illustrated) and can store the converted digital data.
- the data of the selected word line can be read (2 ⁇ i) ⁇ 1 times in the nonvolatile memory device 610 , and the controller 620 can receive the analog data of the selected word line that is read (2 ⁇ i) ⁇ 1 times.
- the controller 620 may include an analog-to-digital converter (ADC), and it may convert analog data received into digital data with the ADC and store the converted digital data.
- ADC analog-to-digital converter
- the digital data of the selected word line that are stored in the ADC are converted into i-bit symbols by the first bit symbol converter 830 .
- the second bit symbol converter 840 can be configured to operate according to the control of the control logic 250 of FIG. 2 .
- FIG. 10 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in the soft decision logic 800 of FIG. 8 according to exemplary embodiments of the present general inventive concept.
- the first data buffer unit 810 can receive the data of the memory cells of a selected word line that are read through an i-bit fractional reading scheme in operation S 110 .
- the first data buffer unit 810 may receive data a maximum of (2 ⁇ i) ⁇ 1 times.
- a (2 ⁇ i) ⁇ 1 number of data corresponding to one memory cell can configure and/or determine a read data symbol.
- the read data symbol stored in the first data buffer unit 810 can be converted into a bit symbol in operation S 120 .
- the second data buffer unit 820 can receive the data of the memory cells of an unselected word line adjacent to the selected word line that are read through the i-bit fractional reading scheme in operation S 130 .
- the first data buffer unit 810 can receive the data of the memory cells of the selected word line that are read through the i-bit fractional reading scheme.
- the first data buffer unit 810 may receive data a maximum of (2 ⁇ i) ⁇ 1 times.
- a (2 ⁇ i) ⁇ 1 number of data corresponding to one memory cell configure a read data symbol.
- interference memory cells adjacent to an observation memory cell may share a word line with the observation memory cell.
- the interference memory cells adjacent to the observation memory cell may not share a word line with the observation memory cell.
- operation S 110 of reading the observation memory cell and operation of reading an interference memory cell sharing a word line with the observation memory cell may be simultaneously performed.
- operation S 110 of reading the observation memory cell and operation of reading interference memory cells not sharing a word line with the observation memory cell may not be performed simultaneously.
- the read data symbol stored in the first data buffer unit 810 can be converted into a bit symbol in operation S 140 .
- the interference calculation unit 850 can calculate interference that the observation memory cell receives from the interference memory cells in operation S 150 . As described above with reference to FIGS. 7 and 8 , the interference calculation unit 850 can calculate interference on the basis of the threshold voltages of the interference memory cells, the directions of the interference memory cells, and distances between the interference memory cells.
- the likelihood ratio calculation unit 860 can calculate a likelihood ratio in operation S 160 .
- the likelihood ratio calculation unit 860 may calculate a logarithmic likelihood ratio on the basis of a bit symbol and interference.
- the likelihood ratio calculation unit 860 may calculate a likelihood ratio on the basis of information for the threshold voltage dispersions of memory cells stored.
- the likelihood ratio calculation unit 860 may store the threshold voltage dispersions of memory cells based on interference and calculate a likelihood ratio using the threshold voltage dispersions.
- the likelihood ratio calculation unit 860 may calculate likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) of a bit symbol on the basis of information stored, respectively.
- the ECC decoder 870 can determine a logical value stored in the observation memory cell in operation S 170 . For example, the ECC decoder 870 compares likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) to select a state corresponding to the maximum likelihood ratio. The logical value determined by the ECC decoder 870 may be provided as a read data that a host requests.
- FIG. 11 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in the soft decision logic 800 of FIG. 8 according to exemplary embodiments of the present general inventive concept.
- the first data buffer unit 810 can receive the data of the memory cells of a selected word line that are read through an i-bit fractional reading scheme in operation S 210 .
- a maximum of (2 ⁇ i) ⁇ 1 data corresponding to one memory cell can configure a read data symbol.
- the read data symbol stored in the first data buffer unit 810 can be converted into a bit symbol in operation S 220 . That is, operations S 210 and S 220 are as described above with reference to the first data buffer 810 and its operation as illustrated in FIGS. 8 and 10 .
- the likelihood ratio calculation unit 860 can calculate a likelihood ratio in operation S 230 .
- the likelihood ratio calculation unit 860 may calculate a logarithmic likelihood ratio on the basis of a bit symbol and interference.
- the likelihood ratio calculation unit 860 can calculate likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) of a converted bit symbol, respectively.
- the likelihood ratio calculation unit 860 may calculate the likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) of the bit symbol on the basis of information for the threshold voltage dispersions stored, respectively.
- the likelihood ratio calculation unit 860 may calculate a likelihood ratio that is not based on the interference of interference memory cells.
- the ECC decoder 870 can determine a logical value stored in the observation memory cell in operation S 240 . For example, the ECC decoder 870 can compare likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) to select a state corresponding to the maximum likelihood ratio. The ECC decoder 870 may detect and correct a read error.
- the ECC decoder 870 can determine whether a bit error may be corrected in operation S 250 . That is, operation S 250 may determine whether there is a decoding failure (i.e., there is no decoding failure when a bit error is correctable, and a decoding failure may occur when the bit error is not correctable).
- operation S 260 can be performed to read aggressor memory cells.
- the second data buffer unit can receive the data of the memory cells of an unselected word line adjacent to the selected word line in operation S 260 .
- Operation S 260 can be similarly performed like operation S 130 that has been described above with reference to FIG. 10 . That is, received data can configure a read data symbol.
- interference memory cells adjacent to an observation memory cell may share a word line with the observation memory cell.
- the interference memory cells adjacent to the observation memory cell may not share a word line with the observation memory cell.
- operation S 210 of FIG. 11 of reading the observation memory cell and operation of reading an interference memory cell sharing a word line with the observation memory cell may be simultaneously performed.
- operation S 210 of reading the observation memory cell and an operation of reading interference memory cells not sharing a word line with the observation memory cell may not be performed simultaneously.
- the second bit symbol converter 840 can convert the read data symbols of the interference memory cells into bit symbols in operation S 270 of FIG. 11 .
- the interference calculation unit 850 can compare the bit symbol calculated in operation S 220 and the bit symbol calculated in operation S 270 to calculate the interference the observation memory cell receives from the interference memory cells in operation S 280 . As described above with reference to FIGS. 7 and 8 , the interference calculation unit 850 can calculate interference on the basis of the threshold voltages of the interference memory cells, the directions of the interference memory cells, and distances between the interference memory cells.
- the likelihood ratio calculation unit 860 can calculate a likelihood ratio in operation S 290 .
- the likelihood ratio calculation unit 860 may calculate a logarithmic likelihood ratio on the basis of a bit symbol and interference.
- the likelihood ratio calculation unit 860 may store the threshold voltage dispersions of memory cells based on interference and calculate a likelihood ratio using the threshold voltage dispersions.
- the likelihood ratio calculation unit 860 may calculate likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) of a bit symbol on the basis of information stored, respectively.
- the ECC decoder 870 can determine a logical value stored in the observation memory cell in operation S 170 illustrated in FIG. 10 and described above. For example, the ECC decoder 870 can compare likelihood ratios for the first and second states S1 and S2 (see FIG. 3 ) to select a state corresponding to the maximum likelihood ratio. The ECC decoder 870 can detect and correct at least one bit error based on the again-calculated likelihood ratio in operation S 240 .
- FIG. 12 is a block diagram illustrating an application example of the memory system 600 of FIG. 6 .
- a controller 1200 of the memory system 1000 may be similar to and/or the same as the controller 620 illustrated in FIG. 7 and described above.
- the memory system 1000 can include a nonvolatile memory device 1100 and a controller 1200 .
- the nonvolatile memory device 1100 includes a plurality of nonvolatile memory chips.
- the plurality of nonvolatile memory chips can be divided into a plurality of groups.
- the respective groups of the nonvolatile memory chips can communicate with the controller 1200 through at least one common channel.
- the controller 1200 may be a processor, field programmable gate array, programmable logic device, application specific integrate circuit, and/or any other suitable controller to carry out the exemplary embodiments of the present general inventive concept.
- the controller 1200 may include one or more interfaces to communicate with the nonvolatile memory device 1100 and/or a host.
- the nonvolatile memory chips can communicate with the controller 1200 through first to kth channels CH1 to CHk.
- Each of the nonvolatile memory chips can be similar to and/or the same as the nonvolatile memory device that has been described above with reference to FIGS. 1 and 2 .
- the controller 1200 can be similar to and/or the same as the controller 620 that has been described above with reference to FIG. 7 .
- FIG. 13 is a block diagram illustrating a computing system 2000 including the memory system 1000 which has been described above with reference to FIG. 12 .
- the computing system 200 can include a Central Processing Unit (CPU) 2100 , a Random Access Memory (RAM) 2200 , a user interface 2300 , a power supply 2400 , and the memory system 1000 .
- the user interface 2300 may include one or more input devices and a display to receive one or more selections from a user.
- the power supply 2400 may provide electrical power to one or more of the CPU 2100 , RAM 2200 , the user interface 2300 , and the memory system 1000 .
- the memory system 1000 can be communicatively connected to the CPU 2100 , the RAM 2200 , the user interface 2300 and the power supply 2400 through a system bus 2500 . Data that are provided through the user interface 2300 or processed by the CPU 2100 can be stored in the memory system 1000 .
- the memory system 1000 can include the controller 1200 and the nonvolatile memory device 1100 .
- the nonvolatile memory device 1100 is communicatively connected to the system bus 2500 through the controller 1200 .
- the nonvolatile memory device 1100 may be directly connected to the system bus 2500 .
- the functions and/or operations of the controllers 620 and 1200 that have been respectively described above with reference to FIGS. 6 and 12 can be performed by the CPU 2100 .
- the memory system 1000 that has been described above with reference to FIG. 12 may be provided with the computing system 2000 .
- the memory system 1000 may be replaced by the memory system 600 that has been described above with reference to FIG. 6 .
- the computing system 2000 may include all the memory systems 600 and 1000 that have been respectively described above with reference to FIGS. 6 and 12 .
- Interferences that the observation memory cell receives from the interference memory cells can differ by memory cells.
- threshold voltage dispersions corresponding to respective memory cells can be separately considered.
- An accurate likelihood ratio can be calculated using the separately-considered threshold voltage dispersions. Therefore, an error correcting function can be improved, and the reliability of data stored in the memory cells can be enhanced and/or increased.
- an accurate likelihood ratio can be calculated using the threshold voltage dispersion that is separately considered for each memory cell, and the logical value of the memory cell can be determined. Accordingly, the memory system and the operating method thereof can increase and/or enhance the reliability of data stored in the memory cell.
- the present general inventive concept can also be embodied as computer-readable codes on a computer-readable medium.
- the computer-readable medium can include a computer-readable recording medium and a computer-readable transmission medium.
- the computer-readable recording medium is any data storage device that can store data as a program which can be thereafter read by a computer system. Examples of the computer-readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, and optical data storage devices.
- the computer-readable recording medium can also be distributed over network coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion.
- the computer-readable transmission medium can be transmitted through carrier waves or signals (e.g., wired or wireless data transmission through the Internet). Also, functional programs, codes, and code segments to accomplish the present general inventive concept can be easily construed by programmers skilled in the art to which the present general inventive concept pertains.
Abstract
Provided are a memory system and an operating method thereof. The operating method reads an observation memory cell at least one time with different read voltages to configure a first read data symbol, reads a plurality of interference memory cells adjacent to the observation memory cell at least one time with different read voltages to configure second read data symbols, and determines a logical value of the observation memory cell based on the first read data symbol and the second read data symbols.
Description
- This U.S. non-provisional patent application is a Continuation application of prior application Ser. No. 13/016,063, filed on Jan. 28, 2011 in the United States Patent and Trademark Office, which claims priority under 35 U.S.C. §119(a) from Korean Patent Application No. 10-2010-0018660, filed on Mar. 2, 2010, the entire contents of which are hereby incorporated by reference.
- 1. Field of the Invention
- The present general inventive concept disclosed herein relates to a semiconductor memory device, and more particularly, to a memory system including nonvolatile memory device and an operating method thereof.
- 2. Description of the Related Art
- A semiconductor memory device is a micro electronic device most necessary for digital logic designs that include computers that have a microprocessor, with applications ranging from satellites to consumer electronic technologies. A semiconductor memory device is largely divided into a volatile semiconductor memory device and a nonvolatile semiconductor memory device. The nonvolatile semiconductor memory device may store data even when a power source is shut off. Data stored in nonvolatile memories may be semipermanent or reprogrammed according to memory manufacturing technologies. The nonvolatile semiconductor memory device is used for storing programs and micro codes in a wide range of applications such as computers, avionics, communication, and consumer electronic technologies.
- As a representative example of a nonvolatile memory device, there is a flash memory device. Recently, as the high integration of memory devices is increasingly required, multi-bit memory devices are being generalized which store multi-bits in one memory cell. In the memory cells of a multi-bit flash memory device, the interval between threshold voltage distributions should be densely controlled. Also, technologies are being researched for improving a degree of integration for increasing the number of memory cells per unit area in order to meet high-capacity requirements.
- However, the above-described high capacity memory devices may have decreased reliability of data that are stored in memory cells. For solving this, technology is urgently required to realize the high capacity of nonvolatile memory devices and enhance the reliability of the nonvolatile memory devices.
- Exemplary embodiments of the present general inventive concept provide a memory system and an operating method thereof to minimize prevent a read error due to the difference of interference the memory cells of a nonvolatile memory device receive from peripheral memory cells.
- Additional features and utilities of the present general inventive concept will be set forth in part in the description which follows and, in part, will be obvious from the description, or may be learned by practice of the present general inventive concept.
- Exemplary embodiments of the present general inventive concept may provide an operating method of a memory system, which includes a nonvolatile memory device, including reading an observation memory cell at least one time with different read voltages to configure a first read data symbol, reading a plurality of interference memory cells adjacent to the observation memory cell at least one time with different read voltages to configure a second read data symbol, and determining a logical value of the observation memory cell, based on the first and second read data symbols.
- In exemplary embodiments of the present general inventive concept, the determining of a logical value may include changing the first read data symbol into a first bit symbol, changing the second read data symbol into a second bit symbol, and comparing the first and second bit symbols to determine the logical value of the observation memory cell.
- In exemplary embodiments of the present general inventive concept, the comparing of the first and second bit symbols may include comparing the first and second bit symbols to calculate an interference that the observation memory cell receives, and determining the logical value of the observation memory cell according to at least the first bit symbol and the calculated interference.
- In exemplary embodiments of the present general inventive concept, the determining of the logical value may include calculating a likelihood ratio according to at least the first bit symbol and the calculated interference, and determining the logical value of the observation memory cell according to at least the calculated likelihood ratio.
- In exemplary embodiments of the repent general inventive concept, the configuring of a second read data symbol may include reading interference memory cells, which share a word line with the observation memory cell, at least one time with different read voltages to configure the second read data symbols of the interference memory cells.
- In exemplary embodiments of the present general inventive concept, the configuring of a first read data symbol and the configuring of a second read data symbol may be performed together.
- In exemplary embodiments of the present general inventive concept, the configuring of a second read data symbol may include reading interference memory cells, which share an unselected word line adjacent to a word line of the observation memory cell, at least one time with different read voltages to configure the second read data symbols of the interference memory cells.
- In exemplary embodiments of the present general inventive concept, a memory system can include a nonvolatile memory device including an observation memory cell and a plurality of interference memory cells adjacent to the observation memory cell, and a controller to control the nonvolatile memory device, where the nonvolatile memory device includes a reading/writing circuit to read the observation memory cell and the interference memory cells at least one time with different read voltages, and the controller includes a first data buffer unit to store a first read data symbol which is configured with data of the read observation memory cell, a second data buffer unit to store second read data symbols which are respectively configured with data of the read interference memory cells, and a determination unit to determine a logical value of the observation memory cell, based on the first and second read data symbols.
- In exemplary embodiments of the present general inventive concept, the interference memory cells may include adjacent memory cells to share a word line with the observation memory cell.
- In exemplary embodiments of the present general inventive concept, the interference memory cells may include adjacent memory cells to share a word line with the observation memory cell, and adjacent memory cells that do not share the word line with the observation memory cell.
- In exemplary embodiments of the present general inventive concept, the determination unit may include a first bit symbol converter to receive the first read data symbol stored in the first data buffer unit, and to convert the first read data symbol into a first bit symbol, and a second bit symbol converter to receive the second read data symbol stored in the second data buffer unit, and to convert the second read data symbol into a second bit symbol, and the determination unit to compare the first and second bit symbols to determine the logical value of the observation memory cell.
- In exemplary embodiments of the present general inventive concept, the determination unit may further include an interference calculation unit to compare the first and second bit symbols to calculate an interference that the observation memory cell receives, and the determination unit may determine the logical value of the observation memory cell according to at least the first bit symbol and the calculated interference.
- In exemplary embodiments of the present general inventive concept, the determination unit may further include a likelihood ratio calculation unit to calculate a likelihood ratio of the observation memory cell on the basis of the first bit symbol and the calculated interference; and an Error Correction Code (ECC) decoder to receive the calculated likelihood ratio, and determining the logical value of the observation memory cell according to at least the calculated likelihood ratio.
- The nonvolatile memory device and the controller may configure a semiconductor drive (e.g., a Solid State Drive (SSD)).
- The nonvolatile memory device and the controller may configure a memory card.
- Exemplary embodiments of the present general inventive concept also provide a method of operating a memory system including at least one nonvolatile memory device, the method including receiving data from at least one memory cell of a selected word line of the nonvolatile memory device, determining a first read data symbol, and storing the first read data symbol in a first data buffer, receiving data from memory cells of an unselected word line of the nonvolatile memory device that are adjacent to the at least one memory cell of the selected word line, and storing the received data in a second data buffer, and determining the interference that a first memory cell of the at least one memory cell of a selected word line receives from the memory cells of the unselected word line.
- The method may include where the interference is determined using threshold voltages, the directions, and the distances of the memory cells of the unselected word lines.
- The method may include determining a likelihood ratio according to at least the first read data symbol and the determined interference.
- The method may include determining a logical value stored in the first memory cell according to the determined likelihood ratio.
- The method may include providing the determined logical value as read data when it is requested by a host that is communicatively coupled to the memory system.
- The above and/or other features and utilities of the present general inventive concept will become apparent and more readily appreciated from the following description of the exemplary embodiments, taken in conjunction with the accompanying drawings, in which:
-
FIG. 1 is a diagram illustrating a threshold voltage dispersion of a multi-bit nonvolatile memory device including an error according to exemplary embodiments of the present general inventive concept; -
FIG. 2 is a block diagram illustrating a nonvolatile memory device according to exemplary embodiments of the present general inventive concept; -
FIG. 3 is a diagram illustrating the threshold voltage dispersions of the memory cells of a memory cell array inFIG. 2 ; -
FIG. 4 illustrates a 3-bit symbol corresponding to a read data symbol when first to seventh read voltages are sequentially applied according to exemplary embodiments of the present general inventive concept; -
FIG. 5 is a diagram exemplarily illustrating the threshold voltage dispersions of memory cells which have been changed by the interference of adjacent cells according to exemplary embodiments of the present general inventive concept; -
FIG. 6 is a block diagram illustrating a memory system which includes a nonvolatile memory device, according to exemplary embodiments of the present general inventive concept; -
FIG. 7 is a block diagram illustrating a soft decision logic inFIG. 6 , according to exemplary embodiments of the present general inventive concept; -
FIG. 8 is a block diagram illustrating a soft decision logic inFIG. 6 , according to exemplary embodiments of the present general inventive concept; -
FIG. 9 is a block diagram illustrating a memory cell array ofFIG. 2 according to exemplary embodiments of the present general inventive concept; -
FIG. 10 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in the soft decision logic ofFIG. 8 according to exemplary embodiments of the present general inventive concept; -
FIG. 11 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in the soft decision logic ofFIG. 8 according to exemplary embodiments of the present general inventive concept; -
FIG. 12 is a block diagram illustrating an application example of the memory system ofFIG. 6 according to exemplary embodiments of the present general inventive concept; and -
FIG. 13 is a block diagram illustrating acomputing system 2000 including a memory system according to exemplary embodiments of the present general inventive concept. - Reference will now be made in detail to the embodiments of the present general inventive concept, examples of which are illustrated in the accompanying drawings, wherein like reference numerals refer to the like elements throughout. The embodiments are described below in order to explain the present general inventive concept by referring to the figures.
- Hereinafter, a Solid State Drive (SSD) will be used as an example of a memory system to explain the features and functions of an embodiment of the inventive concept. However, other advantages and performances of exemplary embodiments of the present general inventive concept set forth herein will be readily understood by persons skilled in the art. Also, although a NAND flash memory is described as an example of a storage medium, embodiments of the inventive concept are not limited thereto. For example, memories such as Phase-change Random Access Memory (PRAM), Magnetoresistive Random Access Memory (MRAM), Resistive Random Access Memory (ReRAM), Ferroelectric Random Access Memory (FRAM) and NOR flash memory may be used as storage media. Furthermore, exemplary embodiments of the present general inventive concept may be applied to a memory system in which a plurality of memory devices may be included (e.g., a plurality of different memory devices may be mixed in a memory system).
- The present general inventive concept may be embodied or applied through other embodiments. Besides, the detailed descriptions may be amended or modified according to viewpoints and applications without departing from the scope, technical idea and other utilities of the present general inventive concept.
-
FIG. 1 is a diagram illustrating a threshold voltage dispersion of a multi-bit nonvolatile memory device including an error. InFIG. 1 , the threshold voltage dispersion of memory cells where 2 bits can be stored in one memory cell is exemplarily illustrated. InFIG. 1 , the abscissa axis (i.e., the horizontal axis and/or x-axis) can indicate the threshold voltages (i.e., Vth) of memory cells, and the ordinate axis (i.e., the vertical and/or y-axis) can indicate the number of memory cells. - In a nonvolatile memory device, memory cells can be programmed into
reference dispersions reference dispersion 10 may correspond with an erasing state E0, and thereference dispersions FIG. 1 . The threshold voltages of the memory cells may not maintain the shapes of thereference dispersions - As an example of the change of a threshold voltage, an interference effect due to adjacent memory cells may be exemplified. As an example of the interference, there are F-Poly coupling and lateral charge spreading. F-Poly coupling may be a widening of a threshold voltage distribution because of a coupling between adjacent memory cells in a nonvolatile memory. In the nonvolatile memory cell, when adjacent memory cells have different threshold voltages, the memory cells may affect each other. For example, the threshold voltage of a memory cell may increase or decrease according to the threshold voltage of an adjacent memory cell like F-Poly coupling and lateral charge spreading. Particularly, F-Poly coupling and lateral charge spreading can measurably occur between a memory cell programmed into an erasing state E0 and a memory cell programmed into a programming state P3 having the highest threshold voltage among memory cells.
- When a memory cell is initially programmed, the threshold voltages of memory cells can form the
reference dispersions FIG. 1 as a solid line. The dispersion of memory cells corresponding to thereference dispersion 10 may move to adispersion 15 according to F-Poly coupling or lateral charge spreading. Memory cells corresponding to thereference dispersion 40 may move to adispersion 45 according to F-Poly coupling or lateral charge spreading. That is, the threshold voltages of memory cells programmed into the erasing state E0 may increase according to F-Poly coupling or lateral charge spreading. The threshold voltages of memory cells programmed into the programming state P3 may decrease by lateral charge spreading. As illustrated inFIG. 1 , the memory cells corresponding to thereference dispersion 20 may move to adispersion 25, and the memory cells corresponding to thereference dispersion 30 may move to adispersion 35 according to, for example, F-Poly coupling or lateral charge spreading. - In the above description, the spreading of the threshold voltage dispersion of the nonvolatile memory device may cause a read error. However, a read error may occur by various causes in nonvolatile memory devices and storages. The read error may occur from interference between adjacent cells, a process defect, a signal interference by various external noises, a distortion by a stable channel, the decrease of an amount of charge based on the elapse of time, a programming disturbance (i.e., a disturbance that occurs during a programming operation and/or programming state, such as during programming states P1, P2, and/or P3), and a read disturbance (i.e., a disturbance that occurs during a read operation). Exemplary embodiments of the present general inventive concept disclosed herein provide a memory system and a data processing method which can increase and/or improve the reliability of originally-programmed data from the error.
-
FIG. 2 is a block diagram illustrating anonvolatile memory device 200 according to exemplary embodiments of the present general inventive concept. - Referring to
FIG. 2 , anonvolatile memory device 200 according to exemplary embodiments of the present general inventive concept can include amemory cell array 210, anaddress decoder 220, a reading/writing circuit 230, a data input/output (I/O)circuit 240, acontrol logic 250, and a fractionalread control unit 260. - The
memory cell array 210 can be communicatively connected to theaddress decoder 220 through word lines WL, and can be communicatively connected to the reading/writing circuit 230 through bit lines BL. Thememory cell array 210 can include a plurality of memory cells. Exemplarily, memory cells arranged in the row direction can be communicatively connected to the word lines WL. Memory cells arranged in the column direction are connected to the bit lines BL. Exemplarily, thememory cell array 210 may store one or more bits in each cell. Thememory cell array 210 may be a semiconductor memory device having a plurality of memory cells, or may be a plurality of semiconductor memory devices communicatively coupled to one another. - The
address decoder 220 can be communicatively connected to thememory cell array 210 through the word lines WL. Theaddress decoder 220 can operate according to the control of thecontrol logic 250. Theaddress decoder 220 can receive an address ADDR from the outside (e.g., a host device such as a controller and/or processor that is communicatively coupled to the address decoder 200). The address decoder may be a semiconductor device, a programmable logic device, a field programmable gate array, application specific integrated circuit, or any other suitable semiconductor logic device to carry out the exemplary embodiments of the present general inventive concept disclosed herein. - The
address decoder 220 can decode the block address of the received address ADDR. Theaddress decoder 220 may activate one memory block or a plurality of memory blocks by using the decoded block address (e.g., the received address ADDR from the host device). Theaddress decoder 220 can decode the row address of the received address ADDR. Theaddress decoder 220 may select the word lines WL using the decoded row address. Theaddress decoder 220 can decode the column address of the received address ADDR. The decoded column address can be transferred to the reading/writing circuit 230. Exemplarily, the address decoder may include a block decoder, a row decoder, a column decoder, and an address buffer. - The reading/
writing circuit 230 can be communicatively connected to thememory cell array 210 through the bit lines BL, and can be communicatively connected to the data input/output circuit 240 through data lines DL. The reading/writing circuit 230 can operate according to the control of thecontrol logic 250. That is, the reading/writing circuit 230 may receive one or more commands from thecontrol logic 250, and may operate according to the one or more received commands. The reading/writing circuit 230 can receive the decoded column address from theaddress decoder 220. The reading/writing circuit 230 can select the bit lines BL using the decoded column address. The reading/writing circuit 230 may be a semiconductor device, a programmable logic device, a field programmable gate array, application specific integrated circuit, and/or any other suitable device to carry out the exemplary embodiments of the present general inventive concept disclosed herein. - The reading/
writing circuit 230 can receive one page-size data or any other predetermined amount of data from the data input/output circuit 240, and the received data is programmed (e.g., simultaneously programmed) in a page selected in programming. The reading/writing circuit 230 can read page data selected in a reading operation, and can transfer the read data to the data input/output circuit 240. Exemplarily, the reading/writing circuit 230 may include a page buffer (and/or a page register, data buffer, and/or data register) and a column selecting circuit. - The data input/
output circuit 240 can be communicatively connected to the reading/writing circuit 230 through the data lines DL. The data input/output circuit 240 can operate according to the control of thecontrol logic 250. The data input/output circuit 240 can exchange data DATA with the outside (e.g., a host device, a controller, a microprocessor, and/or any other suitable device to carry out the exemplary embodiments of the present general inventive concept). The data input/output circuit 240 can transfer data, which is received from the outside (e.g., received from the host device), to the reading/writing circuit 230 through the data lines DL. The data input/output circuit 240 can output data, which may be transferred through the data lines DL from the reading/writing circuit 230, to the outside (e.g., to the host device). Exemplarily, the data input/output circuit 240 may include a data buffer. The data buffer may temporarily store data that is received by the data input/output circuit 240 from a host device before providing it to the reading/writing circuit 230 through the data lines DL, or that may temporarily store data that is received from the reading/writing circuit 230 to be output to the outside (e.g., to the host device). - Data transferred from the reading/
writing circuit 230 may be output to the outside (e.g., to the host device) by one page unit and/or by a predetermined data size. The data transferred from the reading/writing circuit 230 may be stored in a buffer circuit (not illustrated) and be transmitted to the outside in packet units. A packet can include a plurality of pages (for example, one packet includes three pages). For example, the buffer circuit (not illustrated) may be the data input/output circuit 240. For example, the buffer circuit (not illustrated) may be a discrete circuit other than the data input/output circuit 240. - The
control logic 250 can be communicatively connected to theaddress decoder 220, the reading/writing circuit 230, and the data input/output circuit 240. Thecontrol logic 250 can control the operation of theflash memory device 200. Thecontrol logic 250 may operate in response to a control signal CTRL transferred from the outside (e.g., from a host device, a controller, a microprocessor, etc.). Thecontrol logic 250 may be a programmable logic device, a field programmable gate array, application specific integrated circuit, a controller, a processor, or any other suitable device to carry out the exemplary embodiments of the present general inventive concept disclosed herein. - The
control logic 250 can include the fractionalread control unit 260. The fractionalread control unit 260 can control the fractional reading operation of thenonvolatile memory device 200. That is, a fractionalread control unit 260 can control a fractional read operation to read a selected memory cell a predetermined number of times and can configure a read data symbol. The fractional read control unit 460 can control a voltage to be applied to a selected memory cell. The function and/or operations of the fractionalread control unit 260 will be described below in more detail with reference toFIGS. 2 and 3 . - As an example, the fractional
read control unit 260 may be a digital circuit, an analog circuit, or the combined circuit of the digital and analog circuits. As another example, the fractionalread control circuit 260 may be implemented in the type of software driven in thecontrol logic 250. As still another example, the fractionalread control unit 260 may be a combination of hardware and software. -
FIG. 3 is a diagram illustrating the threshold voltage dispersions of the memory cells of thememory cell array 210 ofFIG. 2 . InFIG. 3 , the abscissa axis (e.g., the horizontal axis and/or the x-axis) indicates the threshold voltages (e.g., threshold voltage Vth) of memory cells, and the ordinate axis (e.g., the vertical axis and/or y-axis) indicates the number of memory cells. - In
FIG. 3 , the first and second states S1 and S2 of the memory cells are illustrated. However, the memory cells are not limited to have the first and second states S1 and S2. The memory cells can store at least one bit in each cell. That is, the memory cells may have at least two states. - In
FIG. 3 , the threshold voltage dispersions (e.g., the threshold voltage dispersions of the first state S1 and the second state S2) of the memory cells are illustrated. However, the memory cells are not limited to storing data using a threshold voltage. If the memory cells store data using a resistance value, the abscissa axis ofFIG. 3 may indicate the resistance values of the memory cells. That is, the resistance dispersion of the memory cells may be illustrated inFIG. 3 . - As illustrated in
FIG. 3 cells having the first state S1 are dispersed around a first voltage V1. Memory cells having the second state S2 are dispersed around a second voltage V2. - Hereinafter, it is assumed that memory cells that are disposed in the left (e.g., memory cells dispersed around the first voltage V1) with respect to first to seventh read voltages Vr1 to Vr7 correspond to a logic high 1, and memory cells that are disposed in the right (e.g., memory cells dispersed around the second voltage V2) with respect to the first to seventh read voltages Vr1 to Vr7 correspond to a logic low 0. However, exemplary embodiments of the present general inventive concept are not limited thereto. Exemplarily, the first and second states S1 and S2 may be applied to be in correspondence with 1 and 0, respectively.
- Referring to
FIGS. 2 and 3 , the fractionalread control unit 260 can control a fractional reading operation. In the fractional reading operation, the fractionalread control unit 260 can control the reading/writing circuit 230 to read a selected memory cell at least one times. For example, the fractionalread control unit 260 can control the reading/writing circuit 230 to perform i-bit fractional read. In i-bit fractional read, the reading/writing circuit 230 can read a selected memory cell a maximum of (2̂i)−1 times. That is, the reading/writing circuit 230 can read a maximum of (2̂i)−1 bits from one memory cell. A maximum of (2̂i)−1 bits read from one memory cell can configure one symbol. Hereinafter, a symbol read from a selected memory cell is referred to as a read data symbol. - As an example, it is assumed that the fractional
read control unit 260 can control the reading/writing circuit 230 for 3-bit fraction read to be performed. That is, a selected memory cell can be read a maximum of seven times (i.e., where i is the number of bits and i=3, and where (2̂3)−1=7) in fractional read. However, the fractionalread control unit 260 is not limited to control the reading/writing circuit 230 for 3-bit fractional read to be performed. That is, 2-bit, 4-bit, 8-bit, 16-bit, and/or any other suitable number of bits may be used in a fractional read operation. - In fractional read, the fractional
read control unit 260 can control a read voltage applied to a selected memory cell to be controlled. For example, the first to seventh read voltages Vr1 to Vr7 applied to a selected memory cell in fractional read are illustrated inFIG. 3 . In fractional read, the first to seventh read voltages Vr1 to Vr7 can be applied to a selected memory cell. Read data corresponding to the first to seventh read voltages Vr1 to Vr7 can configure a read data symbol. - For example, the first to seventh read voltages Vr1 to Vr7 may be sequentially applied to a selected memory cell. As an example, the first to seventh read voltages Vr1 to Vr7 may be applied to a selected memory cell in reverse order (that is, with voltage Vr7 being applied first, and with the voltages Vr6, Vr5, Vr4, Vr3, Vr2, and Vr1 subsequently applied to the selected memory cell).
- A read data symbol that is obtained by applying the first to seventh read voltages Vr1 to Vr7 may correspond to 3-bit symbol. That is, a 3-bit symbol may be 3 bits, as the fractional read may be selected to be a 3 bit fractional read. The symbol bit number may correspond to the i-bit value that may be selected for the fractional read, as discussed above. For example,
FIG. 4 illustrates a 3-bit symbol corresponding to a read data symbol when the first to seventh read voltages Vr1 to Vr7 are sequentially applied. -
FIG. 4 illustrates a 3-bit symbol corresponding to a read data symbol when the first to seventh read voltages Vr1 to Vr7 are sequentially applied. InFIG. 4 , the ordinate axis indicates the threshold voltage of a selected memory cell, and the abscissa axis indicates a read data symbol and a 3-bit symbol when the first to seventh read voltages Vr1 to Vr7 are sequentially applied. - It can be assumed that a selected memory cell has a threshold voltage corresponding to a first voltage area VA1. As illustrated in
FIG. 3 , the first voltage area VA1 corresponds to a lower level than the first read voltage Vr1. Therefore, when the first to seventh read voltages Vr1 to Vr7 are sequentially applied to a selected memory cell, the selected memory cell can be turned on. That is, as illustrated inFIG. 4 , the first to seventh bits of the read data symbol correspond to 1, respectively. - It is assumed that a selected memory cell has a threshold voltage corresponding to a second voltage area VA2. As illustrated in
FIG. 3 , the second voltage area VA2 corresponds to a level higher than the first read voltage Vr1 and lower than the second read voltage Vr2. Therefore, when the first read voltage Vr1 is applied to a selected memory cell, a selected memory cell is turned off. When the second to seventh read voltages Vr2 to Vr7 are sequentially applied to the selected memory cell, the selected memory cell is turned on. That is, as illustrated inFIG. 4 , the first bit of the read data symbol corresponds to 0, and the second to seventh bits of the read data symbol correspond to 1 (e.g., the read data symbol illustrated inFIG. 4 for VA2 is 0111111, where the first bit of the read data symbol is 0, and the second through seventh bits are 1s). - Likewise,
FIG. 3 illustrated the patterns of read data symbols when the threshold voltages of a selected memory cell respectively correspond to third to eighth voltage areas VA3 to VA8. - Each read data symbol may correspond to a 3-bit symbol. For example, the 3-bit symbol is represented according to the number of 1s (e.g., a read data symbol having seven 1's (“1111111”) may have the three bit symbol of 111, and the read data symbol having no 1's (“0000000”) may be 000).
- It is assumed that a selected memory cell has a threshold voltage corresponding to the first voltage area VA1. When the first to seventh read voltages Vr1 to Vr7 are sequentially applied to the selected memory cell, the read data symbol corresponds to “1111111”. In the read data symbol, since the number of 1 is 7, the 3-bit symbol may be represented as “111”.
- It is assumed that a selected memory cell has a threshold voltage corresponding to the fourth voltage area VA4. When the first to seventh read voltages Vr1 to Vr7 are sequentially applied to the selected memory cell, the read data symbol corresponds to “0001111”. In the read data symbol, since the number of 1 is 4, the 3-bit symbol may be represented as “100”.
- Likewise,
FIG. 3 illustrates exemplary 3-bit symbols respectively corresponding to read data symbols. - As illustrated in
FIG. 4 , a read data symbol that is obtained by reading a selected memory cell at least one time may correspond to a bit symbol. The threshold voltage information of the selected memory cell is represented in a bit symbol. The bit symbol may be used in a succeeding operation such as a soft decision. A soft decision may be determining a likelihood ratio of received data. For example, the likelihood ratios can be determined for the first and second states S1 and S2 (seeFIG. 3 ) of a bit symbol of an observation memory cell (e.g., a memory cell that receives interference from adjacent memory cells), respectively. That is, the read data symbol may be used in a succeeding operation such as a soft decision. -
FIG. 5 is a diagram exemplarily illustrating thethreshold voltage dispersions 500 of memory cells which have been changed by the interference of adjacent cells. InFIG. 5 , the abscissa axis (e.g., the horizontal axis) indicates the threshold voltages of memory cells (e.g., Vth), and the ordinate axis (e.g., vertical axis) indicates the number of memory cells. - In
FIG. 5 , the first and second states S1 and S2 of the memory cells are illustrated. However, the memory cells are not limited to have the first and second states S1 and S2. The memory cells may store at least one bit in each cell. That is, the memory cells may have at least two states. -
Dispersions Dispersions - Hereinafter, while referring to
FIG. 5 , it is assumed that the memory cells corresponding to thedispersions dispersions dispersions - The threshold voltages of memory cells that receive less interference from peripheral cells among the
dispersions dispersions dispersions - Therefore, the threshold voltages of memory cells, which receive less interference from peripheral memory cells among memory cells corresponding to the
dispersions dispersions dispersions dispersions - The
dispersion 510 can be formed by summing memory cells forming thedispersion 530 and memory cells forming thedispersion 550. Thedispersion 520 can be formed by summing memory cells forming thedispersion 540 and memory cells forming thedispersion 560. - It is assumed that a selected memory cell can have a threshold voltage corresponding to A. The selected memory cell may be in the first state S1 or the second state S2. A probability that the selected memory cell may be in the first state S1 may be expressed as the number of memory cells having a threshold voltage corresponding to A and the rate of the number of memory cells having the first state S1. A probability that the selected memory cell may be in the second state S2 may be expressed as the number of memory cells having a threshold voltage corresponding to A and the rate of the number of memory cells having the second state S2.
- A probability that a selected memory cell having a threshold voltage corresponding to A may be in the first state S1 may be expressed as “y/(x+y)”. A probability that a selected memory cell having a threshold voltage corresponding to A may be in the second state S2 may be expressed as “x/(x+y)”. “y/(x+y)” may be greater than “x/(x+y)”. That is, a probability that the selected memory cell having a threshold voltage corresponding to A may be a memory cell having the second state S2 is greater than a probability that the selected memory cell may be a memory cell having the first state S1.
- Referring again to
FIG. 3 , exemplarily, there is a high probability and/or increased probability that memory cells having a threshold voltage corresponding to the first voltage area VA1 may be memory cells having the first state S1. There is a high probability and/or increased probability that memory cells having a threshold voltage corresponding to the eighth voltage area VA8 may be memory cells having the second state S2. - A calculated result may be described in correspondence with the bit symbol that has been described above with reference to
FIGS. 3 and 4 .FIG. 4 exemplarily illustrates a 3-bit symbol corresponding to a read data symbol. Referring toFIGS. 3 and 4 , when the 3-bit symbol is “111”, the threshold voltage of a selected memory cell can be included in the first voltage area VA1. Therefore, there is a high probability and/or increased probability that the state of the selected memory cell may be the first state S1. That is, when the 3-bit symbol is “111”, this may correspond to a probability that the selected memory cell may be a memory cell having the first state S1. - When the 3-bit symbol is “000”, the threshold voltage of a selected memory cell can be included in the eighth voltage area VA8. Therefore, there is a low probability and/or decreased probability that the state of the selected memory cell may be a memory cell having the first state S1. That is, when the 3-bit symbol is “000”, this may correspond to a probability that the selected memory cell may be a memory cell having the first state S1 (e.g., where the corresponding probability that the state of the selected memory cell may be a memory cell having the first state S1 is a low probability and/or decreased probability). Likewise, when the 3-bit symbol is “001” or “110”, this may correspond to a probability that the selected memory cell may be a memory cell having the first state S1.
- The bit symbol may not be limited to correspond only to the probability that the selected memory cell may be the memory cell having the first state S1. The bit symbol may correspond to a probability of the memory cell having the second state S2.
- That is, a probability of the first state S1 or a probability of the second state S2 may be expressed as a bit symbol. The bit symbol may be used in a succeeding operation such as a likelihood ratio calculation and a soft decision.
- In the
dispersions dispersions dispersions - In the
dispersions dispersions dispersions -
FIG. 6 is a block diagram illustrating amemory system 600 which includes anonvolatile memory device 610, according to exemplary embodiments of the present general inventive concept. - Referring to
FIG. 6 , amemory system 600 according to exemplary embodiments of the present general inventive concept can include anonvolatile memory device 610 and acontroller 620. Thenonvolatile memory device 610 can be the same as and/or similar to thenonvolatile memory device 210 that has been described above with reference toFIG. 2 . - The
controller 620 can be communicatively connected to a host and thenonvolatile memory device 610. Thecontroller 620 may be a processor, programmable logic device, application specific integrated circuit, field programmable gate array, and/or any other suitable controller to carry out the exemplary embodiments of the present general inventive concept as disclosed herein. In response to a request from the host, thecontroller 620 can access thenonvolatile memory device 610. For example, thecontroller 620 can control the reading, writing, and erasing operations of thenonvolatile memory device 610. Thecontroller 620 may be an interface between thenonvolatile memory device 610 and the host. Thecontroller 620 can control and/or drive a firmware (e.g., a firmware that is stored in thecontroller 620 and/or the nonvolatile memory device 610) to control thenonvolatile memory device 610. - Exemplarily, as described above with reference to
FIGS. 1 and 5 , thecontroller 620 can provide a control signal CTRL and an address ADDR to thenonvolatile memory device 610. Thecontroller 620 can exchange data DATA with thenonvolatile memory device 610. - The
controller 620 can include asoft decision logic 630. Thesoft decision logic 630 may be one or more electronic circuits, logic gates, fuzzy logic circuits, and/or any other suitable device (as discussed in the examples below) to carry out the exemplary embodiments of the present general inventive concept. Thecontroller 620 can control thesoft decision logic 630. Thesoft decision logic 630 can receive data stored in a selected memory cell from thenonvolatile memory device 610. Thesoft decision logic 630 can calculate the likelihood ratio of received data. Thesoft decision logic 630 can perform the soft decision (e.g., the determination of a likelihood ratio of an observation memory cell, such as the likelihood ratios can be determined for the first and second states S1 and S2 (seeFIG. 3 ) of the bit symbol of the observation memory cell, respectively) of a read data symbol received from thenonvolatile memory device 610. As an example, thesoft decision logic 630 may be implemented as a digital circuit, an analog circuit, or a combined circuit of the digital and analog circuits. As another example, thesoft decision logic 630 may be implemented in controller-readable and executable codes of software that may be driven in thecontroller 620. As still another example, thesoft decision logic 630 may be a combination of hardware (e.g., electronic circuits, logic gates, etc.) and software (e.g., controller and/or computer readable code, that when executed, carry out the soft logic operations). Thesoft decision logic 630 will be described in more detail with reference toFIGS. 7 to 10 . - The
soft decision logic 630 may include an Error Correction Code (ECC) decoder that is the same as and/or similar to theECC decoder 750 illustrated inFIG. 7 and described below. TheECC decoder 750 can determine and correct a logical value stored in an observation memory cell on the basis of a likelihood ratio of the observation memory cell. An observation memory cell, as discussed in detail below, may be a memory cell that receives interference from adjacent memory cells, and is included in memory cells sharing a selected word line. That is, the likelihood ratio of an observation memory cell can be determined on the basis of a bit symbol of the observation memory cell and interference that the observation memory cell receives. For example, the likelihood ratios can be determined for the first and second states S1 and S2 (seeFIG. 3 ) of the bit symbol of the observation memory cell, respectively. - A host interface of the
controller 620 can include a protocol to perform data exchange between the host and thecontroller 620. Exemplarily, thecontroller 620 can communicate with the outside (for example, the host) through at least one of a plurality of interface protocols such as a Universal Serial Bus (USB) protocol, a Multimedia Card (MMC) protocol, a Peripheral Component Interconnection (PCI) protocol, a PCI-Express (PCI-E) protocol (i.e., a Peripheral Component Interconnect), an Advanced Technology Attachment (ATA) protocol, a Serial-ATA (SATA) protocol, a Parallel-ATA (PATA) protocol, a Small Component Small Interface (SCSI) protocol, an Enhanced Small Disk Interface (ESDI) protocol and a Integrated Drive Electronics (IDE) protocol. A memory interface of thecontroller 620 can interface with thenonvolatile memory device 610. For example, the memory interface can include a NAND interface or a NOR interface. - The
controller 620 and thenonvolatile memory device 610 may be integrated as one semiconductor device. Exemplarily, thecontroller 620 and thenonvolatile memory device 610 can be integrated as one semiconductor device to configure a memory card. For example, thecontroller 620 and thenonvolatile memory device 610 can be integrated as one semiconductor device to configure a memory card such as Personal Computer Memory Card International Association (PCMCIA), Compact Flash (CF), smart media card (SM, SMC), memory stick, multimedia card (MMC, RS-MMC (Reduced Size Multi Media Card), MMCmicro), SD card (SD (Secure Digital), miniSD, microSD, SDHC (Secure Digital High Capacity)) and universal flash memory device. - The
controller 620 and thenonvolatile memory device 610 can be integrated as one semiconductor device to configure a semiconductor drive (e.g., Solid State Drive (SSD)). The semiconductor drive (SSD) can include a storage device to store data in a semiconductor memory. When thememory system 600 is used as the semiconductor drive (SSD), the operation speed of a host connected to thememory system 600 can be significantly improved and/or the operation speed can be increased. - As another example, the
memory system 600 can be provided as one of a plurality of elements of electronic devices such as computers, Ultra Mobile PCs (UMPCs), workstations, net-books, Personal Digital Assistants (PDAs), portable computers, web tablets, wireless phones, mobile phones, smart phones, e-books, Portable Multimedia Players (PMPs), portable game machines, navigation devices, black boxes, digital cameras, Digital Multimedia Broadcasting (DMB) players, digital audio recorders, digital audio players, digital picture recorders, digital picture players, digital video recorders, digital video players, devices for transmitting/receiving information at a wireless environment, one of various electronic devices configuring a home network, one of various electronic devices configuring a computer network, one of various electronic devices configuring a telematics network, RFID (Radio Frequency Identification) devices and one of a plurality of elements configuring a computing system. - Exemplarily, the
nonvolatile memory device 610 or thememory system 600 according to exemplary embodiments of the present general inventive concept may be mounted as various types of packages. For example, thenonvolatile memory device 610 or thememory system 600 according to exemplary embodiments of the present general inventive concept may be packaged in a package type such as Package on Package (PoP), Ball Grid Arrays (BGAs), Chip Scale Packages (CSPs), Plastic Leaded Chip Carrier (PLCC), Plastic Dual In-Line Package (PDIP), Die In Waffle Pack (DIWP), Die In Wafer Form (DIWF), Chip On Board (COB), Ceramic Dual In-Line Package (CERDIP), Plastic Metric Quad Flat Pack (MQFP), Thin Quad Flat Pack (TQFP), Small Outline Package (SOP), Shrink Small Outline Package (SSOP), Thin Small Outline Package (TSOP), Thin Quad Flat Pack (TQFP), System In Package (SIP), Multi Chip Package (MCP), Wafer Level Stack Package (WLSP), Die In Wafer Form (DIWF), Die On Waffle Package (DOWP), Wafer-level Fabricated Package (WFP) and Wafer-Level Processed Stack Package (WSP), thereby being mounted. -
FIG. 7 is a block diagram illustrating a soft decision logic inFIG. 6 , according to an exemplary embodiments of the inventive concept. That is, thesoft decision logic 630 included in thecontroller 620 illustrated inFIG. 6 is renumbered assoft decision logic 700 as illustrated inFIG. 7 . - Referring to
FIG. 7 , asoft decision logic 700 according to exemplary embodiments of the present general inventive concept includes adata buffer unit 710, abit symbol converter 720, aninterference calculation unit 730, a Likelihood Ratio (LR)calculation unit 740, and an Error Correction Code (ECC)decoder 750. - The
data buffer unit 710 can receive and store a read data symbol from thenonvolatile memory device 610 ofFIG. 6 . Thedata buffer unit 710 can include first to jth data buffers 711 to 71 j. - Exemplarily, in the cases of NAND flash memories, one read voltage can be applied to a word line and a reading operation can be performed in one page unit or in any other suitable unit. When first to jth read voltages are applied to the memory cells of a selected word line, a j number of pages can be read.
- Exemplarily, read data that are read by applying a first read voltage Vr1 to the memory cells of a selected word line can be stored in the
first data buffer 711. Likewise, read data that are read by applying second to jth read voltages Vr2 to Vrj to the memory cells of a selected word line are respectively stored in the second to jth data buffers 712 to 71 j. - The read data of one memory cell that are read using first to jth read voltages form one read data symbol.
- A memory cell (hereinafter referred to as an observation memory cell) receiving interference from adjacent memory cells can be included in memory cells sharing a selected word line. Memory cells (hereinafter referred to as interference memory cells) adjacent to the observation memory cell can be included in memory cells sharing the selected word line.
- The
bit symbol converter 720 can convert the read data symbol of thedata buffer unit 710 into a bit symbol. Exemplarily, thebit symbol converter 720 can convert the read data symbol into an i-bit symbol. Herein, j may be “(2̂i)−1”. That is, the value of j may be the same as the value of (2̂i)−1. For example, when i is 3, j may be 7 (i.e., 2̂3−1). As an example, as described above with reference toFIG. 4 , thebit symbol converter 720 can convert a read data symbol into a 3-bit symbol when a 3-bit fractional reading operation is performed. For example, thebit symbol converter 720 can convert a read bit symbol into a 3-bit symbol by counting the number of 1s in the read data symbol. - The
interference calculation unit 730 can receive the bit symbols of memory cells that have been converted through thebit symbol converter 720. The converted bit symbols of the memory cells include threshold information. Theinterference calculation unit 730 can include first tonth interference calculators 731 to 73 n. - According to exemplary embodiments of the present general inventive concept, the likelihood ratio of an observation memory cell can be calculated on the basis of the degree where the threshold voltage of the observation memory cell is changed by the interference of adjacent memory cells. The observation memory cell can be one of a plurality of memory cells sharing a selected word line. Interference memory cells may also be one or more memory cells sharing the selected word line.
- The
first interference calculator 731 can calculate interference that the observation memory cell receives from the interference memory cells, on the basis of the bit symbols of interference memory cells. Exemplarily, interference that a first observation memory cell receives can be calculated on the basis of the bit symbols of interference memory cells that share a word line with an observation memory cell. - Likewise, the second to
nth interference calculators 732 to 73 n can calculate interferences the second to nth observation memory cells receive from interference memory cells, respectively. - Exemplarily, it can be assumed that an observation memory cell is programmed from the erasing state E0 (see
FIG. 1 ) into one or more programming states (e.g., P1, P2, P3, etc. as illustrated inFIG. 1 ) and/or back to the erasing state E0. It is assumed that an interference memory cell can be programmed from the erasing state E0 into the programming state P1 (seeFIG. 1 ). In this case, F-Poly coupling can be noticeable in the observation memory cell. - Exemplarily, it can be assumed that an observation memory cell is programmed from the erasing state E0 (see
FIG. 1 ) into one or more programming states and the erasing state E0. It is assumed that an interference memory cell can be programmed from the erasing state E0 into the programming state P1 (seeFIG. 1 ). In this case, interference that the observation memory cell receives can be less than interference that the observation memory cell receives when the interference memory cell is programmed into a programming state P3 (seeFIG. 3 ). - The likelihood
ratio calculation unit 740 can calculate the likelihood ratio of an observation memory cell on the basis of the bit symbol of the observation memory cell and interference that the observation memory cell receives. For example, the likelihoodratio calculation unit 740 can calculate the logarithmic likelihood ratio of the observation memory cell. As an example, the likelihoodratio calculation unit 740 can calculate likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) of the bit symbol of the observation memory cell, respectively. - Exemplarily, the likelihood
ratio calculation unit 740 can store information for the threshold voltage dispersions of memory cells. For example, the likelihoodration calculation unit 740 can store information of threshold voltage dispersions based on interference. Based on the stored information, the likelihoodratio calculation unit 740 can calculate likelihood ratios for the first and second states S1 and S2 of the observation memory cell, respectively. - Exemplarily, a likelihood ratio can be calculated at the rate of two conditional probabilities. For example, as expressed in Equations (1) and (2) below, the likelihood ratio can be calculated at the rate of a probability that a memory cell corresponding to a received bit symbol is in the first state S1 to a probability that the memory cell corresponding to the received bit symbol is in the second state S2, where the rate of probability is rip in the equations below). For example, the probability that the memory cell corresponding to the received bit symbol is in the first state S1 or the second state S2 may be calculated on the basis of information for threshold voltage dispersions based on interference.
-
likelihood ratio=P(r|p=S1)/P(r|p=S2) (1) - Referring to Equation (1), a likelihood ratio may be calculated by dividing a probability that a memory cell corresponding to a bit symbol data received by the likelihood
ratio calculation unit 740 is programmed into the first state S1 by a probability that the bit symbol data received by a probability that the likelihoodratio calculation unit 740 is programmed into the second state S2. -
likelihood ratio=P(r|p=S2)/P(r|p=S1) (2) - In Equation (2), a likelihood ratio may be calculated by dividing a probability that a memory cell corresponding to a bit symbol data received by the likelihood
ratio calculation unit 740 is in the second state S2 by a probability of the first state S1. - Exemplarily, information of threshold voltage dispersions can be provided through measurement. For example, the
controller 620 can measure the threshold voltage dispersions of memory cells in thenonvolatile memory device 610 and store the measured dispersions in the likelihoodratio calculation unit 740. When the threshold voltage dispersions of the memory cells are changed, the information of the threshold voltage dispersions stored in the likelihoodratio calculation unit 740 can be updated. As an example, when the threshold voltage dispersions of the memory cells are varied, thecontroller 620 can re-measure the threshold voltage dispersions of the memory cells of thenonvolatile memory device 610. Exemplarily, re-measurement can be performed based on the deterioration (for example, the number of programming and erasing times) of the memory cells of thenonvolatile memory device 610. Exemplarily, the measurement of threshold voltage dispersions can be performed through fractional read. - As another example, threshold voltage information based on interference can be provided in a predetermined table type. The likelihood
ratio calculation unit 740 can calculate the likelihood ratio of a bit symbol, based on the predetermined table. - The
ECC decoder 750 can receive the likelihood ratio of an observation memory cell that is calculated from the likelihoodratio calculation unit 740. TheECC decoder 750 can determine a logical value stored in the observation memory cell on the basis of the likelihood ratio of the observation memory cell. For example, theECC decoder 750 can compare likelihood ratios for the first and second states (seeFIG. 3 ) to select a state corresponding to the maximum likelihood ratio. The logical value determined by theECC decoder 750 may be provided as a read data that a host requests. -
FIG. 8 is a block diagram illustrating a soft decision logic inFIG. 6 , according to another embodiment of the inventive concept. That is, thesoft decision logic 630 included in thecontroller 620 illustrated inFIG. 6 is renumbered assoft decision logic 800 as illustrated inFIG. 7 . - Referring to
FIG. 8 , asoft decision logic 800 according to exemplary embodiments of the inventive concept can include first and seconddata buffer units bit symbol converters interference calculation unit 850, a Likelihood Ratio (LR)calculation unit 860, and an Error Correction Code (ECC)decoder 870. - The first
data buffer unit 810 may be similar to and/or the same as thedata buffer unit 710 illustrated inFIG. 7 and described above, and the firstbit symbol converter 830 may be similar to and/or the same as thebit symbol converter 720 illustrated inFIG. 7 and described above. - The second
data buffer unit 820 can receive read data symbols from the memory cells of an unselected word line adjacent to a selected word line and can store the received symbols. The seconddata buffer unit 820 can include first to jth data buffers 821 to 82 j. - Exemplarily, in the cases of NAND flash memories, one read voltage can be applied to a word line and a reading operation can be performed in one page unit. When first to jth read voltages are applied to the memory cells of a selected word line, a j number of pages can be read.
- Exemplarily, read data that are read by applying a first read voltage Vr1 to the memory cells of a selected word line can be stored in the
first data buffer 821. Likewise, read data that are read by applying second to jth read voltages Vr2 to Vrj to the memory cells of a selected word line can be respectively stored in second to jth data buffers 822 to 82 j. - The read data of one memory cell that are read using first to jth read voltages can form one read data symbol. Read data symbols received from the memory cells of an unselected word line can be used to calculate interference that an observation memory cell receives from interference memory cells.
- The second
bit symbol converter 840 can convert the read data symbol of the seconddata buffer unit 820 into a bit symbol. The secondbit symbol converter 840 can be configured the same as and/or similar to where the firstbit symbol converter 830 receives a read data symbol and converts it into an i-bit symbol. Herein, j may be “(2̂i)−1”. - That is, the first
bit symbol converter 830 can store information for the threshold voltages of the memory cells of a selected word line. The secondbit symbol converter 840 can store information for the threshold voltages of the memory cells of an unselected word line adjacent to the selected word line. - Herein, the observation memory cell can be included in memory cells sharing the selected word line. The interference memory cells can be included in memory cells that share a word line with the observation memory cell and memory cells that do not share a word line with the observation memory cell.
- The
interference calculation unit 850 can receive the bit symbols of memory cells that have been converted through the first and secondbit symbol converters interference calculation unit 850 can include first tonth interference calculators 851 to 85 n. - The first to
nth interference calculators 851 to 85 n can calculate interferences that first to nth observation memory cells receive from interference memory cells, respectively. Thesoft decision logic 700 according to exemplary embodiments of the present general inventive concept can calculate the interference of interference memory cells sharing a selected word line. Thesoft decision logic 800 according to exemplary embodiments of the present general inventive concept may also calculate the interference of interference memory cells sharing a selected word line and the interference of interference memory cells not sharing the selected word line. -
FIG. 9 is a block diagram illustratingmemory cell array 900, which may be similar to and/or the same as thememory cell array 210 illustrated inFIG. 2 and described above.Memory cell array 900 can include word lines (e.g., WL1, WL2, WLm), bit lines (e.g., BL1, BL2, BL3, BLn), and memory cells (MC11 to MC1n, MC11 to MCm1, and MC11 to MCmn). - Exemplarily, it is assumed that an observation memory cell is a memory cell MC12. Interference memory cells MC13 and MC11 that are disposed in x1 and x2 directions are memory cells that can share a word line with the observation memory cell MC12. Therefore, interference the observation memory cell MC12 receives from the interference memory cells MC13 and MC11 that are disposed in x1 and x2 directions can be calculated as described above with reference to
FIG. 7 . - The threshold voltage information of an interference memory cell MC22 can be stored in the second
bit symbol converter 840 ofFIG. 8 . Accordingly, interference that the observation memory cell MC12 receives from the interference memory cell MC22 that is disposed in a y direction may be calculated. - The threshold voltage information of interference memory cells MC23 and MC21 can be stored in the second
bit symbol converter 840 ofFIG. 8 . Therefore, interference that the observation memory cell MC12 receives from the interference memory cells MC23 and MC21 that are disposed in xy1 and xy2 directions may be calculated. - By summing respective calculated interferences, interference that the observation memory cell MC12 receives from the interference memory cells can be calculated.
- Referring again to
FIG. 8 , the likelihoodratio calculation unit 860 can be similar to and/or the same as the likelihoodratio calculation unit 740 illustrated inFIG. 7 and described above. That is, a likelihood ratio can be calculated on the basis of a bit symbol and a calculated interference. For example, the likelihoodratio calculation unit 860 can calculate and/or determine a logarithmic likelihood ratio on the basis of a bit symbol and a calculated interference. As an example, the likelihoodratio calculation unit 860 can calculate likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) of a bit symbol that is converted. Exemplarily, the likelihoodratio calculation unit 860 can store information for threshold voltage dispersions based on interference. Based on the stored information, the likelihoodratio calculation unit 860 can calculate likelihood ratios for the first and second states S1 and S2 of the bit symbol, respectively. - As another example, threshold voltage information based on interference can be provided in a predetermined table type. The likelihood
ratio calculation unit 860 can calculate the likelihood ratio of a bit symbol, based on the predetermined table. - The
ECC decoder 870 can receive the likelihood ratio of an observation memory cell that is calculated from the likelihoodratio calculation unit 860. TheECC decoder 870 can be similar to and/or the same as theECC decoder 750 illustrated inFIG. 7 and described above. TheECC decoder 870 can determine a logical value stored in the observation memory cell on the basis of the likelihood ratio of the observation memory cell. For example, theECC decoder 870 can compare likelihood ratios for the first and second states (seeFIG. 3 ) to select a state corresponding to the maximum likelihood ratio. The logical value determined by theECC decoder 870 may be provided as a read data that a host requests. - The first and second
data buffer units bit symbol converters nonvolatile memory device 610 illustrated inFIG. 6 . Likewise, thedata buffer unit 710 andbit symbol converter 720 ofFIG. 7 may be included in thenonvolatile memory device 610 illustrated inFIG. 6 . - When the
data buffer unit 710 andbit symbol converter 720 ofFIG. 7 are included in thenonvolatile memory device 610, thedata buffer unit 710 andbit symbol converter 720 can be configured and/or operate as described above with reference toFIG. 7 . In this case, thedata buffer unit 710 andbit symbol converter 720 can operate according to the control of thecontrol logic 250 ofFIG. 2 . - When first and second
data buffer units bit symbol converters nonvolatile memory device 610, first and seconddata buffer units bit symbol converters FIG. 8 . In this case, first and seconddata buffer units bit symbol converters control logic 250 ofFIG. 2 . - Exemplarily, the first
data buffer unit 810 included in thenonvolatile memory device 610 can store the data of the memory cells of a selected word line that are read a maximum of (2̂i)−1 times. The firstbit symbol converter 830 included in thenonvolatile memory device 610 can convert the data of the memory cells of the selected word line into i-bit symbols. The converted i-bit symbols can be transmitted to theinterference calculation unit 850 and likelihoodratio calculation unit 860 of thecontroller 620, respectively. When defining one data as a bit symbol data in the i-bit symbol, the bit symbol data of the memory cells of the selected word line may be transmitted to thecontroller 620. In this case, the i-bit symbol may be transmitted to the controller 620 i times. - The second
data buffer unit 820 can be configured and/or operate like the firstdata buffer unit 810. In exemplary embodiments of the present general inventive concept, thesecond data buffer 820 can store the data of the memory cells of an unselected word line adjacent to a selected word line. The secondbit symbol converter 840 can convert the data of the memory cells of the unselected word line adjacent to the selected word line into i-bit symbol data. The respective converted bit symbol data can be transmitted to theinterference calculation unit 850 of thecontroller 620. - Exemplarily, when an interface between the
nonvolatile memory device 610 and thecontroller 620 is analog (e.g., includes analog electrical circuits), the firstbit symbol converter 830 and the secondbit symbol converter 840 may be included in thecontroller 620. In this case, thecontroller 620 may include an analog-to-digital converter (ADC, not illustrated). Thecontroller 620 can receive the analog values of the data of a selected word line that are read (e.g., read during one time period). Thecontroller 620 can convert the received analog values into digital data through the analog-to-digital converter (ADC, not illustrated) and can store the converted digital data. The data of the selected word line can be read (2̂i)−1 times in thenonvolatile memory device 610, and thecontroller 620 can receive the analog data of the selected word line that is read (2̂i)−1 times. Thecontroller 620 may include an analog-to-digital converter (ADC), and it may convert analog data received into digital data with the ADC and store the converted digital data. The digital data of the selected word line that are stored in the ADC are converted into i-bit symbols by the firstbit symbol converter 830. Likewise, the secondbit symbol converter 840 can be configured to operate according to the control of thecontrol logic 250 ofFIG. 2 . -
FIG. 10 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in thesoft decision logic 800 ofFIG. 8 according to exemplary embodiments of the present general inventive concept. - Referring to
FIGS. 8 and 10 , the firstdata buffer unit 810 can receive the data of the memory cells of a selected word line that are read through an i-bit fractional reading scheme in operation S110. When it is assumed that the firstdata buffer unit 810 receives data by one page units, the firstdata buffer unit 810 may receive data a maximum of (2̂i)−1 times. A (2̂i)−1 number of data corresponding to one memory cell can configure and/or determine a read data symbol. - The read data symbol stored in the first
data buffer unit 810 can be converted into a bit symbol in operation S120. - The second
data buffer unit 820 can receive the data of the memory cells of an unselected word line adjacent to the selected word line that are read through the i-bit fractional reading scheme in operation S130. The firstdata buffer unit 810 can receive the data of the memory cells of the selected word line that are read through the i-bit fractional reading scheme. - When it is assumed that the
soft logic 630 receives data by one page units (i.e., data is received in predetermined page sizes), the firstdata buffer unit 810 may receive data a maximum of (2̂i)−1 times. A (2̂i)−1 number of data corresponding to one memory cell configure a read data symbol. - Referring to
FIG. 9 , interference memory cells adjacent to an observation memory cell may share a word line with the observation memory cell. The interference memory cells adjacent to the observation memory cell may not share a word line with the observation memory cell. In a NAND flash memory where a reading operation is performed in page units, therefore, operation S110 of reading the observation memory cell and operation of reading an interference memory cell sharing a word line with the observation memory cell may be simultaneously performed. In exemplary embodiments of the present general inventive concept, operation S110 of reading the observation memory cell and operation of reading interference memory cells not sharing a word line with the observation memory cell may not be performed simultaneously. - The read data symbol stored in the first
data buffer unit 810 can be converted into a bit symbol in operation S140. - On the basis of the bit symbol calculated in operation S120 and the bit symbol calculated in operation S140, the
interference calculation unit 850 can calculate interference that the observation memory cell receives from the interference memory cells in operation S150. As described above with reference toFIGS. 7 and 8 , theinterference calculation unit 850 can calculate interference on the basis of the threshold voltages of the interference memory cells, the directions of the interference memory cells, and distances between the interference memory cells. - On the basis of the bit symbol calculated in operation S120 and the interference calculated in operation S150, the likelihood
ratio calculation unit 860 can calculate a likelihood ratio in operation S160. For example, the likelihoodratio calculation unit 860 may calculate a logarithmic likelihood ratio on the basis of a bit symbol and interference. Exemplarily, the likelihoodratio calculation unit 860 may calculate a likelihood ratio on the basis of information for the threshold voltage dispersions of memory cells stored. As an example, the likelihoodratio calculation unit 860 may store the threshold voltage dispersions of memory cells based on interference and calculate a likelihood ratio using the threshold voltage dispersions. Exemplarily, the likelihoodratio calculation unit 860 may calculate likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) of a bit symbol on the basis of information stored, respectively. - Based on the likelihood ratio that has been calculated in operation S160, the
ECC decoder 870 can determine a logical value stored in the observation memory cell in operation S170. For example, theECC decoder 870 compares likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) to select a state corresponding to the maximum likelihood ratio. The logical value determined by theECC decoder 870 may be provided as a read data that a host requests. -
FIG. 11 is a flowchart illustrating a method of determining logical values which are stored in an observation memory cell in thesoft decision logic 800 ofFIG. 8 according to exemplary embodiments of the present general inventive concept. - Referring to
FIGS. 8 and 11 , the firstdata buffer unit 810 can receive the data of the memory cells of a selected word line that are read through an i-bit fractional reading scheme in operation S210. A maximum of (2̂i)−1 data corresponding to one memory cell can configure a read data symbol. - The read data symbol stored in the first
data buffer unit 810 can be converted into a bit symbol in operation S220. That is, operations S210 and S220 are as described above with reference to thefirst data buffer 810 and its operation as illustrated inFIGS. 8 and 10 . - On the basis of the bit symbol calculated in operation S220, the likelihood
ratio calculation unit 860 can calculate a likelihood ratio in operation S230. For example, the likelihoodratio calculation unit 860 may calculate a logarithmic likelihood ratio on the basis of a bit symbol and interference. For example, the likelihoodratio calculation unit 860 can calculate likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) of a converted bit symbol, respectively. Exemplarily, the likelihoodratio calculation unit 860 may calculate the likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) of the bit symbol on the basis of information for the threshold voltage dispersions stored, respectively. The likelihoodratio calculation unit 860 may calculate a likelihood ratio that is not based on the interference of interference memory cells. - Based on the likelihood ratio that has been calculated in operation S230, the
ECC decoder 870 can determine a logical value stored in the observation memory cell in operation S240. For example, theECC decoder 870 can compare likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) to select a state corresponding to the maximum likelihood ratio. TheECC decoder 870 may detect and correct a read error. - The
ECC decoder 870 can determine whether a bit error may be corrected in operation S250. That is, operation S250 may determine whether there is a decoding failure (i.e., there is no decoding failure when a bit error is correctable, and a decoding failure may occur when the bit error is not correctable). - When an error is corrected, the soft decision operation and ECC decoding of a selected word line are completed.
- When ECC decoding is failed in operation S250, operation S260 can be performed to read aggressor memory cells. The second data buffer unit can receive the data of the memory cells of an unselected word line adjacent to the selected word line in operation S260. Operation S260 can be similarly performed like operation S130 that has been described above with reference to
FIG. 10 . That is, received data can configure a read data symbol. - Referring to
FIG. 9 , interference memory cells adjacent to an observation memory cell may share a word line with the observation memory cell. The interference memory cells adjacent to the observation memory cell may not share a word line with the observation memory cell. In a NAND flash memory where a reading operation is performed in page units, therefore, operation S210 ofFIG. 11 of reading the observation memory cell and operation of reading an interference memory cell sharing a word line with the observation memory cell may be simultaneously performed. In exemplary embodiments of the present general inventive concept, operation S210 of reading the observation memory cell and an operation of reading interference memory cells not sharing a word line with the observation memory cell may not be performed simultaneously. - The second
bit symbol converter 840 can convert the read data symbols of the interference memory cells into bit symbols in operation S270 ofFIG. 11 . - The
interference calculation unit 850 can compare the bit symbol calculated in operation S220 and the bit symbol calculated in operation S270 to calculate the interference the observation memory cell receives from the interference memory cells in operation S280. As described above with reference toFIGS. 7 and 8 , theinterference calculation unit 850 can calculate interference on the basis of the threshold voltages of the interference memory cells, the directions of the interference memory cells, and distances between the interference memory cells. - On the basis of the bit symbol calculated in operation S220 and the interference calculated in operation S280, the likelihood
ratio calculation unit 860 can calculate a likelihood ratio in operation S290. For example, the likelihoodratio calculation unit 860 may calculate a logarithmic likelihood ratio on the basis of a bit symbol and interference. Exemplarily, the likelihoodratio calculation unit 860 may store the threshold voltage dispersions of memory cells based on interference and calculate a likelihood ratio using the threshold voltage dispersions. Exemplarily, the likelihoodratio calculation unit 860 may calculate likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) of a bit symbol on the basis of information stored, respectively. - Based on the likelihood ratio that has again been calculated in operation S290, the
ECC decoder 870 can determine a logical value stored in the observation memory cell in operation S170 illustrated inFIG. 10 and described above. For example, theECC decoder 870 can compare likelihood ratios for the first and second states S1 and S2 (seeFIG. 3 ) to select a state corresponding to the maximum likelihood ratio. TheECC decoder 870 can detect and correct at least one bit error based on the again-calculated likelihood ratio in operation S240. -
FIG. 12 is a block diagram illustrating an application example of thememory system 600 ofFIG. 6 . - A
controller 1200 of thememory system 1000 may be similar to and/or the same as thecontroller 620 illustrated inFIG. 7 and described above. - Referring to
FIG. 12 , thememory system 1000 according to exemplary embodiments of the present general inventive concept can include anonvolatile memory device 1100 and acontroller 1200. Thenonvolatile memory device 1100 includes a plurality of nonvolatile memory chips. The plurality of nonvolatile memory chips can be divided into a plurality of groups. The respective groups of the nonvolatile memory chips can communicate with thecontroller 1200 through at least one common channel. Thecontroller 1200 may be a processor, field programmable gate array, programmable logic device, application specific integrate circuit, and/or any other suitable controller to carry out the exemplary embodiments of the present general inventive concept. Thecontroller 1200 may include one or more interfaces to communicate with thenonvolatile memory device 1100 and/or a host. - In
FIG. 8 , it is illustrated that the nonvolatile memory chips can communicate with thecontroller 1200 through first to kth channels CH1 to CHk. Each of the nonvolatile memory chips can be similar to and/or the same as the nonvolatile memory device that has been described above with reference toFIGS. 1 and 2 . Thecontroller 1200 can be similar to and/or the same as thecontroller 620 that has been described above with reference toFIG. 7 . -
FIG. 13 is a block diagram illustrating acomputing system 2000 including thememory system 1000 which has been described above with reference toFIG. 12 . - Referring to
FIG. 13 , thecomputing system 200 according to exemplary embodiments of the present general inventive concept can include a Central Processing Unit (CPU) 2100, a Random Access Memory (RAM) 2200, auser interface 2300, apower supply 2400, and thememory system 1000. Theuser interface 2300 may include one or more input devices and a display to receive one or more selections from a user. Thepower supply 2400 may provide electrical power to one or more of theCPU 2100,RAM 2200, theuser interface 2300, and thememory system 1000. - The
memory system 1000 can be communicatively connected to theCPU 2100, theRAM 2200, theuser interface 2300 and thepower supply 2400 through asystem bus 2500. Data that are provided through theuser interface 2300 or processed by theCPU 2100 can be stored in thememory system 1000. Thememory system 1000 can include thecontroller 1200 and thenonvolatile memory device 1100. - In
FIG. 13 , it is illustrated that thenonvolatile memory device 1100 is communicatively connected to thesystem bus 2500 through thecontroller 1200. However, thenonvolatile memory device 1100 may be directly connected to thesystem bus 2500. The functions and/or operations of thecontrollers FIGS. 6 and 12 can be performed by theCPU 2100. - In
FIG. 13 , thememory system 1000 that has been described above with reference toFIG. 12 is illustrated may be provided with thecomputing system 2000. However, thememory system 1000 may be replaced by thememory system 600 that has been described above with reference toFIG. 6 . - Exemplarily, the
computing system 2000 may include all thememory systems FIGS. 6 and 12 . - Interferences that the observation memory cell receives from the interference memory cells can differ by memory cells. According to exemplary embodiments of the present general inventive concept, threshold voltage dispersions corresponding to respective memory cells can be separately considered. An accurate likelihood ratio can be calculated using the separately-considered threshold voltage dispersions. Therefore, an error correcting function can be improved, and the reliability of data stored in the memory cells can be enhanced and/or increased.
- According to exemplary embodiments of the present general inventive concept, an accurate likelihood ratio can be calculated using the threshold voltage dispersion that is separately considered for each memory cell, and the logical value of the memory cell can be determined. Accordingly, the memory system and the operating method thereof can increase and/or enhance the reliability of data stored in the memory cell.
- The present general inventive concept can also be embodied as computer-readable codes on a computer-readable medium. The computer-readable medium can include a computer-readable recording medium and a computer-readable transmission medium. The computer-readable recording medium is any data storage device that can store data as a program which can be thereafter read by a computer system. Examples of the computer-readable recording medium include read-only memory (ROM), random-access memory (RAM), CD-ROMs, magnetic tapes, floppy disks, and optical data storage devices. The computer-readable recording medium can also be distributed over network coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion. The computer-readable transmission medium can be transmitted through carrier waves or signals (e.g., wired or wireless data transmission through the Internet). Also, functional programs, codes, and code segments to accomplish the present general inventive concept can be easily construed by programmers skilled in the art to which the present general inventive concept pertains.
- The above-disclosed subject matter is to be considered illustrative and not restrictive, and the appended claims are intended to cover all such modifications, enhancements, and other embodiments, which fall within the true spirit and scope of the inventive concept. Thus, to the maximum extent allowed by law, the scope of the inventive concept is to be determined by the broadest permissible interpretation of the following claims and their equivalents, and shall not be restricted or limited by the foregoing detailed description.
- Although several embodiments of the present invention have been illustrated and described, it would be appreciated by those skilled in the art that changes may be made in these embodiments without departing from the principles and spirit of the general inventive concept, the scope of which is defined in the claims and their equivalents.
Claims (1)
1. An operating method of a memory system including a nonvolatile memory device, the operating method comprising:
reading a plurality of first bits from an observation memory cell through a plurality of read operations using different read voltages to configure a first read data symbol;
reading a plurality of second bits from a plurality of interference memory cells adjacent to the observation memory cell through a plurality of read operations using different read voltages to configure second read data symbols; and
determining a logical value of the observation memory cell, based on the first read data symbol and the second read data symbols,
wherein the determining of a logical value comprises:
changing the first read data symbol into a first bit symbol;
changing the second read data symbols into second bit symbols; and
comparing the first bit symbol and the second bit symbols to determine the logical value of the observation memory cell.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/068,143 US20140056064A1 (en) | 2010-03-02 | 2013-10-31 | Memory system and operating method thereof |
US14/196,366 US9595341B2 (en) | 2010-03-02 | 2014-03-04 | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020100018660A KR101710663B1 (en) | 2010-03-02 | 2010-03-02 | Memory system and operating method thereof |
KR10-2010-0018660 | 2010-03-02 | ||
US13/016,063 US8587997B2 (en) | 2010-03-02 | 2011-01-28 | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof |
US14/068,143 US20140056064A1 (en) | 2010-03-02 | 2013-10-31 | Memory system and operating method thereof |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/016,063 Continuation US8587997B2 (en) | 2010-03-02 | 2011-01-28 | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/196,366 Continuation-In-Part US9595341B2 (en) | 2010-03-02 | 2014-03-04 | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
US20140056064A1 true US20140056064A1 (en) | 2014-02-27 |
Family
ID=44531234
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/016,063 Active 2031-04-25 US8587997B2 (en) | 2010-03-02 | 2011-01-28 | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof |
US14/068,143 Abandoned US20140056064A1 (en) | 2010-03-02 | 2013-10-31 | Memory system and operating method thereof |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/016,063 Active 2031-04-25 US8587997B2 (en) | 2010-03-02 | 2011-01-28 | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof |
Country Status (2)
Country | Link |
---|---|
US (2) | US8587997B2 (en) |
KR (1) | KR101710663B1 (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140185375A1 (en) * | 2010-03-02 | 2014-07-03 | Samsung Electronics Co., Ltd. | Memory system to determine inference of a memory cell by adjacent memory cells, and operating method thereof |
US8924824B1 (en) * | 2013-03-12 | 2014-12-30 | Western Digital Technologies, Inc. | Soft-decision input generation for data storage systems |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8693257B2 (en) | 2011-10-18 | 2014-04-08 | Seagate Technology Llc | Determining optimal read reference and programming voltages for non-volatile memory using mutual information |
US8711619B2 (en) | 2011-10-18 | 2014-04-29 | Seagate Technology Llc | Categorizing bit errors of solid-state, non-volatile memory |
US8737133B2 (en) | 2011-10-18 | 2014-05-27 | Seagate Technology Llc | Shifting cell voltage based on grouping of solid-state, non-volatile memory cells |
US8760932B2 (en) | 2011-10-18 | 2014-06-24 | Seagate Technology Llc | Determination of memory read reference and programming voltages |
CN103811077B (en) * | 2012-11-12 | 2017-03-29 | 光宝电子(广州)有限公司 | Data compensation method in flash memory |
CN103811074B (en) * | 2012-11-15 | 2017-05-03 | 光宝电子(广州)有限公司 | Storage state decision method of flash memory and related system |
US9171620B2 (en) * | 2012-11-29 | 2015-10-27 | Sandisk Technologies Inc. | Weighted read scrub for nonvolatile memory |
US9135109B2 (en) | 2013-03-11 | 2015-09-15 | Seagate Technology Llc | Determination of optimum threshold voltage to read data values in memory cells |
KR102081415B1 (en) | 2013-03-15 | 2020-02-25 | 삼성전자주식회사 | Method of optimizing llr used in nonvolatile memory device and method of correcting error in nonvolatile memory device |
CN104112477B (en) * | 2013-04-19 | 2017-07-07 | 光宝科技股份有限公司 | For group's differentiating method of crystal unit in solid state storage device |
KR102114230B1 (en) | 2013-10-07 | 2020-05-25 | 에스케이하이닉스 주식회사 | Memory system and operating method thereof |
US9690697B2 (en) * | 2014-07-10 | 2017-06-27 | Kabushiki Kaisha Toshiba | Memory controller, storage device and memory control method |
US10157093B2 (en) | 2015-05-27 | 2018-12-18 | Nxp Usa, Inc. | Data integrity check within a data processing system |
KR102369307B1 (en) * | 2015-12-02 | 2022-03-03 | 에스케이하이닉스 주식회사 | Data storage device and operating method thereof |
KR102617832B1 (en) * | 2016-08-12 | 2023-12-27 | 에스케이하이닉스 주식회사 | Memory controller, semiconductor memory system and operating method thereof |
US10468112B1 (en) * | 2018-08-10 | 2019-11-05 | Micron Technology, Inc. | Disturb-optimized codeword layout |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7975192B2 (en) * | 2006-10-30 | 2011-07-05 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US8060806B2 (en) * | 2006-08-27 | 2011-11-15 | Anobit Technologies Ltd. | Estimation of non-linear distortion in memory devices |
US8429498B1 (en) * | 2009-03-25 | 2013-04-23 | Apple Inc. | Dual ECC decoder |
US8526230B2 (en) * | 2008-07-01 | 2013-09-03 | Lsi Corporation | Methods and apparatus for write-side intercell interference mitigation in flash memories |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5657332A (en) * | 1992-05-20 | 1997-08-12 | Sandisk Corporation | Soft errors handling in EEPROM devices |
US5867429A (en) * | 1997-11-19 | 1999-02-02 | Sandisk Corporation | High density non-volatile flash memory without adverse effects of electric field coupling between adjacent floating gates |
JP3913704B2 (en) * | 2003-04-22 | 2007-05-09 | 株式会社東芝 | Nonvolatile semiconductor memory device and electronic device using the same |
US7196928B2 (en) | 2005-04-05 | 2007-03-27 | Sandisk Corporation | Compensating for coupling during read operations of non-volatile memory |
US7453723B2 (en) | 2006-03-01 | 2008-11-18 | Micron Technology, Inc. | Memory with weighted multi-page read |
JP5177991B2 (en) | 2006-10-25 | 2013-04-10 | 株式会社東芝 | Nonvolatile semiconductor memory device |
US7616505B2 (en) | 2006-12-28 | 2009-11-10 | Sandisk Corporation | Complete word line look ahead with efficient data latch assignment in non-volatile memory read operations |
US7898863B2 (en) * | 2007-08-01 | 2011-03-01 | Micron Technology, Inc. | Method, apparatus, and system for improved read operation in memory |
KR20080052288A (en) | 2007-08-09 | 2008-06-11 | 삼성전자주식회사 | Multi-level cell memory device using concatenated coding |
US8031526B1 (en) * | 2007-08-23 | 2011-10-04 | Marvell International Ltd. | Write pre-compensation for nonvolatile memory |
US7876638B2 (en) | 2007-09-11 | 2011-01-25 | Micron Technology, Inc. | Storing operational information in an array of memory cells |
KR101468149B1 (en) * | 2008-09-19 | 2014-12-03 | 삼성전자주식회사 | Flash memory device and systems and reading methods thereof |
US7990767B2 (en) * | 2009-12-30 | 2011-08-02 | Sandisk Il Ltd. | Flash memory system having cross-coupling compensation during read operation |
-
2010
- 2010-03-02 KR KR1020100018660A patent/KR101710663B1/en active IP Right Grant
-
2011
- 2011-01-28 US US13/016,063 patent/US8587997B2/en active Active
-
2013
- 2013-10-31 US US14/068,143 patent/US20140056064A1/en not_active Abandoned
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8060806B2 (en) * | 2006-08-27 | 2011-11-15 | Anobit Technologies Ltd. | Estimation of non-linear distortion in memory devices |
US7975192B2 (en) * | 2006-10-30 | 2011-07-05 | Anobit Technologies Ltd. | Reading memory cells using multiple thresholds |
US8526230B2 (en) * | 2008-07-01 | 2013-09-03 | Lsi Corporation | Methods and apparatus for write-side intercell interference mitigation in flash memories |
US8429498B1 (en) * | 2009-03-25 | 2013-04-23 | Apple Inc. | Dual ECC decoder |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140185375A1 (en) * | 2010-03-02 | 2014-07-03 | Samsung Electronics Co., Ltd. | Memory system to determine inference of a memory cell by adjacent memory cells, and operating method thereof |
US9595341B2 (en) * | 2010-03-02 | 2017-03-14 | Samsung Electronics Co., Ltd. | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof |
US8924824B1 (en) * | 2013-03-12 | 2014-12-30 | Western Digital Technologies, Inc. | Soft-decision input generation for data storage systems |
US10545819B1 (en) | 2013-03-12 | 2020-01-28 | Western Digital Technologies, Inc. | Soft-decision input generation for data storage systems |
US11074125B2 (en) | 2013-03-12 | 2021-07-27 | Western Digital Technologies, Inc. | Data storage system and method for decoding data based on extrapolated flipped-bit data |
Also Published As
Publication number | Publication date |
---|---|
KR101710663B1 (en) | 2017-02-28 |
KR20110099566A (en) | 2011-09-08 |
US8587997B2 (en) | 2013-11-19 |
US20110216598A1 (en) | 2011-09-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20140056064A1 (en) | Memory system and operating method thereof | |
US10311920B2 (en) | Apparatus and method for controlling memory device | |
US8837215B2 (en) | Operating method and data read method in nonvolatile memory device | |
US9274886B2 (en) | Data storage device having a reduced error occurrence, operating method thereof, and data processing system including the same | |
US9190160B2 (en) | Memory device having variable read voltage and related methods of operation | |
US9734898B2 (en) | Memory controller having state shaping engine and method of operating same | |
US9177660B2 (en) | Method of operating memory device | |
US20140281770A1 (en) | Method of reading data from a nonvolatile memory device, nonvolatile memory device, and method of operating a memory system | |
US9147483B2 (en) | Apparatus and method of operating memory device | |
US8549328B2 (en) | Memory controller, memory system including the same, and method for operating the same | |
US9099193B2 (en) | Data storage device and operating method thereof | |
US10248501B2 (en) | Data storage apparatus and operation method thereof | |
US10902924B2 (en) | Memory system varying pass voltage based on erase count of target memory block and operating method thereof | |
US20190304557A1 (en) | Memory device, memory system including the memory device, and method of operating memory device | |
US9965005B2 (en) | Memory diagnosis system | |
US11422752B2 (en) | Controller, memory system, and operating methods thereof | |
US10403376B2 (en) | Data storage device and operating method thereof | |
US11907571B2 (en) | Read threshold optimization systems and methods using domain transformation | |
US20100246286A1 (en) | Nonvolatile memory device, method, system including the same, and operating method thereof | |
US9595341B2 (en) | Memory system to determine interference of a memory cell by adjacent memory cells, and operating method thereof | |
US8448048B2 (en) | Flash memory device and related programming method | |
KR20150109705A (en) | Method of programming memory device and method of reading data including the same | |
CN115527596A (en) | Apparatus and system for programming data in non-volatile memory devices | |
CN111223513B (en) | Memory system and operating method thereof | |
KR20220139081A (en) | Apparatus and method for programming and verifying data in a non-volatile memory device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |