Bus Bridge ECC Segmentation for Cross-Width Fault Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing semiconductor bus bridges face a decrease in fault detection rate due to the need to change Error Correction Code (ECC) bit width during data transportation between buses of different widths, which complicates error detection and leads to increased circuit size when using duplicated interface circuits.

Innovation Solution

A semiconductor device with an ECC decoder, encoder, and diagnosis circuit that divides data into parts, generates error detection codes for each part, and compares them only when no error is detected in the original data, allowing for improved fault detection without enlarging circuit size by eliminating the need for duplicated bus bridges.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If duplicated interface circuits are employed to improve fault detection rate, then fault detection rate is improved, but circuit size is enlarged

Engineering Contradiction:
Improvefault detection rateVSAvoidcircuit size
Core Design Contradiction:
ReliabilityVSArea of stationary object

Solution Approach 1:

The data is divided into multiple divided pieces, and error detection codes are generated for each divided piece separately. This segmentation allows error detection to be performed on individual data portions without requiring complete duplication of the interface circuit, thereby improving fault detection capability while controlling circuit size.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

An error detection code generation circuit is introduced as an intermediary component that generates error detection codes for divided data pieces. This intermediary enables error detection functionality without requiring duplicated interface circuits, resolving the contradiction between fault detection rate and circuit size.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If ECC replacement is performed during data transportation, then data compatibility between different bus widths is achieved, but error detection capability is decreased

Engineering Contradiction:
Improvedata compatibilityVSAvoiderror detection capability
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

Error detection codes are generated in advance for each divided piece of data before the ECC replacement occurs during data transportation. This preliminary action ensures that error detection capability is maintained even as ECC is replaced to achieve data compatibility between different bus widths.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Different error detection codes are generated for different divided pieces of data, allowing localized error detection for each data portion. This local quality approach maintains error detection capability while enabling ECC replacement for data compatibility across different bus interfaces.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3480958B1Bus bridge with improved fault detection
Publication Date: 2021.08.04 RENESAS ELECTRONICS CORP
  • EP3480958B1 patent drawingFigure 1
  • EP3480958B1 patent drawingFigure 2
  • EP3480958B1 patent drawingFigure 3

AI summary

According to one embodiment, a semiconductor device (1), e.g. a bus bridge, includes an ECC decoder (131) which performs diagnosis on data (D1) using an error detection code (C1) for the data, an ECC encoder (132) which generates an error detection code (C11) for a first data piece (D11) equivalent to a bit range accounting for a part of plural bits configuring the data and generates an error detection code (C12) for a second data piece (D12) equivalent to a bit range accounting for a remaining part of the bits, and a diagnosis circuit (14) which, when no error in the data has been detected by the ECC decoder, compares a part of the data corresponding to the first data piece with the first data piece used in generating the first error detection code and compares a part of the data corresponding to the second data piece with the second data piece used in generating the second error detection code.