H03M13/1111

Symbol-based variable node updates for binary LDPC codes
11663077 · 2023-05-30 · ·

Systems and methods for implementing data protection techniques with symbol-based variable node updates for binary low-density parity-check (LDPC) codes are described. A semiconductor memory (e.g., a NAND flash memory) may read a set of data from a set of memory cells, determine a set of data state probabilities for the set of data based on sensed threshold voltages for the set of memory cells, generate a valid codeword for the set of data using an iterative LDPC decoding with symbol-based variable node updates and the set of data state probabilities, and store the valid codeword within the semiconductor memory or transfer the valid codeword from the semiconductor memory. The iterative LDPC decoding may utilize a message passing algorithm in which outgoing messages from a plurality of multi-variable nodes are generated using incoming messages (e.g., log-likelihood ratios or L-values) from a plurality of check nodes.

Data recovery using a combination of error correction schemes

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.

Multidimensional encoding and decoding in memory system
11664822 · 2023-05-30 · ·

A memory system includes an encoder and a decoder. The encoder is configured to generate multi-dimensionally-coded data to be written into the non-volatile memory. Data bits of the multi-dimensionally-coded data are grouped into first and second dimensional codes with respect to first and second dimensions, respectively. The decoder is configured to, with respect to each of the first and second dimensional codes included in read multi-dimensionally-coded data, generate a syndrome value of the dimensional code, generate low-reliability location information, generate a soft-input value based on the syndrome value and the low-reliability location information, decode the dimensional code through correction of the dimensional code using the soft-input value, and store modification information indicating a bit of the dimensional code corrected through the correction and reliability information indicating reliability of the correction. The decoder generates the soft-input value also based on the modification information and the reliability information in the memory.

SOFT-DECISION DECODING
20220321149 · 2022-10-06 ·

A method of soft-decision decoding including training a machine learning agent with communication signal training data; providing to the trained machine learning agent a signal that has been received via a communications channel; operating the machine learning agent to determine respective probabilities that the received signal corresponds to each of a plurality of symbols; and, based on the determined probabilities, performing soft decision decoding on the received signal.

MEMORY CONTROLLER WITH READ ERROR HANDLING

In certain aspects, a controller for controlling a memory device includes a memory and a processor. The memory is configured to store instructions. The processor is coupled to the memory and configured to execute the instructions to perform a process including receiving data describing a read failure of a set of error handling mechanisms, where the read failure indicates that the set of error handling mechanisms handles a read error on a block of the memory device and fails to read data stored in the block; and responsive to the read failure of the set of error handling mechanisms, performing a memory test on the block to determine whether the block malfunctions.

NETWORK NODE AND METHOD PERFORMED THEREIN FOR HANDLING COMMUNICATION
20230155607 · 2023-05-18 ·

Embodiments herein relate to a method performed by a network node for handling a received signal in a communication network. The network node distributes a first number of inputs of a demodulated signal to a first processing core of at least two processing cores and a second number of inputs of the demodulated signal to a second processing core of the at least two processing cores. The network node further decodes the first number of inputs of the demodulated signal by a first message passing within the first processing core, and decodes the second number of inputs of the demodulated signal by a second message passing within the second processing core. The network node further decodes the demodulated signal by performing a third message passing between the different processing cores over a bus that is performed according to a set schedule.

LOW DENSITY PARITY CHECK DECODER, ELECTRONIC DEVICE, AND METHOD THEREFOR
20230208441 · 2023-06-29 ·

An electronic device, configured to perform a series of low-density parity check, LDPC, decoding operations for a parity check matrix, PCM, derived from at least one basegraph having a plurality of rows, includes: two or more check node, CN, sub-processors having input-output (I-O) port(s); and a controller configured to activate a subset of the I-O port(s) based on a current LDPC decoding sub-step of the LDPC decoding operations and the basegraph. The CN sub-processors support: a first single LDPC decoding operation to perform LDPC decoding computations for two or more rows of the PCM that are derived from different orthogonal rows of the plurality of rows in the basegraph; and a second mode whereby two or more of CN sub-processors co-operate to perform LDPC decoding computations for two or more rows of the PCM that are derived from a single row in the basegraph.

LOW DENSITY PARITY CHECK DECODER, ELECTRONIC DEVICE, AND METHOD THEREFOR
20230208440 · 2023-06-29 ·

An electronic device is configured to perform a series of low density parity check, LDPC, decoding operations that use at least one basegraph that comprises two or more columns, each column associated with a set of two or more soft bit values. The electronic device includes two or more rotators, each rotator-configured to rotate an order of a subset of two or more soft bit values of the set of two or more soft bit values of a column when activated in an LDPC decoding operation; wherein rotations associated with each column in each basegraph are performed by a particular one of the rotators-of the two or more rotators, wherein each rotator performs rotations for a set of one or more columns, with at least one of the rotators performing rotations for two or more columns in a same basegraph.

PERMUTATED EXTENSION AND SHORTENED LOW DENSITY PARITY CHECK CODES FOR HYBRID AUTOMATIC REPEAT REQUEST
20230208555 · 2023-06-29 ·

Method and system method performed at a wireless transmitting station, including generating a first low density parity check (LPDC) codeword for a first source word for a first transmission, and generating a second LDPC codeword for a retransmission for the first LDPC codeword, the second LDPC codeword including a permutated subset of information bits included in the first LDPC codeword and parity check bits corresponding to the permutated subset of information bits.

CONCATENATED ERROR CORRECTING CODES
20230208447 · 2023-06-29 ·

Systems and methods are provided for concatenated error-correcting coding. An apparatus may include a Low-Density Parity-Check (LDPC) decoder configured to perform an iterative LDPC decoding process on bits of an LDPC codeword, a Bose-Chaudhuri-Hocquenghem (BCH) decoder coupled to the LDPC decoder and a BCH scheduler coupled to the LDPC decoder and the BCH decoder. The LDPC codeword may be generated by LDPC encoding a Bose-Chaudhuri-Hocquenghem (BCH) codeword and the BCH codeword may be generated by BCH encoding a data unit. The BCH scheduler may be configured to determine whether a triggering condition for the BCH decoder is met after each iteration of the iterative LDPC decoding process and activate the BCH decoder to operate on an intermediate decoding result of the LDPC decoder if the triggering condition for the BCH decoder is met.