Distributed Synchronous Clocking

It has historically been difficult to distribute a well-aligned hardware clock throughout the physical extent of a synchronous processor. Traditionally, this task has been accomplished by distributing the output of a central oscillator over a tree-like network, with repeaters at necessary intervals. While straightforward in concept, this method suffers from poor reliability, poor scalability and high skew. In this paper, we present an alternative approach-Distributed Synchronous Clocking-that maintains the simplicity of synchronous operation without suffering the drawbacks of centralized clocking. A network of independent oscillators takes the place of the centralized clock source, providing separate clock signals to the physically distant parts of a computing system. A distributed error correction algorithm effects global phase alignment by utilizing Local comparisons of neighboring oscillator phase. In contrast to centralized clock distribution, distributed clocking has the inherent potential for complete scalability and graceful degradation. However, because oscillator phase is a modular quantity, a naive implementation of distributed synchronous clocking can suffer from mode-lock-the trapping of local oscillator phase in undesirable stable equilibria where global phase is not aligned. We present a simple method for eliminating this problem in k-ary Cartesian meshes and give a proof of its correctness for two-dimensional networks. An electronic implementation is also presented and several engineering issues relating to error tolerance are discussed. >

[1]  Randy H. Katz,et al.  Design of PLL-based clock generation circuits , 1987 .

[2]  E. L. Hudson,et al.  A variable delay line PLL for CPU-coprocessor synchronization , 1988 .

[3]  M. R. Miller,et al.  Feasibility studies of synchronised-oscillator systems for p.c.m. telephone networks , 1969 .

[4]  Andreas Nowatzyk,et al.  A communication architecture for multiprocessor networks , 1989 .

[5]  Joep L. W. Kessels Two Designs of a Fault-Tolerant Clocking System , 1984, IEEE Transactions on Computers.

[6]  Tzu-I Jonathan Fan Fault tolerant clocking system , 1978 .

[7]  Ahmed El-Amawy Branch-and-Combine Clocking of Arbitrarily Large Computing Networks , 1991, ICPP.

[8]  Kang G. Shin,et al.  Ensuring Fault Tolerance of Phase-Locked Clocks , 1985, IEEE Transactions on Computers.

[9]  R. Woudsma,et al.  The Modular Design of Clock Generator Circuits in a CMOS building-block system , 1984, ESSCIRC '84: Tenth European Solid-State Circuits Conference.

[10]  Floyd M. Gardner,et al.  Phaselock techniques , 1984, IEEE Transactions on Systems, Man, and Cybernetics.

[11]  Tadao Saito Application of Phase-Locked Oscillator for PCM Network Synchronization , 1982, IEEE Trans. Commun..

[12]  Raymond K. Kostuk,et al.  Optical Clock Signal Distribution With Holographic Optical Elements , 1989, Optics & Photonics.

[13]  W.M. Daly,et al.  A FAULT-TOLERANT DIGITAL CLOCKING SYSTEM , 1995, Twenty-Fifth International Symposium on Fault-Tolerant Computing, 1995, ' Highlights from Twenty-Five Years'..

[14]  M. Williard,et al.  Analysis of a System of Mutually Synchronized Oscillators , 1970 .

[15]  F. Gardner,et al.  Charge-Pump Phase-Lock Loops , 1980, IEEE Trans. Commun..

[16]  William J. Dally,et al.  Deadlock-Free Message Routing in Multiprocessor Interconnection Networks , 1987, IEEE Transactions on Computers.

[17]  William C. Lindsey,et al.  Network Synchronization by Means of a Returnable Timing System , 1978, IEEE Trans. Commun..

[18]  Parameswaran Ramanathan,et al.  Transmission Delays in Hardware Clock Synchronization , 1988, IEEE Trans. Computers.