I2C SDA Bus Stuck Recovery Using Internal Fault Detection
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing I2C bus communication systems face issues with internal SDA bus faults, where the SDA signal line becomes stuck at a logic low, preventing further communication between the main device and the sub-device, and existing recovery methods require power cycling the sub-device, which is inefficient.
Innovation Solution
The implementation of internal bus stuck recovery circuitry in the I2C sub-device that monitors the internal SDA signal for faults, automatically detecting and recovering from an internal SDA bus fault by releasing control of the SDA bus line when the fault is detected, without the need for power cycling.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If power cycling is used to recover from internal SDA bus fault, then communication can be restored, but system efficiency and reliability deteriorate due to unnecessary power cycles
Solution Approach 1:
The sub-device performs self-diagnosis by monitoring its own internal SDA signal state and automatically recovers from bus stuck conditions by releasing control of the SDA bus line, eliminating the need for external intervention or power cycling
Solution Approach 2:
The sub-device proactively monitors the internal SDA signal state before communication failures occur, and preemptively releases control when a stuck condition is detected, preventing complete communication breakdown
2Reliability
If the sub-device continuously monitors the internal SDA signal for fault detection, then recovery capability improves, but device complexity increases
Solution Approach 1:
The existing SDA signal line and control logic are made to serve dual purposes: normal data communication and self-diagnosis for bus stuck detection, eliminating the need for separate dedicated monitoring circuits
Solution Approach 2:
The sub-device creates a feedback loop by monitoring its own internal SDA signal state and using this information to automatically control the release of the SDA bus line, enabling autonomous fault recovery
Data Source
AI summary
Systems and methods related to serial communication devices are provided. An example integrated circuit (IC) device includes interface circuitry coupled to a two-wire serial communication bus having a serial clock (SCL) line and a serial data (SDA) bus line. The IC device further includes bus stuck recovery circuitry to monitor for a local SDA fault condition at the IC device based on a number of clock cycles during which an internal SDA signal (e.g., generated by the IC device) drives the SDA bus line to a first signal state, the clock cycles based on a clock signal received from the SCL line; and responsive to the local SDA fault condition, release the SDA bus line independent of the internal SDA signal, where the SDA bus line is in a second signal state different from the first signal state based on the release.


