Length-Compatible Polar Coding for Non-Power-of-Two Memory Blocks

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvecode length compatibilityVSAvoidencoding complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #5Merging (Combining)

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

Engineering Contradiction:
Improvecode length compatibilityVSAvoiderror correction performance
Core Design Contradiction:
Adaptability or versatilityVSReliability

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.

Inventive Principle:
Principle #1Segmentation

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.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11513897B2Error correction on length-compatible polar codes for memory systems
Publication Date: 2022.11.29 SAMSUNG ELECTRONICS CO LTD
  • US11513897B2 patent drawing
  • US11513897B2 patent drawing
  • US11513897B2 patent drawing

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).