I2C Bus Multi-Protocol Communication via Differential Embedding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The I2C bus interface is limited by predefined device addresses, which restricts the number of devices that can be connected, and in complex systems like the IBM x3750, spare pins are often used for I2C communication, leading to underutilization due to interrupt-driven devices being idle for long periods.
Innovation Solution
A bus management device issues a start command on the I2C bus, sends an embedded differential protocol to non-I2C devices, and then releases the bus with a stop command, enabling multi-protocol communication by exploiting the I2C protocol's voltage range to communicate with devices using standard differential protocols like USB or PCIe.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If I2C bus is used for communication with devices, then device connectivity is enabled, but the number of connectable devices is limited by predefined addresses
Solution Approach 1:
The patent makes the I2C bus universal by enabling it to carry multiple protocols (I2C, USB, PCIe, etc.) on the same physical infrastructure. The bus management device detects protocol type and configures the bus accordingly, allowing a single bus to serve multiple device types without requiring separate dedicated buses for each protocol
Solution Approach 2:
The patent changes the operational parameters of the I2C bus dynamically. The bus management device monitors electrical characteristics (voltage levels, signal timing) to detect whether I2C or differential protocol devices are present, then adjusts the bus operating mode accordingly. This parameter-based detection and adaptation enables flexible device connectivity beyond fixed address limitations
2Productivity
If spare pins are used for I2C communication, then pin utilization is achieved, but device productivity is reduced due to long idle periods
Solution Approach 1:
The patent ensures continuous useful action on the I2C bus by implementing protocol detection and dynamic switching. When differential protocol devices (like USB or PCIe devices) need communication, the bus management device switches the I2C bus to differential mode, eliminating idle periods. This continuous utilization occurs because the bus adapts to actual communication needs rather than remaining idle waiting for I2C transactions
Solution Approach 2:
The patent introduces dynamics to the previously static I2C bus configuration. The bus management device continuously monitors the bus for activity patterns and protocol types, dynamically switching between I2C mode and differential protocol mode. This dynamic adaptation allows the same physical pins to serve multiple communication protocols based on real-time demands, maximizing productivity
3Speed
If I2C protocol is used for communication, then device connectivity is maintained, but communication speed is limited
Solution Approach 1:
The bus management device serves as an intermediary between the I2C bus and various devices. It sits between the I2C controller and potential differential protocol devices, detecting the presence of high-speed devices and translating/switching the communication mode accordingly. This intermediary enables high-speed differential communication while maintaining backward compatibility with traditional I2C devices
Solution Approach 2:
The patent creates a universal communication interface where the I2C bus can operate at I2C speeds for legacy devices or switch to high-speed differential modes for modern devices requiring faster communication. The same physical infrastructure adapts its speed and protocol characteristics based on device requirements, providing both speed and compatibility
Data Source
AI summary
A method, device and computer program product for providing multi-protocol communication on an inter-integrated circuit (I2C) bus. The method for providing multi-protocol communication on an inter-integrated circuit (I2C) bus can include issuing a start command by a bus management device onto the I2C bus. Thereafter, the bus management device can send an embedded differential protocol to a non-I2C device. Once communication with the non-I2C device is completed, the bus management device can issue a stop command to release the I2C bus. In one aspect of this embodiment, the method can include receiving a response from the non-I2C device.


