Parallel BCH Error Location for Faster Memory ECC Search

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional error location methods in non-volatile memory systems require an inordinate number of clock cycles to determine error locations, which can be time-consuming and inefficient, especially when dealing with large data sizes, and often necessitate high clock frequencies or increased logic complexity.

Innovation Solution

The implementation of parallel search operations to reduce the number of clock cycles required for determining the roots of the error locator polynomial of Bose-Chaudhuri-Hocquenghem (BCH) codes by partitioning field elements and utilizing multiple parallel search elements to compute sums based on error locator polynomial coefficients, allowing for simultaneous processing of multiple field elements and reducing the runtime.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If conventional sequential search methods are used to determine error locations, then the error location determination is performed using simple logic, but the number of clock cycles required becomes inordinate and time-consuming

Engineering Contradiction:
Improveclock cycles requiredVSAvoiderror location determination speed
Core Design Contradiction:
Loss of timeVSProductivity

Solution Approach 1:

The patent divides the field elements into multiple partitions and processes each partition in parallel. Specifically, the 8192 field elements are segmented into groups that can be processed simultaneously by multiple search elements, reducing the sequential processing time from 8192 clock cycles to a much smaller number of parallel clock cycles.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent transitions from a one-dimensional sequential search approach to a multi-dimensional parallel processing approach by introducing multiple search elements operating simultaneously on different partitions of field elements, effectively adding a parallelism dimension to the error location determination process.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Speed

If the clock frequency is increased to reduce error location determination time, then the processing speed increases, but the system requires very high clock frequencies that may not be easily available

Engineering Contradiction:
Improveerror location determination speedVSAvoidclock frequency availability
Core Design Contradiction:
SpeedVSAdaptability or versatility

Solution Approach 1:

By segmenting the search space into multiple partitions that can be processed in parallel, the patent achieves faster error location determination without requiring proportionally higher clock frequencies. The parallel structure allows the system to maintain standard clock frequencies while reducing overall processing time.

Inventive Principle:
Principle #1Segmentation

3Productivity

If parallel search operations are implemented to reduce clock cycles, then the processing speed increases, but the logic complexity and hardware requirements increase

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidlogic complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the search functionality into multiple independent search elements, each handling a specific partition of field elements. This segmentation allows for modular implementation where each search element is relatively simple, but their parallel combination achieves high overall efficiency without excessive complexity in any single component.

Inventive Principle:
Principle #1Segmentation

4Device complexity

If sequential search examines each bit location one at a time, then the logic requirements remain manageable, but the number of clock cycles required reaches 8192 for a 512 byte block

Engineering Contradiction:
Improvelogic requirementsVSAvoidclock cycles required
Core Design Contradiction:
Device complexityVSLoss of time

Solution Approach 1:

The patent segments the 8192 field elements into multiple partitions that can be processed simultaneously. Each partition is handled by dedicated search elements, allowing the system to examine multiple bit locations in parallel rather than sequentially, thereby reducing clock cycles from 8192 to a much smaller number while maintaining manageable logic requirements through modular design.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent adds a parallelism dimension to the search process by introducing multiple search elements operating concurrently on different partitions, transforming the single-threaded sequential examination into a multi-threaded parallel examination that achieves both speed and complexity management.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS8201058B2Method and apparatus for parallel ECC error location
Publication Date: 2012.06.12 CADENCE DESIGN SYST INC
  • US8201058B2 patent drawing
  • US8201058B2 patent drawing
  • US8201058B2 patent drawing

AI summary

An invention is provided for parallel ECC error location in a memory. The invention includes partitioning a set of field elements into w partitions. Then, for each of the w partitions of field elements, i) providing a set of r different field elements of the partition to r parallel search element. Next, in operation ii), each parallel search element computes a sum that is based on a set of coefficients of an error locator polynomial and the field element provided to the particular parallel search element. The set of field elements is advanced r field elements in GF(2m), and operations i) through iii) are repeated using the next r different field elements of the partition.