Hierarchical Clock Distribution via Switch Encoding
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In multi-cell computer systems, independent clocks from different sources can lead to clock drift, which is unacceptable in critical applications, and synchronizing these clocks requires complex mechanisms, while providing redundant clocks adds expense and pin counts.
Innovation Solution
Each cell in the system includes an agent and a switch that replicates and encodes a clock from a central source, ensuring all CPUs receive synchronized clocks, using encoding and decoding mechanisms to maintain clock synchrony across the system.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If a single clock source is used for all cells, then all cells share a common clock (avoiding drift), but the clock becomes a single point of failure and distribution adds expense and pin counts
Solution Approach 1:
The system divides the clock distribution into hierarchical segments: a central clock source feeds multiple switches, each switch serves multiple ports/cells. This segmentation allows the clock signal to be distributed systematically while maintaining synchronization across all cells without requiring a single complex distribution network.
Solution Approach 2:
Switches act as intermediary components between the central clock source and individual cells. Each switch receives the clock signal, replicates it, and distributes it to its connected ports. This intermediary approach enables reliable clock distribution while isolating the single point of failure to the central source rather than requiring redundant sources in each cell.
2Reliability
If redundant clocks are distributed from a clock source to various cells, then clock reliability improves, but expense and pin counts increase
Solution Approach 1:
The patent combines multiple functions into the switch component: clock signal reception, clock replication, and data transmission all occur through the same switch infrastructure. By merging clock distribution with existing data communication pathways, the system achieves redundancy without adding separate physical connections or increasing pin counts.
Solution Approach 2:
The switch component serves multiple functions: it acts as a data communication router and simultaneously as a clock distribution node. This multi-functionality allows the system to achieve clock redundancy through the existing universal infrastructure rather than requiring dedicated redundant clock pathways, thereby avoiding increased pin counts.
3Device complexity
If independent clocks from different sources are used in each cell, then clock distribution simplicity improves, but clock drift occurs between cells
Solution Approach 1:
The system performs preliminary clock signal replication at the switch level before distribution to individual cells. By pre-establishing the clock signal characteristics and synchronization parameters at the switch, all downstream cells receive pre-synchronized clocks, preventing drift before it can occur during cell-level operation.
Solution Approach 2:
Switches create accurate copies of the central clock signal and distribute these replicas to multiple ports. This copying mechanism ensures that each cell receives an identical clock signal from the central source, maintaining synchronization across all cells while allowing simple distribution architecture.
Data Source
AI summary
Embodiments of the invention relate to distribution of clocks to CPUs in processing cells of a multi-cell system. In an embodiment, each cell includes an interface, referred to as an agent. A plurality of interfaces, referred to as switches, together with the agents of the cells, connects the cells together. A clock source provides a clock to a switch, which replicates the clock and provides the replicated clocks to its ports. Each port of the switch, receiving a replicated clock, encodes this replicated clock and sends it over a link to each agent of a cell. Each agent of the cells, receiving an encoded clock, decodes this encoded clock, resulting in a decoded, or an extracted, clock. The agent then replicates the extracted clock and provides the replicates of the extracted clock to a plurality of CPUs of the cell. As a result, CPUs in all cells of the system receive clocks that all are synchronized to the clock provided by the clock source. Other embodiments are also disclosed including using the extracted clock as phase information, scaling, redundancy, etc.


