Clock Synchronization Over Switched Fabric Using Counter Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Synchronizing device clocks across multiple clock domains over a switched fabric is challenging due to traffic congestion and buffering in switches, particularly in distributed computing systems like PCI-Express, where accurate time synchronization is essential for coherent communication and regulatory compliance.
Innovation Solution
A method involving a master device and a slave device, both coupled via a memory-mapped switched fabric, where the master device determines and sends a mapping between its global time and a switch counter, and the slave device synchronizes its local time based on this mapping, accounting for in-switch delays to ensure accurate time synchronization across different clock domains.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If devices are connected over a switched fabric with cabled interconnects, then device independence and flexibility are improved, but time synchronization accuracy deteriorates due to traffic congestion and buffering in switches
Solution Approach 1:
The patent applies preliminary action by having the master device send a mapping between global time and switch counter values before the slave device needs to synchronize. This pre-established mapping allows the slave device to calculate time offsets without experiencing delays from real-time switch processing, thereby maintaining synchronization accuracy while preserving the flexibility of switched fabric connections.
2Adaptability or versatility
If multiple devices operate in different clock domains over the fabric, then system versatility is improved, but time synchronization becomes more difficult
Solution Approach 1:
The patent uses the switch counter as an intermediary between devices in different clock domains. The master device creates a mapping between its global time and the switch counter, which then serves as a reference that slave devices can use to synchronize their local times. This intermediary approach simplifies multi-clock domain synchronization by providing a common reference point without requiring direct coordination between all devices.
Solution Approach 2:
The patent applies parameter changes by transforming time values from different clock domains into a common reference framework using the switch counter mapping. By changing the representation of time parameters and establishing relationships between global time, switch counter, and local device times, the system enables synchronization across different clock domains while managing the complexity through standardized parameter transformations.
3Ease of operation
If in-switch delays are not accounted for, then synchronization process is simpler, but time mapping accuracy deteriorates
Solution Approach 1:
The patent implements feedback by having switches report their in-switch delays back to the master device. The master device then uses this feedback information to compensate for delays when creating the time mapping. This feedback mechanism maintains time mapping accuracy by correcting for switch-induced delays while keeping the synchronization process relatively simple through automated delay measurement and compensation.
Data Source
AI summary
Devices and methods for synchronizing devices over a switched fabric. A master device maintains a global time, determines a mapping between the global time and a counter of a switch over a memory-mapped fabric, and sends the mapping to a slave device. A slave device maintains a local time, determines a first mapping between the local time and a counter of a switch, receives a second mapping between the counter and a global time of the master device, and synchronizes its local time to the global time based on the first and second mappings. The master and slave device may map their times to the counter by sending respective request packets to the switch and receiving respective completion packets including respective counter values from the switch. The master and slave device may determine respective time values corresponding to the respective counter values based on in-switch delays of the packets.


