Length-Compatible Polar Coding for Non-Power-of-Two Memory Blocks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing error correction methods for computer memory systems using polar codes face challenges in constructing length-compatible codes, as standard polar codes restrict code length to powers of two, leading to higher complexity and poorer performance when dealing with non-power of two code lengths, such as in NAND flash devices.
Innovation Solution
The method involves constructing length-compatible polar codes by coupling two or more relatively shorter polar codes of power of two lengths, using a partitioning unit to divide input data, encoding each partition, performing matrix multiplication and addition, and combining outputs into a target code word of desired length, thereby reducing decoding complexity and improving reliability.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If puncturing and shortening approaches are used to construct length-compatible polar codes, then the code length can be adapted to non-power-of-two lengths, but the complexity increases and error correction performance deteriorates
Solution Approach 1:
The input data is divided into multiple partitions, each of which is encoded separately using standard polar codes. The encoded partitions are then combined through matrix operations to produce the final code word of the desired non-power-of-two length, avoiding the need for puncturing or shortening operations.
Solution Approach 2:
Multiple encoded data partitions are merged together using matrix multiplication and addition operations. The generator matrices of different partitions are combined to form a composite generator matrix that directly generates the target code word length without requiring post-encoding puncturing or shortening.
2Adaptability or versatility
If puncturing and shortening approaches are used to construct length-compatible polar codes, then the code length can be adapted to non-power-of-two lengths, but the error correction performance becomes poorer
Solution Approach 1:
The input data is divided into multiple partitions, each of which is encoded separately using standard polar codes. The encoded partitions are then combined through matrix operations to produce the final code word of the desired non-power-of-two length, avoiding the need for puncturing or shortening operations.
Solution Approach 2:
Multiple encoded data partitions are merged together using matrix multiplication and addition operations. The generator matrices of different partitions are combined to form a composite generator matrix that directly generates the target code word length without requiring post-encoding puncturing or shortening.
Data Source
AI summary
Inventive aspects include a polar code encoding system, which includes a partitioning unit to receive and partition input data into partitioned input data units. Encoders encode the partitioned input data units, and generate encoded partitioned input data units. Multiplier units perform matrix multiplication on the partitioned input data units and generator matrices, and generate matrix products. Adder units perform matrix addition on the encoded partitioned input data units and the matrix products. A combining unit combines outputs of the encoders into a target code word X. The target code word X may be a length-N code word X, where N=N1+N2+ . . . +Nm, where each of N1, N2, through Nm are a power of two (2).


