Data programming techniques to store multiple bits of data per memory cell with high reliability

    公开(公告)号:US11830545B2

    公开(公告)日:2023-11-28

    申请号:US17124380

    申请日:2020-12-16

    摘要: A memory system to generate data with a relation among data groups for reliably storing a predetermined number of bits per memory cell in memory cells. For example, from first groups of date bits, a second group of data bits is generated. Data groups of the predetermined number is formed to have the first groups and the second group and a predetermined relation (e.g., XOR or XNOR) among the data groups. Threshold levels of memory cells in a memory cell group are determined based on a predetermined mapping, where a threshold level of each memory cell is determined to represent one bit from each of the data groups. In the predetermined mapping, bit values represented by any two successive threshold levels differ by one bit. Threshold voltages in the memory cell group are programmed according to the threshold levels to store the data groups with improved reliability.

    Double interleaved programming of a memory device in a memory sub-system

    公开(公告)号:US11699491B2

    公开(公告)日:2023-07-11

    申请号:US17247643

    申请日:2020-12-18

    IPC分类号: G11C16/20 G11C16/30 G11C16/26

    摘要: Control logic in a memory device identifies a first plurality of groups of programming distributions, wherein each group comprises a subset of programming distributions associated with a portion of a memory array of the memory device configured as quad-level (QLC) memory. During a first pass of a multi-pass programming operation, the control logic coarsely programs memory cells in the portion configured as QLC memory to initial values representing a second plurality of pages of host data and stores, in a portion of the memory array of the memory device configured as single-level cell (SLC) memory, an indicator of the first plurality of groups of programming distributions with which each of the coarsely programmed memory cells is associated. During a second pass of the multi-pass programming operation, the control logic reads the coarsely programmed initial values from the first pass based on the indicator of the first plurality of groups of programming distributions and finely programs the memory cells in the portion configured as QLC memory to final values representing the second plurality of pages of host data.

    Data recovery using a combination of error correction schemes

    公开(公告)号:US11663079B2

    公开(公告)日:2023-05-30

    申请号:US17540059

    申请日:2021-12-01

    IPC分类号: G06F11/10 H03M13/15 G06F11/07

    摘要: Exemplary methods, apparatuses, and systems include receiving a request for a segment of data. The requested segment data is one of a plurality of segments of data in a stripe of data. A failure to decode the requested segment is detected. Each of the plurality of segments in the stripe other than the requested segment are read. Reading each segment includes reading raw encoded data and attempting to decode the raw encoded data, the result of reading each segment including decoded data when decoding is successful and the raw encoded data when decoding fails. A combined result of each read is generated. The combining includes combining decoded data for segments that were successfully decoded and the raw encoded data for segments for which decoding failed. A statistical model for the requested segment is updated using the combined result. The requested segment is decoded using the updated statistical model.

    One-Ladder Read of Memory Cells Coarsely Programmed via Interleaved Two-Pass Data Programming Techniques

    公开(公告)号:US20220246214A1

    公开(公告)日:2022-08-04

    申请号:US17724940

    申请日:2022-04-20

    摘要: A memory system to store multiple bits of data in a memory cell. A memory device coarsely programs a threshold voltage of the memory cell to a first level representative of a combination of bit values according to a mapping between bit value combinations and threshold levels. The threshold levels are partitioned into groups, each containing a subset of the threshold levels and having associated read voltages separating threshold levels in the subset. A group identification of a first group, among the groups, containing the first level is determined for the memory cell. The memory device applies read voltages of different groups, interleaved in an increasing order in a sequence, to read the memory cell when a read voltage applied is associated with the first group. The data bits read back from the memory cell are used to finely program the threshold voltage of the memory cell.

    Reading Memory Cells Coarsely Programmed via Interleaved Two-Pass Data Programming Techniques

    公开(公告)号:US20220199154A1

    公开(公告)日:2022-06-23

    申请号:US17127459

    申请日:2020-12-18

    IPC分类号: G11C11/56 G11C16/10 G11C16/26

    摘要: A memory system to store multiple bits of data in a memory cell. After receiving the data bits, a memory device coarsely programs a threshold voltage of the memory cell to a first level representative of a combination of values of the data bits according to a mapping between combinations of values of bits and threshold levels. The threshold levels are partitioned into a plurality of groups, each containing a subset of the threshold levels. XOR (or XNOR) is used to combine the data bits into bits of a group identification of a first group, among the plurality of groups, that contains the first level. The memory device reads, using the group identification, the data bits back from the first memory cell to finely program the threshold voltage of the memory cell to represent the data bits.

    DATA RECOVERY USING A COMBINATION OF ERROR CORRECTION SCHEMES

    公开(公告)号:US20220253354A1

    公开(公告)日:2022-08-11

    申请号:US17540059

    申请日:2021-12-01

    IPC分类号: G06F11/10 G06F11/07 H03M13/15

    摘要: Exemplary methods, apparatuses, and systems include receiving a request for a segment of data. The requested segment data is one of a plurality of segments of data in a stripe of data. A failure to decode the requested segment is detected. Each of the plurality of segments in the stripe other than the requested segment are read. Reading each segment includes reading raw encoded data and attempting to decode the raw encoded data, the result of reading each segment including decoded data when decoding is successful and the raw encoded data when decoding fails. A combined result of each read is generated. The combining includes combining decoded data for segments that were successfully decoded and the raw encoded data for segments for which decoding failed. A statistical model for the requested segment is updated using the combined result. The requested segment is decoded using the updated statistical model.