Flash Memory Encoder Architecture for Reduced Circulant Convolution Hardware

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing encoders in flash memory controllers face increased hardware complexity and cost due to the need for multiple matrix multiplication operations, especially circulant convolution calculations, when the parity-generation matrix is not readily available.

Innovation Solution

The encoder architecture includes a barrel shifter module, calculation circuits, and circulant convolution calculation circuits that process data blocks into partial parity blocks, dividing them into two parts for efficient circulant convolution operations, reducing hardware requirements and allowing for parity generation without the need for an inverse parity-generation matrix.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple matrix multiplication operations and circulant convolution calculations are performed to generate parity, then the encoder can operate without an inverse parity-generation matrix, but the hardware cost and device complexity increase greatly

Engineering Contradiction:
Improveencoder operation capabilityVSAvoidhardware cost
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The parity blocks are divided into two parts: first parity blocks generated by barrel shifter modules performing matrix multiplication, and second parity blocks generated by circulant convolution calculation circuits. This segmentation allows the system to operate without an inverse parity-generation matrix while reducing the computational burden on any single component, thereby managing hardware complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The barrel shifter modules perform matrix multiplication operations in advance to generate first parity blocks before the circulant convolution calculation circuits generate second parity blocks. This preliminary action reduces the complexity of subsequent operations and enables the encoder to function without requiring an inverse parity-generation matrix.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If multiple matrix multiplication operations are performed to generate parity, then the encoder can function without an inverse parity-generation matrix, but the operation time and productivity decrease

Engineering Contradiction:
Improveencoder operation capabilityVSAvoidencoding speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The encoding process is divided into parallel operations: barrel shifter modules generate first parity blocks through matrix multiplication while circulant convolution calculation circuits simultaneously generate second parity blocks. This segmentation into parallel streams maintains encoding capability without inverse matrix while improving throughput and productivity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The encoder merges two different computational approaches (matrix multiplication by barrel shifters and circulant convolution by dedicated circuits) to generate complete parity blocks. This combination maintains operational versatility while the parallel execution of both methods improves encoding speed and productivity.

Inventive Principle:
Principle #5Merging (Combining)

3Adaptability or versatility

If the parity-generation matrix is not available, then the encoder can still generate parity through multiple operations, but the device complexity and hardware requirements increase

Engineering Contradiction:
Improveencoder operation capabilityVSAvoidhardware cost
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The encoder architecture is segmented into specialized modules: barrel shifter modules for matrix multiplication operations and circulant convolution calculation circuits for convolution operations. This segmentation enables the system to generate parity without an inverse parity-generation matrix while distributing hardware complexity across dedicated functional units.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The first parity blocks generated by barrel shifter modules serve as intermediaries that are subsequently processed by circulant convolution calculation circuits to produce final parity blocks. This intermediary structure enables parity generation without direct use of an inverse parity-generation matrix while managing hardware complexity through staged computation.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS11929764B2Encoder and flash memory controller
Publication Date: 2024.03.12 SILICON MOTION INC
  • US11929764B2 patent drawing
  • US11929764B2 patent drawing
  • US11929764B2 patent drawing

AI summary

For an encoder for use in a flash memory controller, partial parity blocks generated in the encoder are divided into two parts for further operations, wherein a number of partial parity block(s) of the first part generated earlier is less than a number of partial parity block(s) of the second part. The encoder can reduce the hardware required for the circulant convolution calculation in the encoder, and has high efficiency. In addition, by converting a parity-check matrix to generate an isomorphic matrix, some components in the encoder and the decoder can be further omitted, so as to further reduce the manufacturing cost.