Crossbar Multicast Routing via Port Vector Generation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In complex computing systems with multiple components, determining how to efficiently route various types of messages through the communication fabric is challenging due to the increasing complexity and power consumption, especially with a wide variety of messages to process and growing numbers of clients on modern system on chips (SoCs) and integrated circuits (ICs).
Innovation Solution
The implementation of a communication fabric that includes crossbars, arbitration points, and port vector generation circuitry, which extracts message type and recipient type indicators from messages to determine the appropriate masks and create a port vector for routing multi-cast messages effectively across multiple ports, facilitating efficient message forwarding.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If traditional routing methods are used to handle various messages through the fabric, then message routing is achieved, but device complexity and power consumption increase with the number of components and message types
Solution Approach 1:
The routing function is segmented into multiple specialized components: crossbars for spatial routing, arbitration points for traffic management, and port vector generation circuitry for intelligent port selection. Each component handles a specific aspect of message routing, dividing the complex routing task into manageable segments that reduce overall fabric complexity while maintaining versatile routing capability
Solution Approach 2:
Port vector generation circuitry acts as an intermediary between the message source and the communication fabric. It generates port vectors that specify the correct ports for message forwarding, serving as a mediator that translates high-level routing requirements into low-level port selection signals, thereby simplifying the routing process and reducing power consumption
2Adaptability or versatility
If more components and clients are added to the system, then system functionality increases, but power consumption and routing complexity increase
Solution Approach 1:
Port vectors are generated in advance and stored for different message types and recipient types. When a message needs to be routed, the pre-generated port vector is simply retrieved and applied, rather than performing complex routing calculations in real-time. This preliminary action significantly reduces the computational power required during actual message transmission, allowing the system to scale with more components without proportional increases in power consumption
Solution Approach 2:
The system changes parameters by using different message type indicators and recipient type indicators to select appropriate pre-generated port vectors. Instead of using a fixed routing method, the system dynamically selects routing parameters based on the specific message being transmitted, enabling efficient power usage across diverse message types and system configurations
Data Source
AI summary
Systems, apparatuses, and methods for processing multi-cast messages are disclosed. A system includes at least one or more processing units, one or more memory controllers, and a communication fabric coupled to the processing unit(s) and the memory controller(s). The communication fabric includes a plurality of crossbars which connect various agents within the system. When a multi-cast message is received by a crossbar, the crossbar extracts a message type indicator and a recipient type indicator from the message. The crossbar uses the message type indicator to determine which set of masks to lookup using the recipient type indicator. Then, the crossbar determines which one or more masks to extract from the selected set of masks based on values of the recipient type indicator. The crossbar combines the one or more masks with a multi-cast route to create a port vector for determining on which ports to forward the multi-cast message.


