Serial Data Bus Error Detection and Recovery Circuit

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In serial communication protocols like I3C, error type TE6 occurs when a target device mistakenly responds to a read transaction as a write transaction, leading to data conflicts on the serial data bus, which can prolong the recovery time and increase power consumption.

Innovation Solution

A target device with processing circuitry that monitors and compares data on the SDA line with output data to detect errors, and performs operations such as disabling the output SDA pad buffer or asserting a stop condition to recover from the error, thereby reducing conflict duration and power consumption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the target waits for a stop or restart condition to appear on the data bus before recovering from TE6 error, then the recovery process follows the I3C specification, but the recovery time is prolonged and power consumption increases

Engineering Contradiction:
Improveerror recovery correctnessVSAvoidrecovery time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The target device performs preliminary actions by disabling the output SDA pad buffer or asserting a stop condition immediately upon detecting the TE6 error, rather than waiting for the controller to naturally generate a stop or restart condition. This preliminary intervention accelerates the recovery process while maintaining error handling correctness.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the target waits for a stop or restart condition to appear on the data bus before recovering from TE6 error, then the recovery process follows the I3C specification, but power consumption increases

Engineering Contradiction:
Improveerror recovery correctnessVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The target device performs preliminary actions by disabling the output SDA pad buffer or asserting a stop condition immediately upon detecting the TE6 error, rather than waiting for the controller to naturally generate a stop or restart condition. This preliminary intervention reduces the duration of the error state and consequently reduces power consumption during the error handling process.

Inventive Principle:
Principle #10Preliminary action

3Loss of time

If the target monitors and compares data on the SDA line with output data to detect errors early, then faster recovery is achieved, but the device complexity increases

Engineering Contradiction:
Improveerror detection timeVSAvoidprocessing circuitry complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The processing circuitry continuously monitors the SDA line and compares the monitored data with the output data that the target intends to transmit. This feedback mechanism enables real-time detection of TE6 errors by identifying mismatches between expected and actual bus data, allowing for immediate error recovery without requiring complex additional hardware.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS20240419524A1Detection and recovery from an error condition on a serial data bus
Publication Date: 2024.12.19 MICROCHIP TECHNOLOGY INC
  • US20240419524A1 patent drawing
  • US20240419524A1 patent drawing
  • US20240419524A1 patent drawing

AI summary

A target is provided that includes a serial data (SDA) line interface to connect the target to a SDA line of a two-wire, shared, serial data bus. The target includes processing circuitry to transfer output data on to the SDA line, and monitor data on the SDA line. The processing circuitry compares the data on the SDA line and the output data to detect an error condition when the data on the SDA line and the output data differ. And the processing circuitry performs at least one operation to recover from the detected error condition, including at least one of disabling an output SDA pad buffer of the target that transfers the output data on to the SDA line, or asserting a stop condition on the data bus.