Event Message Broker for Cache Coherent Interconnects
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In cache coherent interconnects, especially with distributed implementations, the complexity of maintaining synchronization across asynchronous elements with different clock speeds and power domains leads to inefficiencies in network bandwidth usage and increased power consumption, particularly when the number of senders and receivers grows large.
Innovation Solution
Incorporating event-to-message and message-to-event converters as additional hardware IP blocks within Network Interface Units (NIUs), which function as state machines to efficiently convert and transmit event information, allowing for reduced constant status updates and enabling agents to operate in a lower power mode until triggered by specific events.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If individual wires connect every sender to every receiver in a point-to-point fashion, then events can be transmitted directly, but the system complexity and number of wires become unwieldy when the number of senders and receivers grows large
Solution Approach 1:
The patent introduces an event message broker as an intermediary component that receives event messages from senders and distributes them to receivers. Instead of direct point-to-point connections between every sender and receiver, the broker acts as a central hub that manages event distribution. This reduces the number of direct wire connections from O(n*m) to O(n+m), significantly reducing system complexity while maintaining reliable event transmission.
2Reliability
If constant status updates are transmitted to maintain synchronization across asynchronous elements, then synchronization is maintained, but network bandwidth is tied up and power consumption increases
Solution Approach 1:
The patent implements event-driven periodic action where status updates are transmitted only when events occur rather than continuously. The event message broker monitors asynchronous elements and sends updates only when state changes are detected, converting continuous periodic polling into event-triggered periodic transmission. This maintains synchronization accuracy while significantly reducing power consumption and network bandwidth usage.
3Reliability
If constant status updates are transmitted to maintain synchronization, then synchronization is maintained, but network bandwidth usage increases reducing efficiency
Solution Approach 1:
The system transitions from continuous periodic status updates to event-triggered periodic updates. The event message broker remains idle between events and only activates when an event occurs, sending updates only when necessary. This maintains synchronization accuracy while dramatically improving network bandwidth efficiency by eliminating redundant transmissions during stable states.
4Reliability
If conventional synchronization protocols are used across clock boundaries, then synchronization is maintained, but computing cycles are consumed to monitor and process
Solution Approach 1:
The event message broker implements self-service synchronization where asynchronous elements publish their events independently without requiring active monitoring or processing by other components. Each element serves itself by generating and publishing events when state changes occur, and the broker simply distributes these self-generated events. This eliminates the need for computing cycles to actively monitor and process synchronization, while maintaining reliable cross-clock synchronization.
Data Source
AI summary
A cache coherent interconnect connected to one or more agents, such as CPUs, GPUS, Peripherals, etc. using network interface units (NIUs), and having one or more internal modules, such as a directory, is provided with one or more event-to-message converters, and one or more message-to-event converters. When a particular event occurs within one of the agents or modules, a message is initiated and transmitted using the existing interconnect wiring to one or more agents or modules, which have associated NIUs, that need to be aware of the event. Response messages showing the status of the event-message may also be generated. Therefore, messages are sent when events occur, instead of constantly using bandwidth for status updates when no status is changing, making the interconnect more efficient and freeing up bandwidth. These converters are provided as additional hardware blocks incorporated into the various NIUs and modules.


