@article{Friedrichs_Fuegger_Lenzen2018,
TITLE = {Metastability-Containing Circuits},
AUTHOR = {Friedrichs, Stephan and F{\"u}gger, Matthias and Lenzen, Christoph},
LANGUAGE = {eng},
ISSN = {0018-9340},
DOI = {10.1109/TC.2018.2808185},
PUBLISHER = {IEEE},
ADDRESS = {Piscataway, NJ},
YEAR = {2018},
DATE = {2018},
ABSTRACT = {Communication across unsynchronized clock domains is inherently vulnerable to<br>metastable upsets; no digital circuit can deterministically avoid, resolve, or<br>detect metastability (Marino, 1981). Traditionally, a possibly metastable input<br>is stored in synchronizers, decreasing the odds of maintained metastability<br>over time. This approach costs time, and does not guarantee success.<br> We propose a fundamentally different approach: It is possible to<br>\emph{contain} metastability by logical masking, so that it cannot infect the<br>entire circuit. This technique guarantees a limited degree of metastability<br>in---and uncertainty about---the output. We present a synchronizer-free,<br>fault-tolerant clock synchronization algorithm as application, synchronizing<br>clock domains and thus enabling metastability-free communication.<br> At the heart of our approach lies a model for metastability in synchronous<br>clocked digital circuits. Metastability is propagated in a worst-case fashion,<br>allowing to derive deterministic guarantees, without and unlike synchronizers.<br>The proposed model permits positive results while at the same time reproducing<br>established impossibility results regarding avoidance, resolution, and<br>detection of metastability. Furthermore, we fully classify which functions can<br>be computed by synchronous circuits with standard registers, and show that<br>masking registers are computationally strictly more powerful.<br>},
JOURNAL = {IEEE Transactions on Computers},
VOLUME = {67},
NUMBER = {8},
PAGES = {1167--1183},
}
