Tensor Product Coding for Flash With Low-Complexity LDPC Decoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
High-speed decoders for mobile devices using Low Density Parity Check (LDPC) error correction techniques face challenges due to high complexity and power consumption, and flash memory devices often employ 'hard decision' block codes that lack the necessary soft data for LDPC decoding.
Innovation Solution
A multi-stage encoding and decoding system that includes a first coder for Hamming codes and a second coder for LDPC codes, with a combiner producing encoded data for storage, and a multi-stage decoder that generates and recovers data using iterative decoding processes, enabling effective error correction in flash memory devices.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If LDPC error correction technique is used for high-speed decoding in mobile devices, then error correction performance is improved, but device complexity and power consumption increase
Solution Approach 1:
The patent divides the error correction process into two independent stages: a first decoder that processes only the code part to generate a recovered code, and a second decoder that processes the data part using the recovered code. This segmentation allows each decoder to be simpler and less power-consuming while maintaining overall LDPC error correction performance.
Solution Approach 2:
The patent introduces a recovered code as an intermediary element that bridges the two decoding stages. The first decoder generates this intermediate recovered code from the code part, which then serves as input for the second decoder to process the data part, enabling distributed error correction without requiring a single complex decoder.
2Reliability
If LDPC error correction technique is used for high-speed decoding in mobile devices, then error correction performance is improved, but power consumption increases
Solution Approach 1:
The patent segments the power-consuming decoding operation into two separate decoders that operate independently on different parts of the data. The first decoder processes only the code part while the second decoder processes the data part, distributing the power consumption across two simpler units rather than one complex unit, thereby reducing overall power consumption while maintaining LDPC performance.
3Device complexity
If hard decision block codes are used in flash memory devices, then implementation is simpler, but soft data required for LDPC decoding is not available
Solution Approach 1:
The patent performs preliminary decoding action in the first decoder to generate the recovered code before the second decoder needs it. This preliminary processing of the code part using hard decision block code principles enables the second decoder to receive the necessary recovered code without requiring soft data from the flash memory read operation, thus bridging the gap between hard decision simplicity and LDPC requirements.
Data Source
AI summary
In embodiments, data may be encoded based on a tensor product code by encoding incoming data to produce first codewords, and encoding the first codewords to produce second codewords. The incoming data may be combined with the second codewords to produce messages, which can then be transmitted and/or stored. Decoding a received message may include encoding a data portion to produce an intermediate code, and decoding the intermediate code using a codeword portion of the message to produce a corrected codeword. The data portion may then be decoded using the corrected codeword to recover data from the message.


