Virtual Channels in Integrated Circuit Communication
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Integrated circuits face challenges in efficiently transferring data due to the need for a balance between rich communication fabrics that consume resources and lean fabrics that lead to data bottlenecks, with serial communication systems often operating at lower speeds than required, resulting in increased latency and resource inefficiency.
Innovation Solution
The implementation of virtual channels that allow multiple components to share physical communication lines, utilizing data and protocol storage elements to manage data transfer efficiently, and a virtual channel master that selects active channels based on protocol information to maximize resource use and prevent communication stalls.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If a rich communication fabric is implemented to enable efficient data transfer between components, then data throughput is improved, but area and power resources are consumed
Solution Approach 1:
The communication fabric is segmented into multiple virtual channels that share physical wires. Each virtual channel operates independently with its own protocol state machine, allowing parallel data transfers over the same physical infrastructure without interference, thus increasing throughput without proportional increase in physical resources
Solution Approach 2:
Physical communication wires are made multi-functional by allowing multiple virtual channels to share them simultaneously. The same physical wire can carry data for different virtual channels at different times, making the communication fabric more versatile and reducing the total number of wires needed
2Area of stationary object
If a lean communication fabric is used to save resources, then area and power consumption are reduced, but data bottlenecks occur leading to idle components
Solution Approach 1:
Multiple virtual channels operate continuously and independently, ensuring that if one channel is blocked or idle, others can continue transmitting data. This maintains continuous useful action across the communication fabric, preventing bottlenecks and keeping components productive without requiring excess physical resources
3Area of stationary object
If serial communication is used to reduce the number of transmission wires, then area resources are saved, but transmission latency increases
Solution Approach 1:
Virtual channels are scheduled in periodic time slots over shared physical wires. This periodic multiplexing allows parallel data transfers to occur sequentially without excessive waiting, reducing latency compared to pure serial communication while using fewer wires than full parallel communication
4Productivity
If serial communication operates at high frequency to avoid performance penalty, then data throughput is maintained, but the system becomes difficult to implement in modern integrated circuits
Solution Approach 1:
Instead of increasing clock frequency to maintain throughput in serial communication, the system changes parameters by implementing parallel virtual channels that operate at lower, more practical frequencies. The aggregate throughput is maintained through parallelism rather than frequency, making the system easier to implement in modern integrated circuits
Data Source
AI summary
This disclosure relates to a system of communicating, data within an integrated circuit. Multiple components, or channels, can share common physical communication lines between elements within the system. In some aspect, only one component can access the physical lines at a given time and a selection device chooses which component is active on the physical lines and makes the appropriate connection to the lines. The selection and connection can be completed without requiring or reporting information to the components, and is thus transparent.


