ECC Syndrome Subset Detection for Single-Bit Address Errors

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing error detection systems in integrated circuits require complex hardware and time-consuming processes to identify errors in data or memory addresses, as they typically use all syndrome bits to determine error positions, increasing resource usage and detection time.

Innovation Solution

A method and circuit that utilize a subset of syndrome bits to detect errors in data or address bits by padding unused positions with user-selected bits, reducing hardware complexity and speeding up the error detection process, while using a comparator to identify errors based on the maximum syndrome value.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all syndrome bits are used to detect errors in data or address bits, then error detection accuracy is improved, but hardware complexity and detection time increase

Engineering Contradiction:
Improveerror detection accuracyVSAvoidhardware complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The syndrome bits are segmented into two groups: a first group of syndrome bits used to detect errors in data bits, and a second group of syndrome bits used to detect errors in address bits. This segmentation allows the system to use only the necessary subset of syndrome bits for each detection task, reducing hardware complexity while maintaining error detection accuracy for the specific error type being detected.

Inventive Principle:
Principle #1Segmentation

2Reliability

If all syndrome bits are used to detect errors in data or address bits, then error detection accuracy is improved, but detection time increases

Engineering Contradiction:
Improveerror detection accuracyVSAvoiddetection time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The syndrome bits are segmented into two groups: a first group of syndrome bits used to detect errors in data bits, and a second group of syndrome bits used to detect errors in address bits. This segmentation allows the system to use only the necessary subset of syndrome bits for each detection task, reducing hardware complexity while maintaining error detection accuracy for the specific error type being detected.

Inventive Principle:
Principle #1Segmentation

3Device complexity

If unused syndrome bit positions are left blank, then hardware complexity is reduced, but error detection capability is compromised

Engineering Contradiction:
Improvehardware complexityVSAvoiderror detection capability
Core Design Contradiction:
Device complexityVSReliability

Solution Approach 1:

The patent extracts and removes the unused syndrome bit positions from the error detection system. By identifying that only a subset of syndrome bits is necessary for detecting errors in data or address bits, the system removes the unnecessary syndrome bit positions, thereby reducing hardware complexity without compromising the error detection capability for the intended application.

Inventive Principle:
Principle #2Taking out (Extraction)

Data Source

PatentUS12191885B1Early detection of single bit error on address and data
Publication Date: 2025.01.07 SYNOPSYS INC
  • US12191885B1 patent drawing
  • US12191885B1 patent drawing
  • US12191885B1 patent drawing

AI summary

A method of detecting an error includes, in part, defining a bit pattern using a first multitude of bits, a second multitude of bits, the bits of an error correction code (ECC), and at least one user selected bit. The method further includes, in part, receiving a first value represented by the first multitude of bits and the at least one user selected bit; receiving a second value represented by the second multitude of bits; receiving a third value represented by the ECC bits. The method further includes, in part, generating a syndrome value from the first, second and third values; and using a subset of the syndrome value bits to detect the error in the first, second or third values. The third value is determined in accordance with the first and second values.