Abstract

We examine the fundamental problem of constructing depth-optimum circuits for binary addition. More precisely, as in literature, we consider the following problem: Given auxiliary inputs t0,…,tm−1, the so-called generate and propagate signals, construct a depth-optimum circuit over the basis {And2,Or2} computing all n carry bits of an n-bit adder, where m=2n−1. In fact, carry bits are And-Or paths, i.e., Boolean functions of the form t0∨(t1∧(t2∨(…tm−1)…)). Classical approaches construct so-called prefix circuits which do not achieve a competitive depth. For instance, the popular construction by Kogge and Stone (1973) is only a 2-approximation. A lower bound on the depth of any prefix circuit is 1.44log2m+const, while recent non-prefix circuits have a depth of log2m+log2log2m+const. However, it is unknown whether any of these polynomial-time approaches achieves the optimum depth for all m∈N.We present a new exponential-time algorithm solving the problem optimally. The previously best exact algorithm by Hegerfeld (2018) with a running time of O(2.45m) is viable only for m≤29. Our algorithm is significantly faster: We achieve a theoretical running time of O(2.02m) and apply sophisticated pruning strategies to improve practical running times dramatically. This allows us to compute optimum circuits for all m≤64. Combining these computational results with new theoretical insights, we derive the optimum depths for the computation of all carry bits of 2k-bit adder circuits for all k≤13, previously known only for k≤4.In fact, we solve a more general problem, namely delay optimization of generalized And-Or paths, which originates from late-stage logic optimization in VLSI design. Delay is a natural extension of circuit depth to prescribed input arrival times; and generalized And-Or paths are a generalization of And-Or paths where And and Or do not necessarily alternate. Our algorithm arises from our new structure theorem which characterizes delay-optimum generalized And-Or path circuits.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call