On the possibility and impossibility of achieving clock synchronization
Journal of Computer and System Sciences
Journal of the ACM (JACM)
Newtonian arbiters cannot be proven correct
Formal Methods in System Design - Special issue on designing correct circuits
Reaching Agreement in the Presence of Faults
Journal of the ACM (JACM)
Easy impossibility proofs for distributed consensus problems
Proceedings of the fourth annual ACM symposium on Principles of distributed computing
Self-stabilizing systems in spite of distributed control
Communications of the ACM
Interconnected rings and oscillators as gigahertz clock distribution nets
Proceedings of the 13th ACM Great Lakes symposium on VLSI
Timing Measurements of Synchronization Circuits
ASYNC '03 Proceedings of the 9th International Symposium on Asynchronous Circuits and Systems
STOC '83 Proceedings of the fifteenth annual ACM symposium on Theory of computing
Self-stabilizing clock synchronization in the presence of Byzantine faults
Journal of the ACM (JACM)
DFT '04 Proceedings of the Defect and Fault Tolerance in VLSI Systems, 19th IEEE International Symposium
Characterization of Soft Errors Caused by Single Event Upsets in CMOS Processes
IEEE Transactions on Dependable and Secure Computing
Self-Timed Circuitry for Global Clocking
ASYNC '05 Proceedings of the 11th IEEE International Symposium on Asynchronous Circuits and Systems
VLSI Implementation of a Fault-Tolerant Distributed Clock Generation
DFT '06 Proceedings of the 21st IEEE International Symposium on on Defect and Fault-Tolerance in VLSI Systems
A Survey and Taxonomy of GALS Design Styles
IEEE Design & Test
On the Threat of Metastability in an Asynchronous Fault-Tolerant Clock Generation Scheme
ASYNC '09 Proceedings of the 2009 15th IEEE Symposium on Asynchronous Circuits and Systems (async 2009)
A Metastability-Free Multi-synchronous Communication Scheme for SoCs
SSS '09 Proceedings of the 11th International Symposium on Stabilization, Safety, and Security of Distributed Systems
A Byzantine-fault tolerant self-stabilizing protocol for distributed clock synchronization systems
SSS'06 Proceedings of the 8th international conference on Stabilization, safety, and security of distributed systems
Self-stabilizing pulse synchronization inspired by biological pacemaker networks
SSS'03 Proceedings of the 6th international conference on Self-stabilizing systems
Byzantine self-stabilizing pulse in a bounded-delay model
SSS'07 Proceedings of the 9h international conference on Stabilization, safety, and security of distributed systems
General theory of metastable operation
IEEE Transactions on Computers
Fault-tolerant algorithms for tick-generation in asynchronous logic: robust pulse generation
SSS'11 Proceedings of the 13th international conference on Stabilization, safety, and security of distributed systems
Efficient Construction of Global Time in SoCs Despite Arbitrary Faults
DSD '13 Proceedings of the 2013 Euromicro Conference on Digital System Design
Logic Synthesis for Asynchronous Controllers and Interfaces
Logic Synthesis for Asynchronous Controllers and Interfaces
Hi-index | 0.00 |
We present the first implementation of a distributed clock generation scheme for Systems-on-Chip that recovers from an unbounded number of arbitrary transient faults despite a large number of arbitrary permanent faults. We devise self-stabilizing hardware building blocks and a hybrid synchronous/asynchronous state machine enabling metastability-free transitions of the algorithm's states. We provide a comprehensive modeling approach that permits to prove, given correctness of the constructed low-level building blocks, the high-level properties of the synchronization algorithm (which have been established in a more abstract model). We believe this approach to be of interest in its own right, since this is the first technique permitting to mathematically verify, at manageable complexity, high-level properties of a fault-prone system in terms of its very basic components. We evaluate a prototype implementation, which has been designed in VHDL, using the Petrify tool in conjunction with some extensions, and synthesized for an Altera Cyclone FPGA.