Fault-tolerant algorithms for tick-generation in asynchronous logic: Robust pulse generation

Danny Dolev, Matthias Függer, Ulrich Schmid, Christoph Lenzen*

*Corresponding author for this work

Research output: Contribution to journalArticlepeer-review

13 Scopus citations

Abstract

Today's hardware technology presents a new challenge in designing robust systems. Deep submicron VLSI technology introduces transient and permanent faults that were never considered in low-level system designs in the past. Still, robustness of that part of the system is crucial and needs to be guaranteed for any successful product. Distributed systems, on the other hand, have been dealing with similar issues for decades. However, neither the basic abstractions nor the complexity of contemporary fault-tolerant distributed algorithms match the peculiarities of hardware implementations.

This article is intended to be part of an attempt striving to bridge over this gap between theory and practice for the clock synchronization problem. Solving this task sufficiently well will allow to build an ultrarobust high-precision clocking system for hardware designs like systems-on-chips in critical applications. As our first building block, we describe and prove correct a novel distributed, Byzantine fault-tolerant, probabilistically self-stabilizing pulse synchronization protocol, called FATAL, that can be implemented using standard asynchronous digital logic: Correct FATAL nodes are guaranteed to generate pulses (i.e., unnumbered clock ticks) in a synchronized way, despite a certain fraction of nodes being faulty. FATAL uses randomization only during stabilization and, despite the strict limitations introduced by hardware designs, offers optimal resilience and smaller complexity than all existing protocols. Finally, we show how to leverage FATAL to efficiently generate synchronized, self-stabilizing, high-frequency clocks. 2014 Copyright held by the Owner/Author.

Original languageEnglish
Article number30
JournalJournal of the ACM
Volume61
Issue number5
DOIs
StatePublished - 8 Sep 2014

Keywords

  • Byzantine faults
  • Clock synchronization
  • Linear convergence time
  • Metastability
  • Multi-synchronous GALS
  • Self-stabilization

Fingerprint

Dive into the research topics of 'Fault-tolerant algorithms for tick-generation in asynchronous logic: Robust pulse generation'. Together they form a unique fingerprint.

Cite this