Multiplexed Bus Controller Isolation via Dedicated Switch Segmentation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Multiplexed communication buses, such as I2C buses, face race conditions due to the lack of atomic operations, where multiple controller circuits can interfere with each other's transactions, leading to data being routed to the wrong target circuits, especially when devices have limited address capabilities and address conflicts arise.
Innovation Solution
Implementing a system with a one-to-one correspondence between controller circuits and switches, where each switch is connected to a dedicated controller circuit and includes programmable output ports to ensure that each controller circuit programs only its designated switch, preventing interference and ensuring atomic operations by eliminating the need for arbitration on the input port.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If a single I2C multiplexer is used to connect multiple controller circuits to target circuits, then the number of devices that can be placed on the bus is increased, but race conditions occur causing data to be routed to wrong target circuits
Solution Approach 1:
The single multiplexer is segmented into multiple dedicated switches, with each controller circuit having its own dedicated switch. This segmentation eliminates the race condition by ensuring that each controller's transactions are isolated and cannot be interfered with by other controllers, while still allowing multiple devices to be connected through the distributed switch network.
2Adaptability or versatility
If multiple controller circuits share a common multiplexer, then device connectivity is improved, but arbitration complexity increases due to need for mutex systems
Solution Approach 1:
The shared multiplexer is divided into multiple dedicated switches assigned to individual controller circuits. This eliminates the need for arbitration mechanisms like mutex systems, as each controller has direct access to its own switch without interfering with others. The complexity of arbitration is reduced to zero while maintaining full device connectivity.
3Reliability
If controller circuits must proxy through a selected controller to access the bus, then race conditions are avoided, but safety requirements relating to independence are defeated
Solution Approach 1:
Instead of having controllers proxy through a single selected controller, each controller is given its own dedicated switch. This provides both race condition prevention (through isolation) and maintains controller independence (through direct access), eliminating the need to compromise safety requirements.
4Reliability
If a mutex system is implemented to allow only one controller to access the bus at a time, then race conditions are prevented, but communication latency increases
Solution Approach 1:
The bus access is segmented into dedicated paths for each controller through individual switches. This eliminates the need for sequential mutex-based access, allowing each controller to communicate simultaneously through its own switch without waiting for other controllers. Race conditions are prevented through isolation while communication latency is minimized through parallel access.
5Device complexity
If devices have limited address pin sets, then device complexity is reduced, but the number of addressable devices is significantly limited
Solution Approach 1:
The address space is segmented across multiple dedicated switches, where each switch provides additional address bits through its selection lines. Devices with limited address pins can be uniquely identified by combining the address pins with the switch selection, effectively expanding the addressable device count without increasing device complexity.
Data Source
AI summary
A system includes a plurality of controller circuits. The system includes a plurality of target circuits. The system includes a communication bus communicatively linking the plurality of controller circuits with the plurality of target circuits. The communication bus includes a plurality of switches. Each switch of the plurality of switches is connected to a different one of the plurality of controller circuits.


